Elysia-mcp:Bun 和 Elysia 的 MCP 服务器实现
项目简介
Elysia-mcp 是一个使用 Bun 运行时和 Elysia Web 框架构建的 Model Context Protocol (MCP) 服务器。它旨在提供一个高性能、标准化的后端服务,使 LLM 客户端能够访问和利用上下文信息、外部工具以及可定制的 Prompt 模板。该服务器通过 Server-Sent Events (SSE) 协议与客户端通信,实现了完整的 MCP 协议,包括资源管理、工具注册和 Prompt 模板定义等核心功能。
主要功能点
- 资源管理 (Resources):支持托管和管理各种类型的资源,例如配置文件、用户数据等,并允许 LLM 客户端通过 URI 访问这些资源。示例仓库中预置了静态资源(config)和动态资源(user-profile)。
- 工具注册与执行 (Tools):允许注册外部功能(Tools),例如计算器、天气查询等,使 LLM 客户端能够调用这些工具扩展自身的能力。示例仓库中包含了计算器 (calculate) 和天气查询 (get-weather) 工具。
- Prompt 模板 (Prompts):支持定义和渲染 Prompt 模板,以便根据不同的场景和需求,生成定制化的 LLM 交互 Prompt。示例仓库中提供了自我介绍 (introduce-yourself) 和数据分析 (analyze-data) Prompt 模板。
- 高性能: 基于 Bun 运行时和 Elysia 框架,提供出色的性能和效率。
- SSE 传输: 使用 Server-Sent Events (SSE) 作为主要的客户端通信协议。
- 易于使用: 提供了简洁的 API 和清晰的示例代码,方便开发者快速搭建 MCP 服务器。
- TypeScript 支持: 使用 TypeScript 开发,提供完善的类型定义和开发体验。
安装步骤
- 安装 Bun: 确保你的系统上已经安装了 Bun 运行时环境。
- 克隆仓库: 使用 Git 克隆 Elysia-mcp 仓库到本地:
git clone https://github.com/keithagroves/Elysia-mcp.git cd Elysia-mcp - 安装依赖: 在仓库目录下运行以下命令安装项目依赖:
bun install
服务器配置
MCP 客户端需要配置以下信息才能连接到 Elysia-mcp 服务器。以下是一个 JSON 格式的配置示例,你可以根据实际情况进行调整:
{ "serverName": "bun-elysia-mcp-server", // MCP 服务器名称,与代码中 McpServer 实例化的 name 属性一致 "command": "bun", // 启动服务器的命令,这里使用 bun 运行时 "args": ["start"], // 启动命令的参数,"start" 脚本在 package.json 中定义,用于启动服务器 "transport": "sse", // 使用 SSE 传输协议 "endpointUri": "http://localhost:3001/sse?sessionId={sessionId}", // SSE 连接端点,sessionId 会由客户端自动生成并替换 "messageUri": "http://localhost:3001/messages?sessionId={sessionId}" // 消息发送端点,sessionId 会由客户端自动生成并替换 }
基本使用方法
-
启动服务器: 在仓库目录下,使用以下命令启动 Elysia-mcp 服务器:
bun start或者使用以下命令启动开发模式,支持热重载:
bun dev服务器默认运行在 'http://localhost:3001'。你将在控制台看到 'MCP server running at http://localhost:3001' 的提示信息。
-
连接 MCP 客户端: 配置你的 MCP 客户端,使其连接到 Elysia-mcp 服务器的 '/sse' 端点 ('http://localhost:3001/sse')。客户端会通过 SSE 协议与服务器建立连接,并开始进行 MCP 协议通信。
-
使用 MCP Inspector (调试): 你可以使用 MCP 官方提供的 Inspector 工具来调试和测试你的 Elysia-mcp 服务器。运行以下命令启动 Inspector:
npx @modelcontextprotocol/inspector然后在 Inspector 中配置连接到 'http://localhost:3001/sse',即可查看服务器提供的资源、工具和 Prompt,并进行测试调用。
通过以上步骤,你就可以成功搭建并使用 Elysia-mcp 服务器,为你的 LLM 应用提供强大的上下文服务支持。
信息
分类
AI与计算