使用说明
项目简介
'bun-mcp-sse-transport' 是一个专为 Bun 运行时环境设计的 Model Context Protocol (MCP) 服务器传输层实现。它利用 Server-Sent Events (SSE) 技术,为 MCP 服务器提供了一种高效、实时的单向(服务器到客户端)通信机制。客户端到服务器的通信则通过标准的 HTTP POST 请求处理。
主要功能点
- Bun 运行时优化: 专为 Bun 运行时环境构建,充分利用 Bun 的高性能和效率。
- MCP 传输接口实现: 实现了 MCP 协议定义的传输层接口,确保与 MCP 服务器的兼容性。
- SSE 连接管理: 负责管理 SSE 连接的建立、维护和关闭,并处理必要的 HTTP 头部设置。
- JSON-RPC 消息处理: 能够处理通过 HTTP POST 请求接收的 JSON-RPC 格式的消息,并将其传递给 MCP 服务器进行处理。
- 简易集成: 可以方便地与 Bun.serve 集成,快速搭建基于 SSE 传输的 MCP 服务器。
安装步骤
- 确保已安装 Bun.
- 在你的项目中,使用 bun 安装 'bun-mcp-sse-transport' 包:
bun install bun-mcp-sse-transport
服务器配置
MCP 客户端需要配置连接到 MCP 服务器的信息。对于使用 'bun-mcp-sse-transport' 的 MCP 服务器,典型的配置信息如下 (JSON 格式):
{ "serverName": "MyBunMCPServer", "command": "bun", "args": [ "run", "example/echo-server.ts" ], "transport": { "type": "sse", "endpointUrl": "http://localhost:3000/sse", "messagePostUrl": "http://localhost:3000/messages" } }
配置参数说明:
- 'serverName': MCP 服务器的名称,可以自定义。
- 'command': 启动 MCP 服务器的命令,这里使用 'bun' (假设 bun 命令在您的 PATH 环境变量中)。
- 'args': 传递给启动命令的参数列表。
- '"run"': Bun 的运行脚本命令。
- '"example/echo-server.ts"': 示例服务器脚本的路径。请根据实际情况修改为您的服务器入口文件路径。
- 'transport': 定义 MCP 客户端与服务器之间的传输协议。
- 'type': 传输类型,这里为 '"sse"',表示使用 Server-Sent Events。
- 'endpointUrl': SSE 连接的端点 URL,客户端通过 GET 请求连接到此 URL 以建立 SSE 连接。
- 'messagePostUrl': 接收客户端消息的 HTTP POST 端点 URL。客户端将 JSON-RPC 消息通过 POST 请求发送到此 URL。
注意: 上述配置中的端口号 (3000) 和端点路径 ('/sse', '/messages') 均可在 'example/echo-server.ts' 文件中配置。请确保 MCP 客户端配置与服务器端的实际配置一致。
基本使用方法
- 创建 Bun MCP 服务器: 参考 'example/echo-server.ts',使用 '@modelcontextprotocol/sdk/server/mcp.js' 创建 MCP 服务器实例,并使用 'BunSSEServerTransport' 作为传输层连接到服务器。
- 启动服务器: 使用 'bun run example/echo-server.ts' (或您自定义的服务器启动命令) 启动 MCP 服务器。
- 客户端连接: MCP 客户端根据上述服务器配置信息,连接到 'endpointUrl' 建立 SSE 连接,并向 'messagePostUrl' 发送 JSON-RPC 请求。
- 服务器与客户端通信: 服务器通过 SSE 连接向客户端推送消息 (如 JSON-RPC 响应、通知等),客户端通过 HTTP POST 请求向服务器发送消息 (如 JSON-RPC 请求)。
信息
分类
通信与社交