dsh-godot-mcp-status:在 DSH 界面里看 Godot MCP 是否已连通

前言

用 DeepSeek Harness(DSH)驱动智能体操作 Godot 时,MCP 桥是否已连上、工具是否已注册,往往要翻日志或试调工具才能确认。Godot 编辑器侧 MCP 服务开了、DSH profile 里配了客户端,中间任一环节断开,mcp__godot__* 工具也不会出现在注册表里。下面介绍 oceanke100 维护的客户端插件 dsh-godot-mcp-status:在 Web 界面右下角放一个可拖动的 Godot 图标角标,用蓝/灰圆点和悬停气泡把「编辑器在不在」与「DSH 是否已连上 MCP」分开呈现。

这是什么

dsh-godot-mcp-status 是给 DeepSeek Harness 使用的 Godot MCP 连接状态显示插件(仓库:oceanke100/dsh-godot-mcp-status)。分类上属于 客户端 模块:Godot 编辑器运行期间,主界面右下角出现带「MCP」角标的 Godot 图标;编辑器关闭后图标消失。它回答一个问题:当前编辑器里的 MCP 是否可用,智能体能否实际调用 mcp__godot__* 工具。

社区目录页:https://www.skillhub.cn/plugins/oceanke100/dsh-godot-mcp-status(独立生态站点,与 DeepSeek / 幻方无官方从属关系)。

核心功能

界面表现

  1. 状态圆点:角标文字前有一个圆点。蓝色表示 DSH 已连上 Godot MCP 并完成工具发现;灰色表示 Godot 编辑器在跑(或检测到端点)但 DSH 尚未连通或未注册工具。
  2. 悬停提示:鼠标悬停显示「已连接」或「未连接」等对应气泡。
  3. 拖动:按住图标可拖到窗口内任意位置;松手位置会限制在窗口内,并写入 localStorage 键 dsh-godot-mcp-status:position,同源刷新后保持。移动不足 4px 计为点击,避免影响悬停。默认距右 12px、距底 30px。
  4. 角标尺寸:客户端在 shell.overlay 注册全窗口单点击穿席位,每 2 秒轮询状态;仅 32px 图标接收鼠标事件。

未配置 MCP 时的行为

插件无需额外配置即可激活。若 profile 里尚未配置 Godot MCP,但本机 Godot MCP 端点(9080–9083)在监听,角标会以灰点出现,气泡提示「检测到 Godot MCP,尚未配置」;点击可弹出可直接复制的 cordis.patch.yml 配置行。探测不到端点则不显示角标。进程扫描仅在已配置的服务器名称或地址含 godot 时启用,避免因机器上其它 Godot 项目误显角标。

状态如何判定(Host)

Host 半边按需计算并通过 /godot-mcp-badge/state.json 返回 JSON,将两件事分开:

  • 编辑器是否在运行:通常对配置的 MCP 端点做 TCP 探测;端口关闭时退回进程扫描(Windows 用 tasklist,其它平台用 ps 查找 Godot 编辑器进程,缓存 3.5 秒)。
  • DSH 是否已连接:依据实时工具注册表中的 mcp__<server>__<tool> 定义;MCP 桥仅在连接成功并完成工具发现后注册,连接释放或重连预算耗尽后移除。

服务器行来自 loader 中带 serverName 且传输为 stdio 或 streamable-http 的条目。插件不向编辑器写入状态;端口探测只建立 socket 后关闭,不打开 MCP 会话。

环境要求

  • DSH 版本:>= 0.2.2-rc.1(见 package.json 的 engines.dsh)。
  • 运行平台:Web(桌面版或浏览器)。
  • 若要出现蓝点,profile 中需有 Godot MCP 客户端配置,例如 @deepseek-ai/dsh-mcp-client,serverName 为 godot,transport 为 streamable-http。未配置时插件仍可安装,仅做端点检测与配置片段提示。

安装与启用

安装方式以仓库 README 为准,不必手写臆测的 CLI 包名拼接。

通过插件市场发现

  1. 在 DSH 设置 → 插件 → 发现 中添加列出本插件的索引源。
  2. 从卡片安装。仓库发布后自带索引地址为:
https://oceanke100.github.io/dsh-godot-mcp-status/index.json

索引中固定的 Git 源形式为:

git+https://github.com/oceanke100/dsh-godot-mcp-status.git#<commit>

(<commit> 以索引所列为准。)

npm

发布到 npm 后可用包名 dsh-godot-mcp-status 安装;当前 0.1.0 仍走上述 Git 源(见 package.json 的 version)。

本地目录

用插件管理器的 install_bundle 指向本仓库根目录。

安装后

角标属于客户端模块,已打开的页面需刷新一次才会出现。不需要为本插件单独写配置;它跟随 profile 里已有的 MCP 服务器设置。

典型用法

  1. 在 Godot 中启用 MCP 插件并保持编辑器运行,在 DSH profile 中配置 serverName: godot 的 MCP 客户端行。
  2. 安装本插件并刷新 DSH Web 页面,观察右下角 Godot 角标。
  3. 圆点为蓝且悬停显示已连接时,可认为 mcp__godot__* 工具已在注册表中,智能体侧可正常选用。
  4. 若为灰点且提示尚未配置,点击角标复制 cordis.patch.yml 片段,按提示补全 profile 后重连 MCP。

适用场景与注意

适合谁:在 DSH Web UI 里做 Godot + MCP 联调、需要一眼确认桥接状态的开发者。

权限与安全:插件以当前 DSH 进程权限运行;Host 侧会探测端口与进程列表。安装前建议查看 GitHub 仓库 源码与 MIT 许可证(LICENSE)。界面使用的 Godot logo 遵循 CC BY 4.0,为 Godot Foundation 商标,此处仅用于标识 Godot MCP 连接(见 Godot press)。

版本信息:npm 包版本 0.1.0;GitHub 星标以仓库页面为准(目录线索为 0)。

结尾

dsh-godot-mcp-status 把 Godot MCP 的「编辑器在线」与「DSH 已注册工具」拆成可见的角标状态,减少反复试工具和查日志的成本。进一步了解可访问目录页 skillhub.cn/plugins/oceanke100/dsh-godot-mcp-status 与源码仓库 github.com/oceanke100/dsh-godot-mcp-status。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜