使用说明内容(Markdown格式)
-
项目简介
- 该仓库实现了基于 Model Context Protocol (MCP) 的后端服务器,用于向大型语言模型客户端提供可管理的资源、可注册并执行的工具、以及可渲染的提示模板,目标是为 LLM 应用提供安全、可扩展的上下文服务。
-
主要功能点
- 资源(Resources)托管与管理:支持对外部数据、知识片段、上下文信息的集中管理与访问。
- 工具(Tools)注册与执行:允许注册外部功能接口,LLM 可以通过 MCP 调用这些工具完成任务。
- 提示模板(Prompts)定义与渲染:提供可定制的提示模板,以统一和灵活地与 LLM 交互。
- 会话与能力管理:维护会话上下文、能力声明,以及对话上下文的安全、可扩展管理。
- JSON-RPC 通信:服务器通过 JSON-RPC 与 MCP 客户端进行请求/响应交互。
- 多传输协议支持:在实现中应支持 STDIO、Server-Sent Events (SSE)、WebSocket 等传输方式,确保不同场景的接入能力。
- 安全性与扩展性:提供会话认证、权限控制、可观测性入口,以及模块化扩展点。
-
安装步骤
- 通过安装 Hanzo 的 Python SDK 获取 MCP 组件与依赖(如 hanzo-mcp 模块及相关依赖)。
- 安装命令(简要说明,不提供代码块):
- 使用 pip 安装 Hanzo 的核心 SDK,以及 MCP 相关组件,确保依赖完整。
- 安装完成后即可使用仓库中提供的 MCP 服务启动逻辑。
-
服务器配置(MCP 客户端需要的配置) 配置信息以 JSON 格式给出,服务器配置包含 server_name、command、args 等字段,用于 MCP 客户端连接到 MCP 服务器: { "server_name": "hanzo-mcp-server-1", "command": "python", "args": [ "-m", "hanzo_mcp.server", "--host", "0.0.0.0", "--port", "8080", "--transport", "websocket" // 可选:stdio、sse、websocket ], "transports": ["stdio", "sse", "websocket"], "description": "MCP 服务器实例名称及启动参数,用于 MCP 客户端建立连接并进行资源/工具/提示信息的交互", "version": "1.0.0" }
注释要点
- server_name: MCP 服务器实例的名称,唯一性标识一个服务器实例。
- command/args: 启动 MCP 服务器的命令和参数,客户端将通过该信息连接并进行 JSON-RPC 调用。
- transports: 服务器支持的传输协议集合,MCP 客户端可根据需要选择合适的传输协议进行通信。
- description/version: 描述与版本信息,便于多实例管理与兼容性追踪。
-
基本使用方法
- 启动 MCP 服务器后,客户端通过 JSON-RPC 请求读取资源、执行工具、获取 Prompt 等能力。
- 服务器负责维护会话、能力声明,以及跨会话的资源/工具上下文一致性保障。
- 通过支持的传输通道(如 SSE、WebSocket、STDIO)建立长连接,提高交互的实时性与稳定性。
-
重要注意
- 该实现以 MCP 标准为目标,确保 JSON-RPC 请求/响应格式符合 MCP 约定,并提供会话管理和能力声明能力。
- 客户端配置无需包含 MCP 服务器的实现细节,但需了解如何通过 JSON-RPC 调用资源、工具、和 Prompt。
信息
分类
AI与计算