监视MCP服务器
用于与Screeps游戏API交互的模型上下文协议(MCP)服务器。
该项目提供了一个符合MCP的服务器,该服务器将Screeps游戏数据和操作作为MCP工具和资源公开。它使LLM或其他MCP客户端能够以结构化、协议驱动的方式访问、查询和操作Screeps游戏帐户和数据。
项目目的
- Bridge Screeps和AI/LLM工具: 允许大型语言模型和其他MCP客户端通过标准协议与Screeps游戏进行交互。
- 展示Screeps API作为MCP工具/资源: 通过MCP访问玩家信息、游戏数据和其他Screeps API功能。
- 支持多种Screeps服务器类型: 通过配置支持官方、私人和Steam服务器。
特性
- 符合MCP标准的服务器: 实现模型上下文协议,以便与LLM和其他客户端轻松集成。
- Screeps API集成: 使用令牌或用户名/密码安全连接到Screeps服务器。
- MCP工具: 例子:
getPlayerInfo检索经过身份验证的玩家信息(用户名、GCL)。 - 可扩展: 为更多Screeps API端点轻松添加新的MCP工具/资源。
- 可配置: 通过环境变量支持官方、私人和Steam Screeps服务器。
快速开始
1.安装依赖项
npm install2.构建服务器
npm run build3.配置环境变量
根据需要设置以下变量:
SCREEPS_API_TOKEN(推荐)或SCREEPS_USERNAME和SCREEPS_PASSWORDSCREEPS_SERVER_TYPE(official,private,或steam)SCREEPS_PRIVATE_HOST,SCREEPS_PRIVATE_PORT,SCREEPS_PRIVATE_SECURE(用于私人/蒸汽服务器)
例子:
export SCREEPS_API_TOKEN=your_token
export SCREEPS_SERVER_TYPE=official4.运行服务器
npm start服务器将启动并通过stdio监听MCP协议请求。
配置
所有配置都是通过环境变量进行的。看 src/config/index.ts 了解详情。
LOG_LEVEL(默认值:info)SCREEPS_API_TOKEN或SCREEPS_USERNAME/SCREEPS_PASSWORDSCREEPS_SERVER_TYPE:official,private,或steamSCREEPS_PRIVATE_HOST,SCREEPS_PRIVATE_PORT,SCREEPS_PRIVATE_SECURE:用于私有/蒸汽服务器
MCP工具和资源
示例工具: getPlayerInfo
检索经过身份验证的Screeps玩家的用户名和GCL(全局控制级别)。
请求:
- 工具名称:
getPlayerInfo - 无需参数
答复:
{
"username": "your_username",
"gcl": 123456
}通过扩展代码库可以添加更多的工具和资源(参见 src/tools/).
整合
克劳德桌面
要将此服务器与Claude Desktop一起使用,请将以下内容添加到您的Claude配置中:
在 macOS 上: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"screeps": {
"command": "/path/to/screeps-mcp-server/build/index.js"
}
}
}调试
要调试MCP协议流量,请使用 MCP检查员:
npm run inspector这将提供一个基于浏览器的UI,用于检查MCP请求和响应。
发展
- 使用
npm run watch用于开发过程中的自动重建。 - 代码的组织是为了清晰性和可维护性。看
src/主要逻辑。 - 欢迎投稿!
许可证
麻省理工学院
