EGOS MCP Server
使用说明(Markdown 格式)
-
项目简介
- 这是一个以 MCP(Model Context Protocol)为核心的后端服务,负责向 LLM 客户端提供结构化的上下文信息与能力,核心能力包括:资源托管与数据访问、工具注册与执行、以及 Prompt 模板的定义与渲染。通过 JSON-RPC 与客户端通信,支持多传输协议如 Stdio、SSE、WebSocket 等,提供安全、扩展性强的上下文服务框架。
-
主要功能点
- 资源管理(Resources):以标准化方式托管并提供对数据的访问能力。
- 工具注册与执行(Tools):向 LLM 提供可调用的外部功能。
- Prompt 模板管理(Prompts):定义、渲染并输出可定制的 LLM 交互模板。
- JSON-RPC 通信:服务端接收客户端请求(读取资源、调用工具、获取 Prompt),返回标准 JSON-RPC 响应或发送通知。
- 会话与能力声明:支持会话管理、系统能力声明,以及多传输协议支持(如 Stdio、SSE、WebSocket)。
- 安全与扩展性:提供访问控制、审计日志、可扩展的工具与资源模型。
-
安装步骤
-
- 依赖安装:在仓库根目录执行 Bun 安装或等效的包管理器安装依赖(如 bun install / npm ci / yarn install)。
-
- 构建/准备:根据项目的运行方式,可能需要编译 TypeScript 代码或安装额外的本地依赖。
-
- 启动服务:使用包内提供的入口启动 MCP 服务器。示例(请结合实际 package.json 的脚本来执行):
- bun install
- bun run mcp-server
-
- 验证运行状态:确保服务器启动无错误,监听 MCP 客户端所用端口,查看启动日志。
-
-
服务器配置(MCP 客户端需要的连接信息,以下为示例配置,供 MCP 客户端在连接时参考) { "server_name": "EGOS MCP Server", "command": "bun", "args": [ "run", "packages/mcp/src/server.ts" ], "transport": "WebSocket|SSE|Stdio", "notes": "MCP 客户端通过 JSON-RPC 与该服务器通信,获取资源、执行工具、获取 Prompts;服务器实现了资源、工具、Prompts 的注册、管理及渲染能力。" }
-
基本使用方法
-
- 客户端注册能力:将可访问的 Resources、Tools、Prompts 注册到 MCP 服务器,确保 LLM 客户端可以通过 JSON-RPC 请求读取资源、执行工具以及获取 Prompt。
-
- 读取资源:LLM 客户端通过 MCP 的接口读取已注册的资源数据。
-
- 调用工具:LLM 客户端通过工具注册表调用外部功能,并获取返回结果。
-
- 渲染 Prompt:LLM 客户端请求某个 Prompt 模板,服务器渲染输出以供对话使用。
-
- 会话与安全:使用会话标识符维护对话上下文,结合多传输协议进行安全通信。
-
-
进一步信息
- MCP 服务器端应实现标准的 JSON-RPC 路由、方法分发、错误码、以及对 Resources、Tools、Prompts 的完整 CRUD 与查询能力。
- 如需客户端示例,请参照仓库中的 MCP 相关测试用例与契约检查,确保请求格式、返回结构与错错处理符合 MCP 规范。