dsh-mcp-hub:DSH 下的 MCP 一键部署与工具中枢

前言

在 DeepSeek Harness(DSH)里接 MCP(Model Context Protocol)服务器,常见做法是改静态 mcp.json 或手写客户端配置,改完往往还要重启进程。Windows 开发机上还有一层摩擦:npx 实际是 npx.cmd,Node 的 spawn 在没处理好 PATHEXT 时容易直接 ENOENT;DSH 在 Windows 上原生命令执行工具是 pwsh 而不是 bash,再装一个「通用 shell MCP」容易和内置能力重复;依赖缺失时日志往往只有堆栈,缺少可执行的修复命令。

下面介绍社区插件 dsh-mcp-hub(维护者 JD579g),分类为工作流。它在 DSH 设置页提供 MCP 的一键安装、在线搜索、环境诊断和权限分级,连接已运行的 Harness 时无需再重启;工程上偏 Windows 优先,在 macOS / Linux 上也可安装使用。

这是什么

dsh-mcp-hub 是 DSH 插件:在 Settings → MCP Tools 里搜索 MCP 服务器、点安装,即可在当前 Harness 中注册连接,不必手改配置文件、不必为 npx.cmd 单独折腾。同一能力也通过斜杠命令和面向模型的工具暴露。

与「只维护一份 mcp.json」相比,README 中的功能矩阵概括了差异:一键添加、连接时不强制重启、按需搜索官方 MCP Registry / npm / GitHub、与 DSH 原生工具去重并说明原因、每台服务器四级权限、7 个零依赖内置 MCP 服务(61 个工具)、以及 /mcp doctor 与设置页里的环境诊断。

核心功能

设置页「MCP Tools」

设置页集中提供:状态栏、环境 Doctor、一键预设、按需搜索(官方 MCP Registry / npm / GitHub)、已安装服务器列表及每台服务器的权限下拉、当前平台的 DSH 原生工具列表、自定义 MCP 表单、内置终端与实时 host 日志。

斜杠命令

README 中列出的命令如下,与设置页能力对应:

/mcp doctor                 # 诊断环境
/mcp list                   # 已安装服务器及运行状态
/mcp search sqlite          # 搜索注册表(不全量预拉取)
/mcp add mcp-sqlite         # 安装
/mcp permission kb ask      # 权限:永久 / 本会话 / 每次询问 / 禁用
/mcp reload                 # 全量重新同步

内置零依赖 MCP 服务

插件自带 7 个可在任意 MCP Host 下以 stdio 方式运行的服务器,共 61 个工具:files、exec、net、kb(长期记忆)、util、hub(控制面)、device(仅 Android/DSHA 有意义;桌面端不提供)。

权限与去重

每台外部 MCP 服务器可选四级权限:always(永久)、this session(本会话询问一次)、ask every time(每次询问)、disabled(禁用)。「询问」走 DSH 的审批通道;无审批 UI 时 fail closed,不会静默放行。

目录与搜索结果会并列展示 DSH 原生能力,并提示候选服务器是否与已有工具重复,避免再装第二个 shell 等冗余服务。

Windows 优先的工程细节

平台相关逻辑集中在 lib/platform.js,以可注入的平台参数写成纯函数,便于在 Linux CI 上测 Windows 分支、在 Windows runner 上真实执行。要点包括:PATHEXT 感知的可执行文件解析(解决 spawn npx 找不到 npx.cmd)、默认文件根目录(用户主目录与 %TEMP%)、路径策略与危险命令列表、终端回退链 pwsh.exe → powershell.exe → cmd.exe 等。详见仓库 README 的「Windows-first engineering」表格。

安装与启用

需要 Node.js >= 20。运行时零第三方依赖(MCP SDK 由 DSH 提供)。

方式一:DSH 插件通道(与手动安装同一产物)

安装后需 重启 DSH 一次,再打开 Settings → MCP Tools → Doctor:

dsh plugin --profile web add dsh-mcp-hub

方式二:从克隆目录或解压后的 release 包安装

Windows(PowerShell):

.\install.ps1 -Verify

macOS / Linux:

./install.sh

同样在安装完成后重启 DSH 一次,并在 Settings → MCP Tools → Doctor 检查环境。README 说明执行策略与 pnpm 回退等细节见仓库文档。

当前 package.json 版本为 1.2.0,许可证 MIT。Roadmap 注明尚未发布到 npm,因此 dsh plugin add dsh-mcp-hub(无 clone)仍属规划项;以仓库说明为准。

典型用法

  1. 完成安装并重启 DSH,在 Settings → MCP Tools → Doctor 查看缺失项;Doctor 会给出具体修复命令(例如 winget install OpenJS.NodeJS.LTS、winget install astral-sh.uv 等),而不是只抛堆栈。
  2. 在设置页或命令行搜索需要的 MCP,例如 /mcp search sqlite,确认与 DSH 原生工具无重复后 /mcp add … 或点一键安装。
  3. 对敏感服务器设置权限,例如 /mcp permission kb ask,按会话或每次调用走审批。
  4. 需要全量同步配置时使用 /mcp reload;已安装服务器 不会自动更新,要新版本需重新安装。

Python 类 MCP 依赖 uvx;插件会提示 winget 安装命令,但不会代你安装。

适用场景与注意

适合谁: 主要在 Windows 上使用 DSH、希望少改配置、快速试 Registry / npm / GitHub 上的 MCP,并需要内置文件/执行/网络/记忆等零依赖工具包的开发者。

诚实边界(README「Honest status」):

  • CI 在 windows-latest、ubuntu-latest、macos-latest(Node 20/22)验证;Windows 上会真实跑安装/卸载脚本,GUI 仅有 browser-half 冒烟,首跑 UI polish 可能仍偏新。
  • 注册表搜索依赖第三方 API,限速与故障会暴露给用户。
  • 无头会话下「ask」权限无法弹窗,会拒绝而非默认允许。
  • 插件 未 发布到 npm(见 Roadmap)。

安全与信任: 插件以 当前 DSH 进程权限 运行,内置 exec、路径策略与危险命令拦截仍不能替代你对第三方 MCP 服务器源码与许可证的审查。安装前请阅读 GitHub 仓库 与 MIT 许可证;问题反馈可使用仓库提供的 bug 模板(版本、OS、Node、doctor 报告、hub.log 相关行)。

社区目录 SkillHub 插件页 与 GitHub 为独立信息源,与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,本文仅作技术介绍。

结尾

dsh-mcp-hub 把 MCP 的 discovery、安装、权限、诊断和一组零依赖内置服务收进 DSH 设置页与 /mcp 命令,并针对 Windows 上 spawn、路径与终端差异做了可测试的平台层。若你已在用 DSH 且频繁增减 MCP,可先走官方插件通道安装,用 Doctor 补齐 Node / uvx 等依赖,再按需搜索安装外部服务器。

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

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

Xiaoye