mcpField
M
MaskFlow PII proxy

MaskFlow PII proxy

本地服务
github.com/maskflow安全22 周前更新

关于 MaskFlow PII proxy

MaskFlow PII proxy 是包装其他 MCP 服务的代理,可在工具调用抵达后端前遮蔽参数中的个人信息,并在结果中还原对应占位符。它覆盖通用个人信息及 Aadhaar、PAN、GSTIN 等印度标识符。

主要功能

  1. 01遮蔽工具调用参数中的个人信息
  2. 02在工具结果中还原占位符
  3. 03支持印度标识符检测
  4. 04按连接维护占位符映射
  5. 05可选择遮蔽工具新增的个人信息
  6. 06支持 stdio 与 HTTP

适用场景

  1. 01向第三方 MCP 服务发送含个人信息的参数
  2. 02调用工具时处理 Aadhaar 或 PAN
  3. 03避免工具结果中的新增个人信息返回 Agent
  4. 04通过代理包装已有 MCP 服务

MCP 相关

该 MCP 代理包装 stdio 或 HTTP 后端,在 `tools/call` 参数到达后端前执行遮蔽,并在结果中还原占位符。`tools/list`、提示词和资源请求不作修改。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"maskflow": {
"command": "uvx",
"args": [
"maskflow-mcp"
]
}
}
}
启动命令uvx maskflow-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypimaskflow-mcp0.1.2

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

maskflow-mcp

一个 Model Context Protocol 代理,可包装任意 MCP 服务,并防止 PII 出现在 Agent 的工具流量中。它会在出站的 tools/call 参数到达后端工具之前屏蔽其中的 PII,并在结果中还原原始值;占位符在整个 Agent 运行期间保持一致。

Agent 经常会将用户的 PII(姓名、电子邮件、PAN、Aadhaar、电话号码)直接作为工具参数传入第三方 MCP 服务。这个代理是一个即插即用的垫片,可在边界处拦截真实值。它使用 MaskFlow 的检测引擎,因此除了通用 PII,还能检测印度身份标识符(Aadhaar、PAN、GSTIN、UPI、IFSC、ABHA、印度姓名/地址)。

MIT 许可,不设限制,无遥测。

安装

pip install maskflow-mcp
# or, no install:
uvx maskflow-mcp stdio --backend "npx -y @modelcontextprotocol/server-github"

会拉取 fastmcp(2.x 系列,不包含 LLM 供应商 SDK)。首次运行检测时会下载一个小型 spaCy 模型;传入 --patterns-only 可跳过。

使用方法

stdio(Claude Desktop、大多数 Agent)

将 Agent 指向 maskflow-mcp,并通过 --backend 指定真实服务:

// claude_desktop_config.json
{
  "mcpServers": {
    "github": {
      "command": "maskflow-mcp",
      "args": ["stdio", "--backend", "npx -y @modelcontextprotocol/server-github",
               "--pass-env", "GITHUB_TOKEN"]
    }
  }
}

也可以包装配置文件中已定义的服务:

maskflow-mcp stdio --config ./claude_desktop_config.json --backend-name github
HTTP
maskflow-mcp http --backend https://example.com/mcp --host 127.0.0.1 --port 9000

选项

标志默认值含义
--backend–后端命令行,或 URL
--config / --backend-name–从 Claude-Desktop 风格的 JSON 文件读取后端
--pass-env VAR–将环境变量转发给 stdio 后端(可重复指定)
--min-confidence0.5检测阈值
--patterns-onlyoff跳过 spaCy NER 阶段(速度更快;会降低对裸姓名/地址的检测能力)
--mask-tool-resultsoff也屏蔽工具在结果中新增的 PII,而不只是还原工具回传的占位符
--session-ttl3600每个连接的会话有效期

屏蔽内容

tools/call 参数会经过遍历(仅处理字符串和数字值,绝不处理键),并通过连接的会话进行屏蔽。结果中的文本和结构化内容会取消屏蔽,还原工具回传的占位符。默认情况下,工具在结果中添加的原始 PII 会原样传递;启用 --mask-tool-results 后也会屏蔽这些内容,从而确保 Agent 无法看到它们。

tools/list、prompts/* 和 resources/* 会原样传递(默认不屏蔽资源内容)。

PII 安全

令牌到值的映射按连接保存在内存中,绝不会写入日志。只有经过屏蔽的值会通过网络发送到后端。设计说明请参阅 MaskFlow 仓库中的 docs/mcp.md。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。