Game Boy模拟器控制协议

pymgba-mcp是一个基于Python的mGBA Game Boy/GBA模拟器控制协议服务,通过原生Python绑定提供屏幕截图、模拟器控制、内存读写、断点设置等功能,适用于GB自制游戏开发。

  • by zenitraM
  • Python
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 zenitraM/pymgba-mcp

使用说明

pymgba mcp

这是一个基于Python的MCP(模型上下文协议)服务器,用于mGBA Game Boy/GBA模拟器,使用原生Python绑定。它通过其原生Python绑定与mGBA交互,不仅可以截图,还可以控制模拟器、读写内存、添加断点等,用于对GB自制游戏进行vibe编码。

它还以Nix flake的形式发布,将mGBA和Python绑定构建在一起,以实现可移植、易于复制的设置。

特性

  • 原生Python绑定:使用mGBA内置的Python API,而不是生成外部进程
  • 完全仿真器控制:运行帧、步骤说明、暂停/取消暂停
  • 存储器访问:在任何地址读/写内存
  • 按钮输入:按住Game Boy按钮
  • 截图:随时捕捉屏幕
  • 保存状态:保存并加载模拟器状态
  • 调试:设置断点、读取CPU寄存器、单步执行代码
  • OAM检查:查看角色数据

工具

工具 说明
run_rom 加载并运行N帧的ROM,返回屏幕截图
step_frame 运行一帧(或N帧)
press_button 按下按钮(a、B、开始、选择、D-pad)
read_memory 从内存地址读取字节
write_memory 将字节写入内存地址
read_memory_range 读取连续的字节范围
take_screenshot 捕获当前屏幕
save_state 保存模拟器状态
load_state 加载模拟器状态
get_registers 获取CPU寄存器值
dump_oam 转储精灵(OAM)数据
reset 重置模拟器

使用您最喜欢的氛围编码工具

安装Nix:https://nixos.org/download.html,并添加到您的MCP设置中:

{
  "mcpServers": {
    "pymgba": {
      "command": "nix",
      "args": ["run", "github:zenitraM/pymgba-mcp"],
    }
  }
}

与Nix一起跑步

安装Nix:https://nixos.org/download.html,克隆此仓库:

nix run .

或者直接从GitHub:

nix run github:zenitraM/pymgba-mcp