DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

hxlog /

hxlog/dsh-mcp-tools

Verified

DeepSeek Harness 最简洁、优雅的 MCP 工具管理器:在设置里添加 MCP 服务器、Postman 式请求头、连通性测试、逐工具开关。

★ 2 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@9d0ac455

dsh-mcp-tools

dsh-mcp-tools

DeepSeek Harness 简洁、优雅的 MCP 工具管理器。
类 Cursor 风格的全局 MCP 控制:自由添加、停用、删除 MCP 接口与工具,适合 MCP 测试、按需请求、拓展上下文等场景。

npm version npm downloads license node GitHub

GitHub 仓库 · npm · 问题反馈 · English

设置服务器 MCP 工具详情

一站式管理用户的 MCP Server,按需开关 MCP Tools。被停用的 MCP 工具不会注册进模型,既不占上下文,也无法被误调用。

✨ 功能

能力 说明
服务器管理 两种传输:streamable-http(URL + 请求头)与 stdio(命令 / 参数 / 环境变量 / 工作目录);分字段填写,或直接粘贴 {"mcpServers": { ... }} 一次导入多个。
像 Postman 一样填密钥 请求头是键值对行而不是 JSON 文本框,默认带一行 x-mcp-key;值默认掩码、可逐行显示;名称重复就地报错。
真正的逐工具控制 每个工具是一个 chip,点击即从模型工具列表消失(不是注册了再报错);支持搜索 / 全选 / 反选 / 全部停用,悬停查看完整描述。
连通性测试与事件日志 临时建连 initialize → tools/list → 关闭,回报耗时 / 协议版本 / 工具数,不影响运行中的服务器;「最近事件」记录连接、重载、测试与失败。
服务器开关与配置复制 关闭服务器即断开并注销其全部工具(不删配置);一键复制该服务器的 mcpServers 片段。
与 DSH 原生一致 沿用 --dsw-* 设计 token、平铺行与 32px 输入框,深浅色 / 中英文自适应;客户端是 classic script,无构建步骤。

添加服务器:键值对请求头 逐工具 chip

🚀 安装

需要 DeepSeek Harness 0.2.x(Web GUI dsh web 或 DSH Desktop)与 Node.js ≥ 22.13,包已发布到 npm:dsh-mcp-tools。

⚠️ 这是 DeepSeek Harness 插件,不是普通 npm 依赖库:npm i dsh-mcp-tools 只会下载包,运行时仍需装进 DSH profile。

通过插件页安装(推荐)

  1. 打开 DSH Web(或 DSH Desktop)→ 侧边栏 插件(Desktop 在 设置 → 插件)。
  2. 点击安装,填入 dsh-mcp-tools,确认。
  3. 启用新 bundle,刷新页面,打开 设置 → MCP。

通过命令行安装

dsh plugin --profile web add dsh-mcp-tools      # Web
dsh plugin --profile desktop add dsh-mcp-tools  # Desktop

升级包版本后需要重启 dsh web / 重启 DSH Desktop。

⚡ 快速开始

  1. 设置 → MCP → 添加服务器:远程服务器填 URL,把密钥粘贴进请求头行(默认 x-mcp-key)。
  2. 点 测试连接,看到类似 已连接 · 95 个工具 · 478 ms 后保存,并打开服务器开关。
  3. 在会话中直接让模型调用工具,DSH 会注册为 mcp__<服务器>__<工具>;用不到的工具展开列表停用即可,启用的工具越少,每次请求里的 tool schema 越小。

🖼 更多界面

深色模式 停用部分工具
深色模式 停用部分工具
粘贴 mcpServers JSON 工具描述 tooltip
粘贴 mcpServers JSON 工具描述 tooltip

🧩 工作原理

DeepSeek Harness Web (dsh web)
├── Host 插件(lib/)          ← cordis bundle patch,复用原生 MCP 客户端
│   ├── manager.js             连接、工具注册、启停
│   ├── store.js               ~/.dsh/dsh-mcp-tools/state.json(原子写、监听外部修改)
│   └── routes.js              /mcp-tools/api/*
└── 客户端 bundle(client/client.js)
    └── 设置分区「MCP」(id: mcp,order: 18)—— classic script,无需构建
  • 启停生效于注册时而非调用时:停用的工具根本不出现在模型工具列表里。
  • 状态存于 ~/.dsh/dsh-mcp-tools/state.json,原子写入;外部修改会被监听并热应用。
  • REST 接口:GET /mcp-tools/api/state、POST /servers/{test,save,delete,toggle,refresh}、POST /tools/{toggle,bulk}、POST /import、POST /reload、GET /logs;详见 docs/API.md。

🔒 安全说明

  • 请求头以明文保存在本地状态文件里,只在本机——不要提交到仓库或同步到公开位置。
  • 给每个 MCP 服务器使用独立、最小权限的密钥。
  • 除你配置的 MCP 服务器外不发起任何网络请求,没有遥测;删除服务器后它的工具会从后续所有请求中移除。

🛠 开发

git clone https://github.com/hxlog/dsh-mcp-tools.git
cd dsh-mcp-tools
node --check client/client.js
npm run selftest

把源码目录链接进 profile 调试(Windows 示例):

rmdir "C:\Users\<你>\.dsh\profiles\web\node_modules\dsh-mcp-tools"
mklink /J "C:\Users\<你>\.dsh\profiles\web\node_modules\dsh-mcp-tools" "D:\path\to\dsh-mcp-tools"
  • 客户端改动:刷新页面即可,bundle 直接从磁盘提供,无构建。
  • Host 改动:改一次 profile 的 cordis.patch.yml(例如追加一行注释)触发 HMR 重组,日志出现 MCP 管理器已启动 即生效。
  • 面板是单个 classic script,只能 require react 与 @deepseek-ai/dsh-client-ui-primitives。

❓ 常见问题

问题 处理
设置里没有 MCP 分区 多半是 bundle 未启用:插件页确认并刷新,必要时重启 dsh web。
会话里看不到工具 确认服务器开关已打开、对应工具 chip 也已启用;停用的工具不会被注册。
测试连接失败 检查 URL、服务器是否使用 streamable-http(而非普通 SSE)、请求头名称是否与服务端要求一致;网络 / 代理问题也会在这里暴露。
状态文件在哪 ~/.dsh/dsh-mcp-tools/state.json;删除即重置为空,下次启动自动重建。

📄 License

MIT · Powered by DeepSeek Harness

—/ 5

No ratings yet

Verified DSH bundle

Commit 9d0ac4551ad6

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout