使用说明内容(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与计算