cloakllm/cloakllm-mcp

GitHub: cloakllm/cloakllm-mcp

为Claude Desktop等MCP客户端提供PII检测与脱敏的工具集,支持可逆的敏感信息替换机制,让用户在享受AI辅助的同时保护隐私数据。

Stars: 0 | Forks: 0

# CloakLLM MCP 服务器 MCP server,将 CloakLLM 的 Python SDK 封装为 Claude Desktop 及其他兼容 MCP 客户端的工具。 ## 工具 | Tool | Description | |------|-------------| | `sanitize` | 检测并掩盖 PII,返回脱敏文本 + token map ID + entity_details。传递 `mode: "redact"` 可进行不可逆的 PII 移除(不返回 token_map_id)。 | | `desanitize` | 使用 token map ID 还原原始值 | | `analyze` | 检测 PII 但不进行掩盖(纯分析) | ## 安装 ``` cd cloakllm-mcp pip install -e . ``` ## Claude Desktop 配置 添加到您的 `claude_desktop_config.json`: ``` { "mcpServers": { "cloakllm": { "command": "python", "args": ["/path/to/cloakllm-mcp/server.py"], "env": { "CLOAKLLM_LOG_DIR": "./cloakllm_audit", "CLOAKLLM_LLM_DETECTION": "false" } } } } ``` 或使用 `uvx`: ``` { "mcpServers": { "cloakllm": { "command": "uvx", "args": ["mcp", "run", "/path/to/cloakllm-mcp/server.py"] } } } ``` ## 使用示例 ### 发送到 LLM 前对文本进行脱敏 **Tool 调用:** `sanitize` ``` { "text": "Email john@acme.com about the meeting with Sarah Johnson at 742 Evergreen Terrace", "model": "claude-sonnet-4-20250514", "token_map_id": "optional-id-for-multi-turn" } ``` **响应:** ``` { "sanitized": "Email [EMAIL_0] about the meeting with [PERSON_0] at 742 Evergreen Terrace", "token_map_id": "a1b2c3d4-...", "entity_count": 2, "categories": {"EMAIL": 1, "PERSON": 1}, "entity_details": [ {"category": "EMAIL", "start": 6, "end": 19, "length": 13, "confidence": 0.95, "source": "regex", "token": "[EMAIL_0]"}, {"category": "PERSON", "start": 42, "end": 56, "length": 14, "confidence": 0.85, "source": "spacy", "token": "[PERSON_0]"} ] } ``` ### 还原原始值 **Tool 调用:** `desanitize` ``` { "text": "I've drafted an email to [EMAIL_0] regarding [PERSON_0]'s request.", "token_map_id": "a1b2c3d4-..." } ``` **响应:** ``` { "restored": "I've drafted an email to john@acme.com regarding Sarah Johnson's request." } ``` ### 分析文本中的 PII(不掩盖) **Tool 调用:** `analyze` ``` { "text": "Contact john@acme.com, SSN 123-45-6789" } ``` **响应:** ``` { "entity_count": 2, "entities": [ {"text": "john@acme.com", "category": "EMAIL", "start": 8, "end": 21, "confidence": 0.95, "source": "regex"}, {"text": "123-45-6789", "category": "SSN", "start": 27, "end": 38, "confidence": 0.95, "source": "regex"} ] } ``` ## 环境变量 | Variable | Default | Description | |----------|---------|-------------| | `CLOAKLLM_LOG_DIR` | `./cloakllm_audit` | 审计日志目录 | | `CLOAKLLM_AUDIT_ENABLED` | `true` | 启用/禁用审计日志 | | `CLOAKLLM_SPACY_MODEL` | `en_core_web_sm` | 用于 NER 的 spaCy 模型 | | `CLOAKLLM_LLM_DETECTION` | `false` | 启用基于 LLM 的检测 | | `CLOAKLLM_LLM_MODEL` | `llama3.2` | 用于 LLM 检测的 Ollama 模型 | | `CLOAKLLM_OLLAMA_URL` | `http://localhost:11434` | Ollama 端点 | ## 测试 ``` # 使用 MCP inspector 测试 python -m mcp dev server.py # 或直接运行 python server.py ``` ## 另见 - [CloakLLM Hub](https://github.com/cloakllm/CloakLLM) — 项目概览、架构及链接 - [CloakLLM Python SDK](https://github.com/cloakllm/CloakLLM-PY) — 带有 spaCy NER + OpenAI / LiteLLM 中间件的 Python 库 - [CloakLLM JS SDK](https://github.com/cloakllm/CloakLLM-JS) — 带有 OpenAI + Vercel AI 中间件的 JavaScript 库 ## 许可证 MIT
标签:AI 工具, AI风险缓解, Claude Desktop, CloakLLM, LLM 安全, MCP Server, PII 检测, Python SDK, 信息屏蔽, 敏感信息过滤, 数据合规, 数据脱敏, 数据还原, 文本分析, 模型上下文协议, 瑞士军刀, 网络安全, 网络安全, 逆向工具, 隐私保护, 隐私保护