使用说明

项目简介

本项目实现了一个基于 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'),方便用户快速测试和理解服务器功能。

安装步骤

  1. 环境准备: 确保已安装 Python 3.8 或更高版本。
  2. 安装依赖: 使用 pip 安装项目依赖库:
    pip install fastmcp pydantic requests termcolor
  3. 配置 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' 中的路径修改为脚本的实际路径。

基本使用方法

  1. 启动 MCP 服务器: 在终端中,导航到仓库根目录,并执行以下命令启动 MCP 服务器:

    python MCP/mcp_server_guardian.py

    服务器成功启动后,会输出 "Starting Guardrail MCP Server..." 信息。

  2. 运行 MCP 客户端测试: 打开另一个终端窗口,导航到仓库根目录,并执行以下命令运行客户端测试脚本:

    python MCP/mcp_client_test.py

    客户端测试脚本会提示您输入 Prompt,您可以输入文本进行输入/输出安全校验测试。客户端会向 MCP 服务器发送请求,并显示服务器返回的校验结果。

  3. 集成到 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与计算