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 服务器核心能力:
- 安装与运行
- 该 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 服务器、策略、以及对接的工具集;
- 监控服务器健康状态与心跳信息,确保可用性。
- 部署阶段