Agent Smith MCP 服务器
使用说明(Markdown 格式)
-
项目简介
- Agent Smith 提供一个 MCP 服务器,用于向大语言模型客户端暴露资源、工具与 Prompt 模板等上下文信息,并通过 JSON-RPC 与客户端进行通信,支持 SSE/HTTP 等传输模式。
-
主要功能
- 资源管理:托管与访问资源、数据访问能力
- 工具注册与执行:向 LLM 客户端暴露外部功能入口
- Prompt 渲染:定义并渲染多种 Prompt 模板,支持自定义交互模式
- 会话与能力声明:会话管理、能力声明、以及多协议传输
- 安全性与鉴权:Bearer token 中间件等鉴权机制
- 客户端对接:通过 JSON-RPC 请求交互(读取资源、调用工具、获取 Prompt 等)
-
安装与运行
- 安装 MCP 依赖
- 进入 mcp_server 目录,安装依赖
- 启动服务器(开发模式)
- 设置无认证模式(开发调试用):在命令前导出环境变量不变,当环境需要鉴权时可添加
- 启动命令示例(开发/调试用): python3 -m mcp_server --port 2266 --no-auth
- 生产环境需配置 Bearer Token 认证,请设置环境变量 AGENTSMITH_MCP_TOKEN
- 设置无认证模式(开发调试用):在命令前导出环境变量不变,当环境需要鉴权时可添加
- 生产模式
- 启动端口可自定义。例如: python3 -m mcp_server --port 2266
- 配置 Bearer Token 认证:
- AGENTSMITH_MCP_TOKEN=your-secret-token
- 服务器将使用该 token 进行鉴权
- 安装 MCP 依赖
-
MCP 服务器配置(以 JSON 表示,以帮助 MCP 客户端理解如何连接,非代码形式,具体按客户端需要调整) { "server_name": "AgentSmith MCP Server", "command": "python3", "args": ["-m", "mcp_server", "--port", "2266"] } 说明:
- server_name:服务器对外名称,便于客户端识别
- command/args:启动服务器的命令与参数,客户端无需执行本配置,只需据此了解如何启动服务器
- 若要在无认证模式下启动,请在 args 里加入 "--no-auth";若启用认证,请确保环境变量 AGENTSMITH_MCP_TOKEN 已设置(服务器会校验 Bearer Token)
-
基本使用方法
- 启动服务器后,客户端通过端口(如 2266)连接,进行资源读取、工具调用和 Prompt 获取等操作
- 典型工作流包含:
- 读取资源
- 调用工具
- 获取并渲染 Prompt
- 服务器端负责维护会话、能力声明,支持多种传输协议(如 SSE、HTTP)
-
运行与测试
- 提供的脚本与测试用例(tests/test_mcp_tools.py)用于验证工具端点、输入校验、输出聚合等
- 生产环境请确保开启合适的鉴权、审计和访问控制
-
连接与集成提示
- MCP 客户端需要知道服务器启动命令及参数,以建立初始连接
- 客户端不需要包含 MCP 服务器实现,仅需要正确配置连接信息与鉴权信息
-
注意事项
- 请勿在公开环境暴露服务器鉴权密钥
- 部署前请阅读 README / docs/MCP_SCANNING.md 等文档,确保传输协议与安全策略匹配你的使用场景