Integrations
Supports configuration through environment variables, particularly for specifying ROM paths and server settings like port number.
Provides a web server in SSE mode for ROM selection through a browser interface, allowing the GameBoy emulator to be accessed via HTTP.
Supports installation via Git clone, allowing users to download the MCP server from its repository.
MCP GameBoy 服务器
用于 GameBoy 模拟器的模型上下文协议 (MCP) 服务器,允许 LLM 与 GameBoy 模拟器进行交互。
特征
- 支持 stdio 和 SSE 传输
- 提供 GameBoy 控制工具(上、下、左、右、A、B、开始、选择)
- 提供加载不同 ROM 的工具
- 提供获取当前屏幕的工具
- 所有工具都返回带有最新屏幕帧的 ImageContent
安装
在FLUJO中安装
- 单击“添加服务器”
- 将 Github URL 复制并粘贴到 FLUJO 中
- 单击解析、克隆、安装、构建和保存。
手动安装
通过配置文件安装
!!注意:许多 MCP 客户端要求将 .env 变量中的 ROM 路径指定为绝对路径
要通过配置文件将此 MCP 服务器与 Cline 或其他 MCP 客户端集成:
- 打开您的 Cline 设置:
- 在 VS Code 中,转到“文件”->“首选项”->“设置”
- 搜索“Cline MCP 设置”
- 点击“在settings.json中编辑”
- 将服务器配置添加到
mcpServers
对象:Copy - 将
/path/to/mcp-gameboy/dist/index.js
替换为项目目录中index.js
文件的实际路径。在 Windows 系统中,请使用正斜杠 (/) 或双反斜杠 (\\)。 - 保存设置文件。Cline 应该会自动连接到服务器。
用法
环境变量
!!注意:许多 MCP 客户端要求将 .env 变量中的 ROM 路径指定为绝对路径
在根目录中创建一个.env
文件,其中包含以下变量:
在 stdio 模式下运行
在 stdio 模式下,服务器使用ROM_PATH
环境变量中指定的 ROM 路径。它将打开一个浏览器窗口来显示 GameBoy 屏幕。
在 SSE 模式下运行
在 SSE 模式下,服务器启动一个 Express 服务器,该服务器提供网页以供选择 ROM。
然后打开浏览器访问http://localhost:3001
选择一个 ROM。
工具
该服务器提供以下工具:
press_up
:按下 GameBoy 上的向上按钮press_down
:按下 GameBoy 上的向下按钮press_left
:按下 GameBoy 上的左键press_right
:按下 GameBoy 上的右按钮press_a
:按下 GameBoy 上的 A 按钮press_b
:按下 GameBoy 上的 B 按钮press_start
:按下 GameBoy 上的 START 按钮press_select
:按下 GameBoy 上的 SELECT 按钮load_rom
:加载 GameBoy ROM 文件get_screen
:获取当前 GameBoy 屏幕
所有工具都返回具有最新屏幕帧的 ImageContent。
实现细节
此服务器使用模型上下文协议 (MCP) TypeScript SDK 构建。它使用:
- 来自
@modelcontextprotocol/sdk/server/mcp.js
的McpServer
用于服务器实现 - 来自
@modelcontextprotocol/sdk/server/stdio.js``StdioServerTransport
用于 stdio 传输 - 来自
@modelcontextprotocol/sdk/server/sse.js``SSEServerTransport
用于 SSE 传输 - 用于 GameBoy 仿真的
serverboy
- SSE 模式下的 web 服务器
express
- 用于渲染 GameBoy 屏幕的
canvas
执照
麻省理工学院
You must be authenticated.
模型上下文协议服务器使 LLM 能够与 GameBoy 模拟器交互,提供控制 GameBoy、加载 ROM 和检索屏幕帧的工具。