Hebo MCP 服务端实现
使用说明(Markdown格式)
-
项目简介 Hebo MCP 服务端是一个基于 MCP 协议的后端实现,核心职责是向客户端提供可用的工具、上下文信息与数据访问能力,并通过标准化的 JSON-RPC 形式进行请求/响应交互。该实现包含一个示例工具 count_letters,并通过 MCP 传输通道进行对外暴露。
-
主要功能点
- MCP服务器核心:实现了 MCP 服务器端的工具注册、会话与传输整合,支持与客户端通过 JSON-RPC 的方式进行通信。
- 工具注册与执行:示例中注册了一个 count_letters 工具,定义了名称、输入描述及处理逻辑,LLM 客户端可调用该工具来执行任务。
- 传输与流式处理:通过 WebStandardStreamableHTTPServerTransport 提供流式传输能力,支持逐步返回数据给客户端。
- 日志与观测:集成 OpenTelemetry 日志与追踪,便于对 MCP 服务的调用与性能进行监控。
- 本地及云端部署兼容性:代码结构与 SST 部署配置符合在本地开发和云端部署的使用场景。
-
安装步骤
- 进入项目根目录,安装依赖(使用 Bun 运行时的常用做法):
- bun install
- 本地开发/运行(常规开发模式,MCP 与其它服务同样通过本仓库的开发脚本运行):
- bun run dev
- 也可以通过 SST/云端部署方案进行部署,详见 infra 相关配置。
- 进入项目根目录,安装依赖(使用 Bun 运行时的常用做法):
-
服务器配置(MCP客户端需的最低信息) 说明:MCP 客户端在连接时需要知道服务器的启动信息以建立连接。以下 JSON 为示例配置,描述服务器名称、启动命令及参数。实际运行时请使用与部署环境对应的命令与端口。 { "server": "hebo-mcp", "command": "bun", "args": ["run", "dev"], "notes": "本示例在本地开发模式下通过 bun 运行,入口为 apps/mcp/src/index.ts。默认端口为 3003(可通过 PORT 环境变量覆盖)。在生产环境中通常通过 SST 部署并暴露相应的负载均衡域名。" }
-
基本使用方法
- 启动后,客户端通过配置的 MCP 服务器地址发起请求(JSON-RPC 格式)。
- 客户端可以调用已注册的工具,例如 count_letters,传入 word 和 letters 等参数,服务器返回处理结果。
- 服务器基于流式传输通道,能够逐步返回文本分块与处理状态,提升对话式互动体验。