mcpField
L
Llm Guard Privacy Gateway

Llm Guard Privacy Gateway

本地服务
github.com/AmywithAI 与智能体049 周前更新

关于 Llm Guard Privacy Gateway

Llm Guard Privacy Gateway 是基于 MCP 的提示文本隐私网关,面向需要在 LLM 应用中检查和过滤敏感信息的开发者。它可识别个人信息和密钥,并按黑名单规则拦截内容,处理过程在本地完成。

主要功能

  1. 01脱敏中文姓名、手机号和邮箱
  2. 02检测 API Key、阿里云密钥及 RSA 私钥
  3. 03按黑名单词汇阻断内容
  4. 04返回检测与处理结果 JSON
  5. 05依赖缺失时使用正则表达式检测

适用场景

  1. 01发送提示词前移除个人信息
  2. 02阻止提示文本中的密钥外泄
  3. 03按自定义黑名单拦截内容

MCP 相关

向 MCP 客户端提供 sanitize_prompt 工具,接收提示文本并返回包含检测与清洗结果的 JSON;数据处理在本地进行。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

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

详细介绍

来自项目 README

LLM-Guard 隐私网关

一个基于MCP协议的隐私保护网关,用于在LLM应用中检测和过滤敏感信息。

功能特性

  1. PII脱敏:自动识别文本中的中文人名、手机号、邮箱,并将其替换为占位符
  2. 密钥拦截:检测常见的API Key、阿里云AccessKey以及RSA私钥
  3. 商业阻断:定义黑名单列表,如果文本包含这些词,直接返回拦截状态
  4. MCP封装:将上述逻辑封装为MCP工具,返回JSON格式的处理结果

安装

pip install -r requirements.txt
关于spaCy模型下载问题

如果您在下载spaCy中文语言模型时遇到网络问题(如连接被远程主机关闭),可以尝试以下解决方案:

解决方案1:使用国内镜像源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple spacy
解决方案2:手动下载模型

访问 https://github.com/explosion/spacy-models/releases 下载对应的模型文件,然后本地安装:

pip install path/to/zh_core_web_sm-3.x.x.tar.gz
解决方案3:使用其他镜像站点
# 使用清华镜像
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ spacy
python -m spacy download zh_core_web_sm --index-url https://pypi.tuna.tsinghua.edu.cn/simple/

使用方法

基本用法
from llm_guard import sanitize_prompt_mcp

prompt = "你好,我是张三,我的电话是13812345678"
result = sanitize_prompt_mcp(prompt)
print(result)
在MCP服务中使用
from llm_guard import LLMSanitizer

sanitizer = LLMSanitizer()
result = sanitizer.sanitize_prompt("你的提示文本")

MCP服务部署

本项目支持MCP协议,可以作为MCP工具服务器运行。在这种架构下,工具注册在云端,但数据处理完全在本地进行,确保数据隐私。

运行MCP服务
python mcp_server.py
Docker部署

构建Docker镜像:

docker build -t llm-guard-mcp .

运行容器:

docker run -it --rm llm-guard-mcp
MCP工具说明

MCP服务提供以下工具:

sanitize_prompt

用于清洗提示文本,移除敏感信息。

参数:

  • prompt (string, required): 需要清洗的提示文本

返回值:

  • JSON格式的结果,包含原始文本、清洗后的文本、检测到的敏感信息等

插件市场上架

本项目支持发布到蚂蚁百宝箱插件市场,具体步骤如下:

1. 准备材料
2. 创建MCP插件

参考文档: https://alipaytbox.yuque.com/sxs0ba/huntb8/hwhtg4sp1mdppsib

3. 上架插件市场

参考文档: https://alipaytbox.yuque.com/sxs0ba/huntb8/ohqgnh2gt1qhymqb

返回格式

函数会返回一个JSON对象,包含以下字段:

  • original_prompt: 原始提示文本
  • sanitized_prompt: 处理后的提示文本
  • pii_detected: 检测到的PII信息列表
  • api_keys_detected: 检测到的API密钥列表
  • blacklist_words_found: 发现的黑名单词汇
  • status: 处理状态 ("allowed" 或 "blocked")
  • message: 处理消息

自定义配置

可以通过修改 llm_guard.py 中的 LLMSanitizer 类来自定义黑名单词汇或其他规则。

错误处理与降级机制

本实现具备完善的错误处理和降级机制:

  1. 即使presidio库未安装或无法初始化,系统也会使用内置的正则表达式进行检测
  2. 当网络问题导致spaCy模型无法下载时,系统仍然能够运行(虽然精度可能略有下降)
  3. 所有异常都被适当捕获,不会导致整个应用程序崩溃

这种设计确保了系统在网络受限或依赖库缺失的环境中仍能正常工作。

评论

支持 Markdown

第一次接触 MCP?

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

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