前言¶
在 DeepSeek Harness(DSH)里使用 MCP 时,常见操作不只包括“能否连接”,还包括查看当前连接状态、查看工具参数、区分全局与项目作用域、导入已有配置,以及判断修改后从哪个会话开始生效。
dsh-mcp-manager-ui 面向这些操作提供一个 Web 管理面板:查看 MCP 状态、展开工具 Schema、添加和编辑 MCP、导入 JSON,并在全局作用域与项目作用域之间切换。
这是什么¶
dsh-mcp-manager-ui 是 DeepSeek Harness Web 的 MCP 管理面板。GitHub 仓库地址为:
https://github.com/Imzl-zl/dsh-mcp-manager-ui
许可证为:
MIT
它适合已经使用 DSH Web、需要在多个项目之间管理 MCP 的开发者。下面介绍其已核实的功能、用法和限制。
核心功能¶
查看连接与工具¶
面板可查看 MCP 状态、传输方式、连接参数和工具列表。
展开单个工具可查看完整输入 JSON Schema,包括必填/可选参数、类型、枚举、默认值与原始 JSON。
支持按传输方式筛选,例如:
HTTP
stdio
也支持按连接状态筛选,以及按名称、命令、URL 搜索。
添加、导入与预设¶
添加 MCP 时可套用预设模板,例如:
Filesystem
Memory
Sequential Thinking
“内置 MCP”目录包括:
Exa
Tavily
Firecrawl
Chrome DevTools
Playwright
可从目录查看、勾选未配置项并追加。
也支持导入以下配置格式:
mcpServers
servers
mcpServers 常见于 Claude、Cursor、Cline、Roo 等工具;servers 来自 VS Code。
导入时可选择“合并(同名更新)”或“替换”,写入前提供预览。
全局与项目双作用域¶
全局 MCP 写入 Web profile 的:
cordis.patch.yml
一次注册后所有项目可用。写入时会结构化修改该文件,并保留其他插件条目、注释和:
!!js
环境变量表达式。
项目级 MCP 写入项目目录:
.dsh/mcp.json
仅该项目会话可见。项目标签页中可添加、编辑、移除项目级 MCP。
项目还可以“屏蔽”某个全局 MCP,写入:
exclude
新会话不再看到该 MCP。
保存时会校验:
serverName
是否唯一,并提示被哪个作用域占用。
连接字段与生命周期¶
该插件支持 DSH rc.7+ 的完整 MCP 连接字段:
command
args
env
cwd
url
headers
以及调用超时、启动失败策略和重连策略。
项目 MCP 由该项目的所有会话共享一份连接,复用:
@deepseek-ai/dsh-mcp-client
支持惰性连接与自动重连。
Host Remote 与 Web 客户端均随插件生命周期加载和卸载。
凭据、主题与更新提示¶
面板可显示并复制已解密的 URL 凭据,以及:
args
env
headers
这些值会话内临时可见。
面板跟随 DSH 深色/浅色主题,并适配窄屏和移动宽度。
非强制更新提示:面板打开时 Host 每天最多向 GitHub Releases 查询一次最新版本。查询失败静默、绝不自动更新;除该查询外不发送任何数据。可设置环境变量关闭:
DSH_MCP_MANAGER_DISABLE_UPDATE_CHECK
安装与启用¶
本文不提供未经核实的安装命令。可访问仓库查看说明:
https://github.com/Imzl-zl/dsh-mcp-manager-ui
许可证为:
MIT
安装前建议检查源码、依赖与许可证。该插件会随 DSH 插件生命周期加载,并以当前 DSH 进程权限运行;安装前应确认来源与配置目标。
典型用法¶
打开内置 MCP¶
1、打开管理面板。
2、点击顶部工具栏中位于“导入 JSON”和“添加 MCP”之间的“内置 MCP”。
3、查看目录,勾选未配置项。
4、一次追加所选 MCP。
全局 MCP 生效¶
全局 MCP 写入:
cordis.patch.yml
通常 DSH 热加载立即生效,包括运行中的会话。
项目 MCP 生效¶
项目级 MCP 写入:
.dsh/mcp.json
下一次新建的连接生效;正在运行的会话不受影响。
若该项目还有会话在跑,新会话复用现有连接,沿用旧配置;等该项目所有会话都结束后,下一个会话才会用新配置建连。
改完配置不需要点“重连”,也不需要重启 Host,新开会话即可。
导入已有 MCP 配置¶
1、准备已有配置,例如:
mcpServers
或:
servers
2、在面板中导入。
3、选择“合并(同名更新)”或“替换”。
4、查看预览后写入。
关闭更新提示¶
可在运行 DSH 的环境中设置:
DSH_MCP_MANAGER_DISABLE_UPDATE_CHECK
以关闭非强制更新提示。
配置生效时机¶
全局和项目两类作用域的生效机制不同:
1、全局作用域写入:
cordis.patch.yml
通常热加载后立即生效,运行中会话也可受影响。
2、项目作用域写入:
.dsh/mcp.json
下一次新建连接生效;正在运行的会话不重读配置。
3、如果该项目仍有会话在运行,新会话会复用现有连接,沿用旧配置;等所有会话结束后,下一个会话才会用新配置建连。
4、“屏蔽”全局 MCP 的可见性变更同理,只对之后的会话生效。
已知限制与注意¶
首轮就绪时序¶
项目 MCP 默认异步建连,新会话首轮对话可能还未就绪,第二轮起可用。
若服务器配置了:
failOnStartupError: true
会等待连接确认后才继续创建会话。
屏蔽不释放命名¶
“屏蔽”全局 MCP 只隐藏其工具,该:
serverName
的全局实例仍在运行并占用命名;项目内不能通过同名服务器接管。如需接管,先在全局禁用或移除该服务器。
全局与项目不能同名¶
serverName
在整个进程内唯一;项目级不能与全局或其他项目用同一个名字。保存时会提示被哪个作用域占用。
手工编辑:
.dsh/mcp.json
或项目不在工作区注册表里,可绕过保存路径校验;那时第二份连接会启动失败。
共享连接与配置粘性¶
运行中连接沿用首会话配置;全部会话结束后,新连接才用新配置。
不支持 per-session 隔离¶
把会话身份绑在连接或进程上的服务器,例如浏览器自动化、SSH 会话、编辑器缓冲区、按连接建索引等,在项目作用域下不被支持。
Windows stdio 进程链¶
在 Windows 上,忽略 stdin EOF 的 stdio 服务器可能留下孙进程。建议服务器自行处理退出,或改用:
streamable-http
DSH 退出宽限¶
DSH 的退出宽限是 5 秒。同时有多个退得慢的服务器时,退出可能在 teardown 完成前被强行截止。
插件热重载¶
插件热重载会清空运行中会话的项目工具。已在运行的会话要重新拿到项目 MCP 工具,需要新开会话。
兼容性¶
已验证的 DeepSeek Harness 版本为:
0.1.0-rc.7
及以上,已验证至:
0.1.0-rc.8
平台为 Windows;Linux/macOS 使用同一 DSH Web 契约。
适用对象与风险提示¶
适合:
1、在 DSH Web 中管理多个 MCP 的开发者;
2、需要区分全局 MCP 和项目 MCP 的场景;
3、希望从 Claude、Cursor、Cline、Roo 或 VS Code 导入现有 MCP 配置的场景。
风险:
- 插件会读取和写入 MCP 配置,并可显示已解密凭据,因此应在受信任环境使用。
- 插件以当前 DSH 进程权限运行,安装前建议检查源码与许可证。
- 许可证为:
MIT
获取¶
当前已核实资料未给出可确认的目录页 URL。GitHub 仓库为:
https://github.com/Imzl-zl/dsh-mcp-manager-ui