Skip to main content
Glama
yannickgiguere-dfs

Doc Sanitizer MCP Server

Doc Sanitizer MCP Server

A local, containerized MCP (Model Context Protocol) server that uses a local LLM (via Ollama) to sanitize documents by removing or transforming PII before content is sent to public LLM services.

Features

  • Document Support: Word (.docx), PDF, Excel (.xlsx/.xls), CSV, Plain text, Email (.eml)

  • PII Detection: Names, emails, phone numbers, companies, addresses, financial data, IDs

  • Flexible Actions: Delete, invent synthetic data, or keep partial information

  • Profile Management: Create and manage multiple sanitization profiles via CLI

  • MCP Integration: Works with Claude Desktop, Claude.ai, and Claude Code

  • Privacy First: All processing happens locally - nothing sent to external services

Related MCP server: KnowledgeMCP

Quick Start

Prerequisites

  • Docker and Docker Compose

  • Ollama (installed automatically via Docker)

Installation

git clone https://github.com/yourusername/doc-sanitizer-mcp.git
cd doc-sanitizer-mcp
./setup.sh

Configuration

Edit .env to customize settings:

# Change LLM model (no rebuild required)
OLLAMA_MODEL=phi4:14b

# Alternative models:
# OLLAMA_MODEL=qwen2.5:7b    # Faster, less RAM
# OLLAMA_MODEL=llama3.2:3b   # Fastest, minimal RAM

To switch models:

# Pull new model
docker exec doc-sanitizer-ollama ollama pull qwen2.5:7b

# Update .env
sed -i '' 's/OLLAMA_MODEL=.*/OLLAMA_MODEL=qwen2.5:7b/' .env

# Restart
docker compose restart doc-sanitizer

Claude Desktop Integration

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "doc-sanitizer": {
      "url": "http://localhost:8000/sse"
    }
  }
}

Usage

Via Claude (MCP Tools)

Once configured, you can ask Claude:

  • "List available sanitization profiles"

  • "Show me the default profile settings"

  • "Sanitize this document using the high_privacy profile"

Via CLI

# List profiles
doc-sanitizer profiles list

# Create a new profile
doc-sanitizer profiles create high_privacy

# Edit profile settings
doc-sanitizer profiles edit high_privacy --set person_name=delete --set company=delete

# Sanitize a document
doc-sanitizer sanitize document.docx --profile high_privacy

Profile Management

Profiles define how each PII type is handled:

PII Type

Available Actions

person_name

delete, invent, keep_part

email

delete, keep_part

phone

delete, invent, keep_part

company

keep_part, invent

address

delete, invent

financial

delete, invent

id_numbers

delete, invent

date_of_birth

delete, invent

Profiles persist across container restarts (stored in ~/.doc-sanitizer/).

Documentation

License

MIT License - see LICENSE for details.

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yannickgiguere-dfs/doc-sanitizer-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server