Sherpa MCP 服务器集成实现
使用说明(Markdown 格式)
-
项目简介
- 本仓库包含多版本的 MCP 服务器实现,覆盖 Camp 1~Camp 4 的安全、认证、资源与工具管理等场景,旨在通过 MCP 架构为大语言模型客户端提供可扩展的上下文服务。
-
主要功能点
- 资源(Resources)托管与访问,提供数据与上下文资源的集中管理
- 工具(Tools)注册与执行,允许 LLM 调用外部功能
- 提示模板/对话模板的渲染与管理,支持灵活的交互模式
- JSON-RPC 通信,处理请求与响应,支持多种传输协议
- 会话管理、能力声明与权限控制(如 Bearer 认证、授权检查、PRM 等)
- 安全与观测:PII/redaction、内容安全检测、日志与遥测(如 Azure Monitor/OpenTelemetry)
- 输出清洗与审计:对 MCP 响应进行清洗,避免凭据泄露
-
安装步骤
- 克隆仓库并进入相应 Camp 的 MCP 服务器目录
- 按照该 Camp 的依赖要求安装环境(如 Python 包、AZ SDK、FastAPI、uvicorn、FastMCP 等)
- 启动服务器(见下方“服务器配置”示例,选定具体 Camp 的服务器实现启动命令)
- 可选:配置应用观测与安全组件(如 Azure Monitor、Content Safety 服务、Key Vault、OIDC/JWT 等)
-
服务器配置(MCP 客户端配置说明) 说明:MCP 客户端需要一个配置来了解要连接的 MCP 服务器的启动命令与参数。以下配置以 Sherpa Camp 4 的 MCP 服务器为示例:
{ "server_name": "Sherpa MCP Server - Camp 4 Monitoring", "command": "python", "args": [ "-m", "camps.camp4-monitoring.servers.sherpa-mcp-server.src.server" ], "notes": "运行该命令将启动基于 Streamable HTTP 的 MCP 服务,默认监听端口(如 8000/8001,具体以服务器实现为准),MCP 客户端应通过 /mcp 路径建立连接。请确保已安装所需依赖并设置可选的观测与安全环境变量(如 APPLICATIONINSIGHTS_CONNECTION_STRING、CONTENT_SAFETY_ENDPOINT 等)。" }
-
基本使用方法
- 运行指定 Camp 的 MCP 服务器后,使用 MCP 客户端连接到服务器的 /mcp 端点
- 使用客户端的工具调用(list_tools、call_tool、read_resource 等)与 RPC 交互,LLM 客户端即可通过该 MCP 服务获得上下文信息、执行外部工具、以及获取/渲染 Prompts
- 如需安全演练,可使用 CAMP 提供的安全功能(输入检查、输出清洗、PII redaction、内容安全等)进行对话的可控性测试