Kubani MCP 服务器端

使用说明

  • 项目简介
    • 该仓库中包含基于 Model Context Protocol(MCP)的服务器端实现,核心功能包括:暴露可用的资源与工具、实现工具调用接口、注册和管理 MCP 服务器及相关策略等。服务端以 MCP 的 JSON-RPC 形式对外提供接口,便于 LLM 客户端以标准方式获取资源、执行工具和读取提示模板等上下文信息。
  • 主要功能点
    • MCP 服务器核心能力:
      • 提供工具与资源的注册、查询与执行能力;
      • 支持工具调用(tools/call)与工具清单(tools/list);
      • 以 JSON-RPC 2.0 的格式接收请求并返回响应;
      • 支持多种传输方式在客户端侧使用(如 stdio、SSE 等)以便与 LLM 集成。
    • 与 Kubani 生态的集成能力:
      • 与 Kubani Registry 及相关组件整合,提供对 MCP 服务器的元数据与能力声明;
      • 与其他平台服务(如监控、模型、端点等)耦合,形成统一的上下文服务框架。
  • 安装与运行
    • 该 MCP 服务器实现包含一个示例服务器(Kubani Registry MCP Server),使用 Python 和 mcp-server 框架实现,支持通过命令行以 Stdio 方式启动(示例:uv run registry-mcp)。
    • 运行前请确保具备以下条件:
      • Python 环境与依赖已安装;
      • 能访问 Kubani Registry 服务以对接元数据;
      • MCP 客户端需要的启动命令(包括 server 名称、可执行命令及参数)已配置。
  • 服务器配置(MCP 客户端的启动信息,供参考) 客户端在连接该 MCP 服务器时,需要提供一个配置用于启动与连接。示例配置(JSON)如下,实际使用请按下方注释与你的环境变量进行调整: { "server_name": "kubani-registry", "command": "uv", "args": ["run", "registry-mcp"] } 注释:
    • server_name:MCP 服务器的名称,在本实现中对应 Kubani Registry 的 MCP 服务器实例名(例如 "kubani-registry")。
    • command、args:启动服务器所需的命令及参数;示例对应仓库中“Stdio transport (local development)”描述的用法,即通过 UV 工具启动一个 MCP 服务器进程。
  • 基本使用方法
    • 部署阶段
      • 启动 MCP 服务器:使用仓库中提供的启动方式(示例:uv run registry-mcp)以 Stdio 传输启动。
      • 客户端对接:将上述配置(server_name、command、args)提供给 MCP 客户端,以建立与服务器的连接。
    • 运行阶段
      • 客户端向 MCP 服务器发起工具列表、工具调用等请求,服务器返回 JSON-RPC 格式的响应。
      • 客户端可通过不同传输机制(如 STDIO、SSE)实现流式交互与实时数据传输。
    • 维护阶段
      • 通过注册端点管理 MCP 服务器、策略、以及对接的工具集;
      • 监控服务器健康状态与心跳信息,确保可用性。

服务器信息