README
🚀 MCP 游戏男孩服务器
MCP 游戏男孩服务器是一个基于 Model Context Protocol (MCP) 的服务器,专为 serverboy 设计。它能让大语言模型(LLMs)与 GameBoy 模拟器实现交互,为游戏模拟和 AI 应用带来新的可能。
🚀 快速开始
MCP 游戏男孩服务器允许 LLMs 与 GameBoy 模拟器交互,你的 LLM 可以加载 ROM 文件、按下按键、查看游戏男孩屏幕以及跳过帧。你还能使用 @modelcontextprotocol/inspector 或 web 界面(地址为 http://localhost:3001/emulator)控制游戏男孩模拟器并上传 ROM 文件,也可以在你最喜欢的 MCP 客户端中安装游戏男孩模拟器。
✨ 主要特性
- 支持 stdio 和 SSE 传输,确保数据传输的多样性和稳定性。
- 提供丰富的游戏男孩控制工具,包括上、下、左、右、A、B、开始、选择等按键控制。
- 具备加载不同 ROM 文件的工具,可让你体验多种游戏。
- 提供获取当前屏幕的工具,方便实时查看游戏画面。
- 所有工具均返回带有最新屏幕帧的 ImageContent,保证信息的及时性和准确性。
📦 安装指南
通过 Smithery 安装
要自动通过 Smithery 安装游戏男孩模拟器服务器以供 Claude Desktop 使用,可执行以下命令:
npx -y @smithery/cli install @mario-andreschak/mcp-gameboy --client claude
在 FLUJO 中安装
- 点击“添加服务器”。
- 复制并粘贴 GitHub 链接到 FLUJO。
- 点击解析、克隆、安装、构建和保存。
手动安装
npm install --save @modelcontextprotocol/sdk serverboy express canvas
💻 使用示例
基础用法
服务器提供了一系列实用工具,以下是部分工具的使用示例:
# 按下游戏男孩的 UP 按键
press_up
# 加载游戏男孩 ROM 文件
load_rom
高级用法
你可以根据具体需求组合使用这些工具,实现更复杂的操作。例如,先加载 ROM 文件,然后按下开始按键启动游戏:
load_rom
press_start
🔧 技术细节
此服务器使用 Model Context Protocol (MCP) TypeScript SDK 构建,具体使用了以下组件:
McpServer从@modelcontextprotocol/sdk/server/mcp.js进行服务器实现。StdioServerTransport从@modelcontextprotocol/sdk/server/stdio.js进行 stdio 传输。SSEServerTransport从@modelcontextprotocol/sdk/server/sse.js进行 SSE 传输。serverboy进行游戏男孩模拟。express在 SSE 模式下创建网络服务器。canvas渲染游戏男孩屏幕。
📄 许可证
本项目采用 MIT 许可证。
Scan to join WeChat group