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)。
    • 安全与扩展性:提供访问控制、审计日志、可扩展的工具与资源模型。
  • 安装步骤

      1. 依赖安装:在仓库根目录执行 Bun 安装或等效的包管理器安装依赖(如 bun install / npm ci / yarn install)。
      1. 构建/准备:根据项目的运行方式,可能需要编译 TypeScript 代码或安装额外的本地依赖。
      1. 启动服务:使用包内提供的入口启动 MCP 服务器。示例(请结合实际 package.json 的脚本来执行):
      • bun install
      • bun run mcp-server
      1. 验证运行状态:确保服务器启动无错误,监听 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 的注册、管理及渲染能力。" }

  • 基本使用方法

      1. 客户端注册能力:将可访问的 Resources、Tools、Prompts 注册到 MCP 服务器,确保 LLM 客户端可以通过 JSON-RPC 请求读取资源、执行工具以及获取 Prompt。
      1. 读取资源:LLM 客户端通过 MCP 的接口读取已注册的资源数据。
      1. 调用工具:LLM 客户端通过工具注册表调用外部功能,并获取返回结果。
      1. 渲染 Prompt:LLM 客户端请求某个 Prompt 模板,服务器渲染输出以供对话使用。
      1. 会话与安全:使用会话标识符维护对话上下文,结合多传输协议进行安全通信。
  • 进一步信息

    • MCP 服务器端应实现标准的 JSON-RPC 路由、方法分发、错误码、以及对 Resources、Tools、Prompts 的完整 CRUD 与查询能力。
    • 如需客户端示例,请参照仓库中的 MCP 相关测试用例与契约检查,确保请求格式、返回结构与错错处理符合 MCP 规范。

服务器信息