Token导航 LogoToken导航TokenDH.com
MCP Openmsx logo
开发工具未说明官方级别未说明来源级核验

MCP Openmsx

MCP Server

A Model Context Protocol (MCP) server for automating openMSX emulator instances. This server provides comprehensive tools for MSX software development, testing, and automation through standardized MCP protocols.

工具数

17

提示词数

0

GitHub Stars

57

资源数

0
调试工具TypeScriptClaude自动化测试Claude DesktopClaudeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

nataliapc

提供方

nataliapc

最后核验

2026/5/18 02:18

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

MCP-openMSX

_“编排一部二进制歌剧,由AI指挥,MCP解释,openMSX扮演8位天后。”_

![Built by NataliaPC](https://github.com/nataliapc) ![License](https://github.com/nataliapc/mcp-openmsx/blob/main/LICENSE)

](https://github.com/nataliapc/mcp-openmsx/stargazers/)\ ](https://www.npmjs.com/package/@nataliapc/mcp-openmsx?activeTab=versions) ](<>)

该服务器通过标准化的MCP协议为MSX软件开发、测试和自动化提供了全面的工具。

🎁🎁 _如果你觉得这个项目有用,请考虑通过以下方式捐款 PAYPAL链接 或 _

______________________________________________________________________

目录

- 快速安装 VSCode - 基本安装 克劳德桌面版 - 环境变量

项目概述

该项目通过提供以下功能,在现代人工智能辅助开发(如GitHub Copilot、Claude Desktop)和逆向计算(MSX系统)之间架起了一座桥梁:

  • 模拟器控制:启动、配置、管理openMSX实例和回放时间线。
  • 媒体管理:处理ROM盒式磁带、软盘和盒式磁带。
  • 基本程序设计支持:促进BASIC语言编程和开发的工具。
  • 调试工具:完整的CPU调试,包括断点、内存检查和步骤执行。
  • 视频控制:VDP寄存器操作和屏幕截图。
  • 内存操作:读/写RAM、VRAM和I/O端口访问。
  • 自动化:键盘输入模拟和保存管理。
  • 矢量数据库集成:使用MSX资源查询嵌入式矢量数据库以获得开发支持。
  • 混合模式:此MCP服务器支持混合访问模式(_工作室_ 和 _超文本传输协议_ 运输)。

建筑

flowchart TB
  %%{init: {'flowchart': {'curve':'monotoneX' }}}%%

  subgraph yourComputerGroup[" "]
    HOST["Your AI dev companion
(MCP Client support)"]
    EMU["openMSX emulator
(local instance)"]

    subgraph mcpGroup["**mcp-openmsx**"]
      MCP["MCP Server
stdio / http"]
      TOOLS["MCP Tools"]
      VECTORDB[("Embeddings RAG
(Vector Database)")]
      RESOURCES["MCP Resources"]
      LOCALDATA["Local data
(inner documentation)"]
    end
    EXTDATA["External data
(webpages)"]

    HOST  MCP
    MCP  TOOLS & RESOURCES
    TOOLS  VECTORDB
    TOOLS  EMU
    RESOURCES  EXTDATA
    RESOURCES  LOCALDATA
  end

  HOST@{ shape: rounded }
  MCP@{ shape: rounded }
  EMU@{ shape: rounded }
  LOCALDATA@{ shape: docs }
  EXTDATA@{ shape: docs }
  style yourComputerGroup color:#fff,fill:#4444,text-align:left
  style mcpGroup color:#fff,fill:#4444
  style HOST color:#000000,fill:#BBDEFB,stroke-width:4px,stroke-dasharray:0
  style MCP color:#000000,fill:#FFF9C4
  style EMU color:#FFFFFF,fill:#0000FF,stroke-width:4px,stroke-dasharray:0

MCP服务器将Copilot AI的高级自然语言命令翻译成 TCL 控制命令 openMSX,实现自动化MSX软件测试和调试。

可用的MCP工具

仿真器控制工具

  • emu_control:控制openMSX仿真器: _launch, close, powerOn, powerOff, reset, getEmulatorSpeed, setEmulatorSpeed, machineList, extensionList, wait_.
  • emu_replay:控制仿真时间线: _start, stop, status, goBack, absoluteGoto, advanceFrame, reverseFrame, truncate, saveReplay, loadReplay_.
  • emu_info:获取有关当前仿真机器的信息: _getStatus, getSlotsMap, getIOPortsMap_.
  • emu_media:管理ROM、磁盘和磁带介质: _tapeInsert, tapeRewind, tapeEject, romInsert, romEject, diskInsert, diskInsertFolder, diskEject_.
  • emu_vdp:管理VDP(视频显示处理器): _getPalette, getRegisters, getRegisterValue, setRegisterValue, screenGetMode, screenGetFullText_.

编程工具

  • basic_programming:基本工具: _isBasicAvailable, newProgram, runProgram, setProgram, getFullProgram, getFullProgramAdvanced, listProgramLines, deleteProgramLines_.

调试工具

  • debug_run:控制执行: _break, isBreaked, continue, stepIn, stepOut, stepOver, stepBack, runTo_.
  • debug_cpu:读/写CPU寄存器、CPU信息、堆栈堆和反汇编代码: _getCpuRegisters, getRegister, setRegister, getStackPile, disassemble, getActiveCpu_.
  • debug_memory:RAM内存操作: _selectedSlots, getBlock, readByte, readWord, writeByte, writeWord, searchBytes_.
  • debug_vram:VRAM操作: _getBlock, readByte, writeByte, searchBytes_.
  • debug_breakpoints:断点管理: _create, remove, list_.

自动化工具

  • emu_keyboard:将文本或组合键发送到模拟器: _sendText, sendKeyCombo_.
  • emu_savestates:保存和恢复机器状态: _load, save, list_.
  • screen_shot:捕获模拟器屏幕: _as_image, to_file_.
  • screen_dump:将屏幕数据导出为BASIC BSAVE指令。
  • msxdocs_resource_get:检索不支持MCP资源的MCP客户端的MCP资源。

文档工具

  • vector_db_query:查询Vector DB资源以获取有关MSX系统、墨盒和其他开发资源的信息。
  • msxdocs_resource_get:检索不支持MCP资源的MCP客户端的MCP资源。

可用MCP资源

什么是MCP资源?

MCP资源是扩展MCP服务器功能的结构化数据集、文档和辅助文件。它们提供了机器定义、扩展列表、媒体模板和编程示例等基本信息,使MCP openMSX环境中的MSX软件能够实现更强大的自动化、测试和开发工作流程。

可用资源

有60多种可用资源,其中一些直接包含在MCP中,另一些在查询时可通过下载访问。它们分为以下几类:

  • Processors (Z80,R800)
  • Bios (生物ROM、DOS ROM、SUBROM等)
  • System
  • Audio
  • Video
  • Programming (ASM,基本,…)
  • MSX-DOS
  • MSX-UNAPI
  • MSX BASIC

书籍和手册:

  • MSX2 Technical Handbook
  • The MSX Red Book
  • SDCC Compiler

资源来源:

感谢这些资源的作者,他们根据各种许可证提供了这些资源。此MCP服务器包括其中一些资源,以增强开发体验。

\[!重要\]\ 这些资源的权利属于其各自的作者,并根据他们定义的许可证进行分发。

快速开始

您可以通过以下基本方式使用此MCP服务器 .

使用VSCode快速安装

![Install in VS Code](https://insiders.vscode.dev/redirect/mcp/install?name=mcp-openmsx&config=%7B%22name%22%3A%22mcp-openmsx%22%2C%22type%22%3A%22stdio%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40nataliapc%2Fmcp-openmsx%22%5D%7D)

在VSCode中安装MCP服务器的步骤:

  1. 安装
  2. (npx 命令必须在PATH中可用)。
  3. 安装反MCP服务器:

- 使用 安装MCP服务器 单击上面的按钮,在VSCode设置中安装MCP服务器。 - 或添加到您的 _工作区文件夹_ 名为的文件 .vscode/mcp.json 下面是json配置。

STDIO模式(推荐)

{
  "servers": {
    "mcp-openmsx": {
      "command": "npx",
      "args": ["@nataliapc/mcp-openmsx"],
      "env": {
        "OPENMSX_SHARE_DIR": "C:\\the\\location\\of\\your\\openmsx\\share\\folder"
      }
    }
  }
}
\[!注意\]\ 环境变量是可选的。根据需要进行自定义。

流式HTTP模式(更高级)

{
  "servers": {
    "mcp-openmsx": {
      "type": "http",
      "url": "http://localhost:3000/mcp",
      "headers": { }
    }
  }
}
\[!注意\]\ MCP HTTP服务器必须在同一台计算机或另一台计算机上独立运行(make run_http).

使用Claude Desktop进行基本安装

跟随 这些指示 访问克劳德的 claude_desktop_config.json 文件。

编辑它以包含以下JSON条目:

{
  "mcpServers": {
    "mcp-openmsx": {
      "command": "npx",
      "args": ["@nataliapc/mcp-openmsx"],
      "env": {
        "OPENMSX_SHARE_DIR": "C:\\the\\location\\of\\your\\openmsx\\share\\folder"
      }
    }
  }
}
\[!注意\]\ 环境变量是可选的。根据需要进行自定义。

环境变量

变量描述默认值示例
OPENMSX_EXECUTABLEopenMSX可执行文件的路径或命令自动检测到: openmsx (Linux), /Applications/openMSX.app/Contents/MacOS/openmsx (macOS), openmsx.exe (Windows)/usr/local/bin/openmsxC:\Program Files\openMSX\openmsx.exe
OPENMSX_SHARE_DIR包含openMSX数据文件(机器、扩展名等)的目录取决于系统/home/myuser/.openmsx/share
OPENMSX_SCREENSHOT_DIR保存屏幕截图的目录openmsx的默认目录/myproject/screenshots
OPENMSX_SCREENDUMP_DIR保存屏幕转储的目录openmsx的默认目录/myproject/screendumps
OPENMSX_REPLAYS_DIR保存重播文件的目录openmsx的默认目录/myproject/replays
MCP_TRANSPORT运输方式(stdiohttp)stdiohttp
MCP_HTTP_PORTHTTP传输模式的端口号30008080
MCP_ALLOWED_ORIGINSHTTP传输允许的源列表,以逗号分隔所有允许的源为空http://localhost,http://mydomain.com

高级手动使用

\[!重要\]\ 使用MCP服务器不需要这样做,但如果要手动安装,请按照以下步骤操作。

MCP服务器在Linux、macOS和Windows上运行。从源代码构建需要Node.js>=18和TypeScript。

手动安装

npm install -g @nataliapc/mcp-openmsx

手动设置环境变量

设置可选环境变量以自定义服务器:

export OPENMSX_EXECUTABLE="openmsx"
export OPENMSX_SHARE_DIR="/usr/share/openmsx"
export OPENMSX_SCREENSHOT_DIR="/my_project/screenshots"
export OPENMSX_SCREENDUMP_DIR="/my_project/screendumps"
export OPENMSX_REPLAYS_DIR="/my_project/replays"
export MCP_HTTP_PORT=3000
export MCP_ALLOWED_ORIGINS="http://localhost,http://mydomain.com"

作为MCP服务器(stdio)

mcp-openmsx

作为HTTP服务器

MCP_TRANSPORT=http mcp-openmsx
# or
mcp-openmsx http

发展

\[!重要\]\ 使用MCP服务器不需要这样做,但如果您想贡献或修改代码,请按照以下步骤操作。

构建的先决条件

  • Node.js>=18.0.0
  • TypeScript
  • 已安装openMSX模拟器

建筑

git clone https://github.com/nataliapc/mcp-openmsx.git
cd mcp-openmsx/mcp-server
npm install
npm run build

在发展中奔跑

npm run dev

许可证

GPL2许可证-请参阅 许可证 文件以获取详细信息。

支持

如果您需要帮助,或有任何问题或建议,请在 页面或查看项目讨论。

贡献

欢迎投稿!请随时提交拉取请求。

更多的明星!

请给我们一颗星 如果你喜欢这个项目。

![Star History Chart](https://www.star-history.com/#nataliapc/mcp-openmsx&Date)

明星历史

______________________________________________________________________

目录标签

目录标签

调试工具TypeScriptClaude自动化测试developer-tools模拟器控制本地部署MSX开发BASIC编程

支持客户端

Claude DesktopClaudeVS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

17

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP