MCP GameBoy服务器
](https://smithery.ai/server/@mario-andreschak/mcp-gameboy)
概述
服务器男孩的模型上下文协议(MCP)服务器,允许LLM与GameBoy模拟器交互。 你的法学硕士可以。..
- 加载ROM
- 按键
- 看看Gameboy屏幕
- 跳过帧
你可以。..
- 使用@modelcontextprotocol/inspector控制gameboy模拟器
- 使用以下网址的web界面控制gameboy模拟器(并上传ROM)http://localhost:3001/emulator
- 在您最喜欢的MCP客户端中安装gameboy模拟器
特性
- 支持stdio和SSE传输
- 为GameBoy控件提供工具(上、下、左、右、A、B、开始、选择)
- 提供加载不同ROM的工具
- 提供获取当前屏幕的工具
- 所有工具都返回具有最新屏幕框架的ImageContent
安装
通过Smithery安装
通过以下方式自动安装克劳德桌面版GameBoy模拟器服务器 史密瑟里:
npx -y @smithery/cli install @mario-andreschak/mcp-gameboy --client claude安装在 流动
- 单击添加服务器
- 将GitHub URL复制并粘贴到流中
- 单击解析、克隆、安装、构建和保存。
手动安装
# Clone the repository
git clone https://github.com/yourusername/mcp-gameboy.git
cd mcp-gameboy
# Install dependencies
npm install
# Build the project
npm run build通过配置文件安装
!! 注意 :许多MCP客户端要求将.env变量中的ROM路径指定为 绝对路径
要通过配置文件将此MCP服务器与Cline或其他MCP客户端集成:
- 打开您的Cline设置:
- 在VS Code中,转到文件->首选项->设置 - 搜索“临床MCP设置” - 点击“在settings.json中编辑”
- 将服务器配置添加到
mcpServers对象:
{
"mcpServers": {
"mcp-gameboy": {
"command": "node",
"args": [
"/path/to/mcp-gameboy/dist/index.js"
],
"disabled": false,
"autoApprove": []
}
}
}- 替换
/path/to/mcp-gameboy/dist/index.js与实际路径index.js项目目录中的文件。在Windows上对路径使用正斜杠(/)或双反斜杠(\\\\)。
- 保存设置文件。Cline应自动连接到服务器。
用法
环境变量
!! 注意 :许多MCP客户端要求将.env变量中的ROM路径指定为 绝对路径
创建一个 .env 根目录中的文件,包含以下变量:
# Server configuration
PORT=3001
# ROM path for stdio mode
ROM_PATH=./roms/dangan.gb在stdio模式下运行
在stdio模式下,服务器使用在 ROM_PATH 环境变量。它将打开一个浏览器窗口来显示GameBoy屏幕。
npm run start在SSE模式下运行
在SSE模式下,服务器启动一个Express服务器,为ROM选择提供网页。
npm run start-sse然后打开浏览器 http://localhost:3001 选择ROM。
工具
服务器提供以下工具:
press_up:按下GameBoy上的UP按钮press_down:按下GameBoy上的向下按钮press_left:按下GameBoy上的左键press_right:按GameBoy上的右键press_a:按下GameBoy上的A按钮press_b:按下GameBoy上的B按钮press_start:按下GameBoy上的“开始”按钮press_select:按下GameBoy上的“选择”按钮load_rom:加载GameBoy ROM文件get_screen:获取当前GameBoy屏幕
所有工具都返回具有最新屏幕框架的ImageContent。
实现细节
此服务器是使用模型上下文协议(MCP)TypeScript SDK构建的。它使用:
McpServer从@modelcontextprotocol/sdk/server/mcp.js用于服务器实现StdioServerTransport从@modelcontextprotocol/sdk/server/stdio.js用于stdio传输SSEServerTransport从@modelcontextprotocol/sdk/server/sse.jsSSE 运输serverboy用于GameBoy模拟express对于处于SSE模式的web服务器canvas用于渲染GameBoy屏幕
许可证
麻省理工学院
