使用说明
项目简介
本项目实现了一个基于 Model Context Protocol (MCP) 的服务器,专注于为大型语言模型 (LLM) 应用提供安全防护能力。它集成了 Bosch AIShield Guardian API,通过 MCP 协议提供输入内容安全校验和输出内容安全校验工具,帮助开发者构建更安全、更合规的 LLM 应用。虽然该实现侧重于安全防护,但它展示了如何利用 MCP 框架构建和扩展 LLM 应用的后端服务。
主要功能点
- MCP 服务器实现: 基于 'fastmcp' 框架搭建 MCP 服务器,遵循 MCP 协议标准。
- 输入内容安全校验 (validate_input): 提供 'validate_input' 工具,接收文本输入,调用 AIShield Guardian API 校验输入内容是否符合安全策略,例如是否包含有害信息。
- 输出内容安全校验 (validate_output): 提供 'validate_output' 工具,接收文本输出,调用 AIShield Guardian API 校验模型输出内容是否安全合规。
- JSON-RPC 通信: 通过 JSON-RPC 协议与 MCP 客户端通信,接收客户端请求并返回 JSON-RPC 响应。
- 快速上手示例: 提供简单的客户端测试代码 ('mcp_client_test.py'),方便用户快速测试和理解服务器功能。
安装步骤
- 环境准备: 确保已安装 Python 3.8 或更高版本。
- 安装依赖: 使用 pip 安装项目依赖库:
pip install fastmcp pydantic requests termcolor - 配置 Guardian API:
- 打开 'MCP/mcp_server_guardian.py' 文件。
- 修改以下代码行,替换为您的 AIShield Guardian API Endpoint 和 API Key。请联系 Bosch AIShield 获取 API 密钥。
AISHIELD_API_URL = "your_guardian_api_endpoint_url" # Base API URL. AISHIELD_API_KEY = "your_api_key_here" # Replace with your actual API key.
服务器配置
MCP 客户端需要配置以下 JSON 格式信息才能连接到本 MCP 服务器:
{ "server name": "GuardrailServer", "command": "python", "args": [ "-u", "MCP/mcp_server_guardian.py" ], "description": "AIShield Guardian MCP Guardrail Server", "transport": "stdio", "version": "1.0.0" }
配置参数说明:
- 'server name': 服务器名称,默认为 "GuardrailServer"。
- 'command': 启动服务器的命令,这里使用 'python' 解释器。
- 'args': 启动命令的参数列表。
- '-u': Python 解释器参数,用于强制 stdout 和 stderr 流不缓冲。
- 'MCP/mcp_server_guardian.py': MCP 服务器脚本的路径。
- 'description': 服务器描述信息,可自定义。
- 'transport': 传输协议,这里使用 'stdio' (标准输入输出)。
- 'version': 服务器版本,默认为 "1.0.0"。
注意: 请确保 MCP 客户端能够找到 'MCP/mcp_server_guardian.py' 脚本,或者将 'args' 中的路径修改为脚本的实际路径。
基本使用方法
-
启动 MCP 服务器: 在终端中,导航到仓库根目录,并执行以下命令启动 MCP 服务器:
python MCP/mcp_server_guardian.py服务器成功启动后,会输出 "Starting Guardrail MCP Server..." 信息。
-
运行 MCP 客户端测试: 打开另一个终端窗口,导航到仓库根目录,并执行以下命令运行客户端测试脚本:
python MCP/mcp_client_test.py客户端测试脚本会提示您输入 Prompt,您可以输入文本进行输入/输出安全校验测试。客户端会向 MCP 服务器发送请求,并显示服务器返回的校验结果。
-
集成到 MCP 客户端: 将上述 “服务器配置” JSON 信息配置到您的 MCP 客户端应用中。MCP 客户端将通过标准输入输出与本 MCP 服务器建立连接,并可以调用 'validate_input' 和 'validate_output' 工具进行内容安全校验。
示例测试流程:
- 启动 'MCP/mcp_server_guardian.py' 服务器。
- 运行 'MCP/mcp_client_test.py' 客户端。
- 在客户端提示 "Enter your prompt: " 后,输入一段文本,例如 "Hello, how are you?" 或 "How to make a bomb?"。
- 客户端将显示输入验证和输出验证的结果,以及是否被安全策略拒绝。
通过以上步骤,您可以快速部署和测试该 MCP 安全防护服务器,并将其集成到您的 LLM 应用中,提升应用的安全性和合规性。
信息
分类
AI与计算