Token导航 LogoToken导航

MCP Server · 浏览器工具

Debug Electron MCP

一个基于Model Context Protocol (MCP)的自动化调试和测试工具,用于与Electron应用程序交互,支持DOM检查、UI自动化、日志流和性能监控。

stdio官方级别未说明来源级核验工具 8@debugelectron/debug-electron-mcp@latest
PythonClaude性能分析Claude DesktopCursor

快速开始

作者 / 组织
TheDarkSkyXD
提供方
TheDarkSkyXD
运行时
Node.js

工具数量

8

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

1

仓库热度

收录来源

1 个

MCP World

选型结论

Debug Electron MCP 属于浏览器工具类 MCP Server,公开资料标注 8 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude、Cursor,有可以直接复制的安装命令;接入前要先准备 会话凭据。

分类

浏览器工具

传输方式

stdio

认证方式

会话凭据

部署方式

公开资料未说明

安装与配置

安装命令

npx @debugelectron/debug-electron-mcp@latest serve

客户端配置示例

{
  "mcpServers": {
    "debug-electron-mcp": {
      "command": "npx",
      "args": [
        "@debugelectron/debug-electron-mcp@latest",
        "serve"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Node.js,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 8 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

详细介绍

调试电子MCP

用于自动化、调试和测试Electron应用程序的最终模型上下文协议(MCP)服务器。

利用人工智能的力量与任何电子应用程序进行交互。通过与Claude Code、Claude Desktop、Cursor和其他MCP客户端兼容的标准化协议,检查DOM、按文本单击按钮、填写表单、捕获屏幕截图和读取控制台日志。

全局安装一次——它会自动检测您所在的项目并确定其范围。在多个会话中使用多个Electron应用程序,无需额外配置。

______________________________________________________________________

目录

- 核心工作流程 - 工具参考 - 项目管理工具 - 交互命令

______________________________________________________________________

特性

通用兼容性

  • 适用于任何Electron应用程序:不需要修改源代码。
  • 零设置集成:完全通过Chrome DevTools协议(CDP)连接。
  • 跨平台:支持Windows、macOS和Linux。

自动检测和多项目

  • 自动项目检测:阅读您的 package.json name或文件夹名——每个项目都会自动获得自己的端口。
  • 每个项目没有配置:全局安装MCP一次。在任何Electron项目中打开Claude Code,它都能正常工作。
  • 多个应用程序,无冲突:端口9222上的应用A,端口9223上的应用B——每个Claude Code会话只与自己的应用对话。
  • 磁盘上的共享注册表: ~/.debug-electron-mcp.json 跨会话持久化端口分配并重新启动。

智能UI自动化

  • 语义交互:具体 click_by_text 和 fill_input 命令“只是工作”
  • 视觉智能:截取特定窗口的屏幕截图以验证状态。
  • 强有力的行动:高级 drag, hover, type,以及 wait 用于复杂工作流的命令。

深度可观察性

  • DOM检查: get_page_structure 为AI提供交互式作战地图的干净副本。
  • 日志流:实时读取主进程、渲染器和控制台日志。
  • 演出:监控内存、时间和系统指标。

______________________________________________________________________

快速开始

步骤1:添加到MCP配置中(一次)

克劳德代码(全球——推荐)

添加 ~/.claude/settings.json:

{
  "mcpServers": {
    "debug-electron-mcp": {
      "command": "npx",
      "args": ["-y", "@debugelectron/debug-electron-mcp@latest"]
    }
  }
}

完成。现在,每个Claude Code会话都有可用的Electron工具。

VS代码/光标
{
  "mcpServers": {
    "debug-electron-mcp": {
      "command": "npx",
      "args": ["-y", "@debugelectron/debug-electron-mcp@latest"]
    }
  }
}
克劳德桌面版
{
  "mcpServers": {
    "debug-electron-mcp": {
      "command": "npx",
      "args": ["-y", "@debugelectron/debug-electron-mcp@latest"]
    }
  }
}

步骤2:通过远程调试启动您的Electron应用程序

首次在项目中使用MCP时,它会自动注册项目并分配端口。检查 list_projects() 要查看分配的端口,请启动应用程序:

electron . --remote-debugging-port=9222

就是这样。MCP会自动检测您的项目,并将所有命令范围限定在该项目上。

______________________________________________________________________

多项目如何运作

MCP会自动检测它在哪个项目中运行——没有标志,没有 projectName 在每次调用中,没有针对每个项目的配置。

当Claude Code在您的项目中打开时会发生什么:

  1. Claude Code从您的项目目录中生成MCP服务器
  2. MCP读取您的 package.json name(或使用文件夹名称)
  3. 如果项目已注册,则使用现有端口
  4. 如果它是新的,它会自动注册并分配下一个空闲端口
  5. 所有工具调用都会自动作用于该项目的端口

示例:两个应用程序,两个会话

# Session A: Claude Code in ~/projects/music-app/
# MCP auto-detects "music-app" → port 9222
take_screenshot()  # only sees music-app

# Session B: Claude Code in ~/projects/todo-app/
# MCP auto-detects "todo-app" → port 9223
take_screenshot()  # only sees todo-app

没有相声。无需手动设置。每个会话都知道自己的应用程序。

检查您分配的端口

使用 list_projects() 从任何会话中查看所有注册项目及其端口:

list_projects()
# -> Registered projects (2):
#    - music-app: port 9222 [connected (1 window(s))]
#    - todo-app: port 9223 [not connected]

注册表持久性

端口分配保存到 ~/.debug-electron-mcp.json 并在所有会话中共享:

{
  "portRange": [9222, 9322],
  "projects": {
    "music-app": { "port": 9222 },
    "todo-app": { "port": 9223 }
  }
}

人工项目管理

您还可以使用内置工具显式管理项目:

register_project({ projectName: "my-app" })                    # register with auto-assigned port
register_project({ projectName: "my-app", port: 9250 })        # register with specific port
unregister_project({ projectName: "old-app" })                  # free a port
list_projects()                                                  # see all projects

用projectName覆盖

如果您需要针对与当前会话不同的项目,请传递 projectName 明确地:

take_screenshot({ projectName: "other-app" })

______________________________________________________________________

启用远程调试(必需)

您的Electron应用程序 必须在启用远程调试的情况下运行 在分配给您项目的港口。

使用 list_projects() 要检查分配的端口,请使用该端口启动应用程序。

方法1:命令行标记(最简单)

electron . --remote-debugging-port=9222

方法2:package.json(持久化)

"scripts": {
  "start": "electron .",
  "dev:debug": "electron . --remote-debugging-port=9222"
}

然后运行 npm run dev:debug.

方法3:程序化(最适合代码库)

const { app } = require('electron');

if (process.env.NODE_ENV === 'development' || process.argv.includes('--dev')) {
  const port = process.env.DEBUG_PORT || '9222';
  app.commandLine.appendSwitch('remote-debugging-port', port);
  console.log(`Remote debugging enabled on port ${port}`);
}

验证

打开 http://localhost: /json 在您的浏览器中。如果你看到一个JSON目标列表,那么你就准备好了。

______________________________________________________________________

使用指南

核心工作流程

  1. 检查:使用 get_page_structure 查看可用的按钮和输入。
  2. 目标:确定您想要的元素(例如,带有文本“登录”的按钮)。
  3. 法案:发送如下命令 click_by_text 或 fill_input.
  4. 验证:使用 take_screenshot 或 get_title 确认操作成功。

工具参考

工具说明
get_electron_window_info列出所有打开的窗口、其标题和连接ID。
list_electron_windows列出跨应用程序的所有可用窗口目标。
take_screenshot捕获特定窗口或活动窗口的屏幕截图。
read_electron_logs从应用程序流式传输控制台日志(非常适合调试错误)。
send_command_to_electron主要工具。 在应用程序内执行特定操作。

项目管理工具

工具说明
register_project注册项目名称,自动分配调试端口
unregister_project删除项目,释放其端口
list_projects显示所有已注册的项目及其端口和连接状态。

交互命令

在里面使用这些 send_command_to_electron:

点击和选择
命令描述
click_by_text*最适合按钮/链接。* 用途: {"text": "Submit"}
click_by_selector*精确控制。* 用途: {"selector": ".submit-btn"}
click_button*传统的单击命令。* 用途: {"selector": "#btn"}
select_option*用于下降。* 用途: {"text": "Category", "value": "Books"}
hover*将鼠标悬停在元素上。* 用途: {"selector": ".tooltip-trigger"}
drag*拖放。* 用途: {"startSelector": "#item", "endSelector": "#cart"}
输入和表单
命令描述
fill_input*智能填充。* 用途: {"placeholder": "Username", "value": "admin"}
type*模拟真实打字。* 用途: {"text": "Hello World", "slowly": true}
verify_form_state*检查所有表格的有效性。*
send_keyboard_shortcut*发送组合键。* 用途: {"text": "Ctrl+S"}
观察
命令描述
get_page_structure*返回UI的简化JSON映射。*
find_elements*所有交互元素的详细列表。*
is_visible*检查可见性。* 用途: {"selector": "#error-modal"}
get_attribute*获取属性。* 用途: {"selector": "img", "attribute": "src"}
count*统计匹配的元素。* 用途: {"selector": "li.item"}
debug_elements*获取按钮和输入的详细调试信息。*
get_title*获取文档标题。*
get_url*获取当前URL。*
get_body_text*获取可见的正文。*
高级
命令描述
wait*等待元素/时间。* 用途: {"duration": 1000} 或 {"text": "Loading"}
navigate_to_hash*导航到哈希路由。* 用途: {"text": "settings"}
eval*执行自定义JavaScript。* 用途: {"code": "alert('Hello')"}
console_log*写入应用程序控制台。* 用途: {"message": "Hello"}

______________________________________________________________________

高级:HTTP服务器模式

对于需要多个AI客户端共享的单个长期服务器的高级用例,可以在HTTP模式下运行服务器。

注: 大多数用户不需要这个。标准设置会自动检测项目,并处理多个应用程序,无需额外配置。

第一步: 启动服务器:

npx @debugelectron/debug-electron-mcp@latest serve
npx @debugelectron/debug-electron-mcp@latest serve --port 4000

第二步: 将您的MCP配置指向以下URL:

{
  "mcpServers": {
    "debug-electron-mcp": {
      "url": "http://localhost:3100/mcp"
    }
  }
}

步骤3: 通过 projectName 在工具调用中(HTTP模式下没有自动检测):

send_command_to_electron({ projectName: "music-app", command: "get_title" })

健康检查: http://localhost:3100/health

______________________________________________________________________

发展

先决条件

  • Node.js 18+
  • npm或pnpm

设置

git clone https://github.com/TheDarkSkyXD/debug-electron-mcp.git
cd debug-electron-mcp
npm install
npm run build

本地运行

npm run dev                               # stdio mode
npx tsx src/index.ts --project my-app     # explicit project scope
npx tsx src/index.ts serve                # HTTP mode

测试

npm test                  # unit tests
npm run test:react        # integration tests

______________________________________________________________________

故障排除

“找不到目标”/“没有运行的Electron应用程序”

  • 检查您分配的端口 list_projects().
  • 使用以下命令启动您的Electron应用程序 `--remote-debugging-port=

`.

  • 验证:打开 `http://localhost:

/json` 在您的浏览器中。

“项目'xyz'未注册”

  • 自动检测不应该发生这种情况。如果是,跑 register_project({ projectName: "xyz" }).
  • 检查 list_projects() 查看已注册的项目。

检测到错误的项目

  • MCP使用您的 package.json name,或者如果不存在package.json,则使用文件夹名称。
  • 要覆盖,请使用 --project 标志: "args": ["-y", "@debugelectron/debug-electron-mcp@latest", "--project", "correct-name"]

“没有可用的自由端口”

  • 默认范围为9222-9322(100个端口)。
  • 未使用的空闲端口: unregister_project({ projectName: "old-app" }).

“选择器为空”错误

  • 错误: {"command": "click_by_selector", "args": ".btn"}
  • 对的: {"command": "click_by_selector", "args": {"selector": ".btn"}}

______________________________________________________________________

许可证

MIT许可证。看 许可证 了解详情。

积分

工具与能力

工具数量

8

资源数量

0

提示词数量

0

能力标签

Electron调试Python本地部署UI自动化DOM检查日志监控性能分析

支持客户端

Claude DesktopClaudeCursor

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

自动操作网页

打开页面、点击、填表,把浏览器动作交给模型执行。

抓结构化数据

把页面内容整理成表格或 JSON,省掉手工复制粘贴。

走一遍关键流程

按步骤检查页面是否正常,回归时少漏环节。

选择建议

值得选的地方

  • 只提供 8 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude、Cursor,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Node.js,换机器要重新装一遍。
  • 需要自备会话凭据,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在浏览器工具场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到会话凭据的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Debug Electron MCP

MCP World · 本页

8stdio有1 个2026-05-17
Fetch 9a2682de

MCP.so

1SSE有3 个2026-05-17
Browser 738d52bc

MCP World

0stdio有1 个2026-05-17
Playwright MCP Server

MCP.so

21stdio有4 个2026-05-17
Skyvern MCP

MCP World

0stdio有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Debug Electron MCP 怎么安装?

公开资料给出的安装命令是 npx @debugelectron/debug-electron-mcp@latest serve,运行环境为 Node.js。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Debug Electron MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Node.js;保存后完全退出客户端再打开,配置才会生效。

Debug Electron MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Debug Electron MCP 需要 API Key 吗?

公开资料标注的认证方式是会话凭据,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Debug Electron MCP 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude、Cursor;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP