使用说明(Markdown 格式)
-
项目简介
- EllyMUD 是一个采用 Node.js 与 TypeScript 的现代化多用户文字冒险游戏服务器。该仓库实现了一个基于 Model Context Protocol (MCP) 的后端服务器,能够以标准化的 JSON-RPC 方式向 AI 客户端提供游戏上下文、资源数据、可调用工具以及 Prompt 模板,便于 LLM 与游戏系统进行协同。
-
主要功能点
- MCP 核心能力:实现 MCP 的请求/响应格式,处理 initialize、tools/list、tools/call、prompts/list、resources/list 等 JSON-RPC 请求并返回标准的 JSON-RPC 响应。
- 资源、工具与提示模板托管:后端托管游戏数据资源并暴露供 MCP 客户端查询或调用工具,以及提供可定制的 Prompt 模板渲染。
- 安全与鉴权:通过环境变量配置的 API Key 做 MCP 客户端鉴权(HTTP health/check 端点除外),确保 AI 客户端的调用安全性。
- 多传输协议支持:MCP 服务作为独立服务器存在,可与前端客户端、IB 魔方等通过不同传输通道交互(如标准 API、WebSocket、StdIO 等扩展接口)。
- 与游戏后端深度集成:MCP 服务器与 EllyMUD 的其他模块(用户、房间、NPC、专用工具、任务等)协同工作,提供对外部 AI 的上下文能力。
-
安装与运行步骤
- 克隆仓库并安装依赖
- 克隆仓库并进入项目目录
- 安装依赖:npm install
- 构建与启动
- 构建 TypeScript:npm run build
- 启动服务器:npm start
- MCP 安全与密钥
- 第一次运行时,若未设置 MCP API Key,系统会提示生成并写入 .env 文件中的 ELLYMUD_MCP_API_KEY 字段(生产环境应在部署时通过环境变量注入该密钥)。
- 启动后默认端口
- MCP 服务端口:3100(独立 MCP 服务器,用于接收和处理 MCP 客户端的 JSON-RPC 请求)
- EllyMUD 游戏公开端口,例如 Telnet 8023、WebSocket 8080 等用于玩家连接
- 客户端接入注意
- MCP 客户端需要通过 JSON-RPC 与端口 3100 进行通信,包含服务器名称、启动命令和参数的配置信息(下文有示例说明)。
- 克隆仓库并安装依赖
-
服务器配置(MCP 客户端需要的配置信息示例,JSON 格式,非代码片段) 请将以下信息用于 MCP 客户端的连接配置(用于描述要连接的 MCP 服务器及启动参数)。实际客户端实现不需要修改服务器端代码: { "serverName": "EllyMUD MCP Server", "command": "node", "args": ["dist/mcpServer.js"], "port": 3100, "healthEndpoint": "/health", "apiKeyEnvVar": "ELLYMUD_MCP_API_KEY", "notes": "MCP API key must be provided via environment variable or .env; health checks are allowed without API key; JSON-RPC 2.0 over POST" }
-
基本使用方法
- 连接与鉴权
- 启动后,MCP 客户端通过 POST 请求向 http://your-host:3100/ 发送 JSON-RPC 2.0 的请求,完成初始化并获取能力列表。
- 使用 X-API-Key 头部携带 API Key 进行鉴权(健康检查端点除外)。
- 调用工具与查询资源
- 通过 tools/list 获取可用工具清单。
- 通过 tools/call 调用具体工具,获取执行结果及相关上下文信息。
- 通过 resources/list 查询可用资源的访问数据。
- 请求与响应
- MCP 使用标准的 JSON-RPC 2.0 数据结构,服务端根据请求的方法名执行对应逻辑并返回包含 id 的结果对象。
- 安全与扩展
- 服务端提供健康检查、日志与审计,以及对多个传输通道的扩展能力,便于未来在不同环境中接入 MCP 客户端。
- 连接与鉴权
-
额外说明
- MCP 关键数据的鉴权使用方式会在 .env 或进程环境变量中配置 ELLYMUD_MCP_API_KEY,未授权请求将被拒绝。
- 若需扩展,请参考 MCPServer 的实现路径:src/mcp/mcpServer.ts,以及相关的工具、资源、提示模板管理逻辑。
-
关键词 EllyMUD, JSON-RPC, 模型上下文, 多协议后端, 安全鉴权
-
分类ID 6
信息
分类
AI与计算