MCP验证服务器
该项目提供了一个 MCP服务器,用于验证输入的查询,以防止敏感信息泄露。它会自动检测并屏蔽服务器处理的每个查询中的敏感数据(如电子邮件、电话号码、SSN、信用卡等)。所有活动都记录在案,以供审计和监控。
特性
- 敏感数据屏蔽:自动检测并屏蔽查询中的敏感信息,包括:
- 电子邮件 - 电话号码 - 社会安全号码(SSNs) - 信用卡号码 - 网际协议地址 - 出生日期 - 地址 - 邮政编码
- 综合录井:所有验证活动和系统事件都记录了时间戳。
- MCP服务器集成:作为MCP服务器运行,在进一步处理之前验证每个传入的查询。
运作原理
- 服务器使用一个自定义的FastMCP类,该类拦截每个查询,应用敏感数据掩码,然后处理(掩码)查询。
- 所有验证和屏蔽操作都记录在带时间戳的日志文件中
logs/目录。
设置和安装
- 克隆存储库
git clone
cd mcp-validation- 安装Python 3.11+
请确保您已安装Python 3.11或更高版本。
- 安装依赖项
pip install -r requirements.txt
# OR, if using PEP 621/pyproject.toml:
pip install .(依赖关系在 pyproject.toml.)
运行MCP验证服务器
使用以下命令启动服务器:
python main.py您应该看到指示MCP服务器正在运行以进行验证的输出。
用法示例
您可以使用首选的MCP客户端或将其集成到您的工作流中,与MCP服务器进行交互。发送到服务器的每个查询都将根据需要进行验证和屏蔽。
如果你想在Python中直接使用验证逻辑:
from validation_tools import validate_data
result = validate_data("My email is john@example.com and phone is 555-123-4567")
print(result)日志记录
- 日志存储在
logs/目录。 - 每个服务器会话都会创建一个名为的新日志文件
validation_tools_YYYYMMDD_HHMMSS.log. - 日志包括:
- 查询验证事件 - 隐藏敏感数据 - 系统事件(启动、关闭、错误)
日志条目示例
{
"timestamp": "2024-01-15T10:30:45.123456",
"event": "Validating data: My email is john@example.com and phone is 555-123-4567"
}文件结构
mcp-validation/
├── main.py # Main server entry point
├── validation_tools.py # Core validation and masking logic
├── logs/ # Log files directory
│ └── validation_tools_YYYYMMDD_HHMMSS.log
├── pyproject.toml # Project dependencies
├── uv.lock # Dependency lock file
└── README.md # This file安全与隐私
- 查询中的所有敏感信息在进一步处理之前都会被屏蔽。
- 所有操作都会被记录下来,以供审计和监控。
故障排除
- 未创建日志文件:确保
logs/目录存在并且具有写入权限。 - Python版本问题请确保您使用的是Python 3.11或更高版本。
许可证
MIT许可证(或在此处指定您的许可证)
