Skip to content
dsh.fish
Bundle

dsh-mcp-bridge

Curated, verified MCP server bundle for DeepSeek Harness (dsh): one install brings demo, memory, filesystem, GitHub, Playwright and remote HTTP MCP servers, with a connectivity verifier and CI checks.

Source
dsh-mcp-bridge contributors
weekly downloads
185 weekly downloads
License
MIT
Updated
Updated yesterday

Readme

# dsh-mcp-bridge

![dsh-mcp-bridge](https://raw.githubusercontent.com/Edge-Echo/dsh-mcp-bridge/main/banner.svg)

[![npm version](https://img.shields.io/npm/v/dsh-mcp-bridge?color=4d6bfe&logo=npm)](https://www.npmjs.com/package/dsh-mcp-bridge)
[![npm downloads](https://img.shields.io/npm/dm/dsh-mcp-bridge?color=22d3ee)](https://www.npmjs.com/package/dsh-mcp-bridge)
[![license](https://img.shields.io/npm/l/dsh-mcp-bridge?color=4d6bfe)](LICENSE)
[![GitHub stars](https://img.shields.io/github/stars/Edge-Echo/dsh-mcp-bridge?color=22d3ee)](https://github.com/Edge-Echo/dsh-mcp-bridge)

**面向 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (dsh) 的精选、验证过的 MCP 全家桶插件。**

一条命令装上经过实战检验的 MCP server 集合——而不是让你自己去琢磨一份 YAML。每个精选 server 在 `servers/` 里有机器可读定义,`scripts/verify-servers.mjs` 会逐个检查连通性,所以「已验证」是 CI 保证的事实,不是宣传话术。

模型看到的工具名为 `mcp__<serverName>__<toolName>`(与 Claude Code / Codex 的服务器限定命名一致)。桥接层是 DSH 内置的 [`@deepseek-ai/dsh-mcp-client`](https://github.com/deepseek-ai/deepseek-harness):支持 stdio / streamable-http、自动重连、HMR 热替换。

> English docs: [README.md](README.md).

## 快速开始

前置条件:`dsh` 与 `pnpm` 在 PATH 上(`dsh plugin` 内部转发 pnpm;未装可 `npm i -g pnpm`)。

```sh
dsh plugin --profile web add dsh-mcp-bridge
# 本地开发:  dsh plugin --profile web add ./dsh-mcp-bridge
dsh web        # 重启 profile
```

默认启用 MCP 官方 `everything` 演示 server(无 API key,纯本地 npx)。重启后让模型「调用 everything 服务器的 echo 工具,传 hello」,它应该会用 `mcp__everything__echo`。

> 首次运行会通过 `npx` 下载 server 包,之后有缓存。

## 精选目录

| Server | 能干什么 | 需要的配置 | 验证状态 |
|---|---|---|---|
| `everything` | 演示工具:echo、add、长任务、小图片 | 无(默认开启) | ✅ 13 个工具 |
| `memory` | 会话内知识图谱(实体/关系) | 无 | ✅ 9 个工具 |
| `filesystem` | 文件读写/搜索,**仅限显式授权的根目录** | 改 root 目录(args) | ✅ 14 个工具(给定真实目录时) |
| `github` | 仓库 / issue / PR | `GITHUB_TOKEN` | ⏸ 需配置 |
| `playwright` | 浏览器自动化(导航/点击/截图) | 首次需下载浏览器 | ⏸ 较重,CI 跳过 |
| `remote-http` | 自建 / 托管的 HTTP MCP server | URL(可选 token) | ⏸ 需配置 |

启用某个注释预设:在 profile 的 `cordis.patch.yml` 里取消对应注释块(HMR 热替换,无需重启),或直接改本包的 `cordis.patch.yml`。

## 自己验证目录

```sh
npm install          # 会带入 @deepseek-ai/dsh-mcp-client → MCP SDK
npm run verify       # 或:node scripts/verify-servers.mjs
```

逐个打印 `PASS` / `SKIP` / `FAIL`,有失败时退出码非 0。`VERIFY_TIMEOUT_MS=15000` 可调单 server 超时。单 server 排障:`node scripts/probe-server.mjs npx -y your-mcp-server`。

## 添加自己的 MCP server

每个 server 就是一条 `@deepseek-ai/dsh-mcp-client` 条目。推荐加到 profile 的用户 patch 层(HMR 即时生效):

```yaml
# $DSH_HOME/profiles/<name>/cordis.patch.yml
- id: mcp-myserver
  name: '@deepseek-ai/dsh-mcp-client'
  config:
    serverName: myserver          # 命名空间,进程内唯一([A-Za-z0-9_-]{1,32})
    transport: stdio              # 或 streamable-http
    command: npx
    args: ['-y', 'your-mcp-server']
    env:
      YOUR_TOKEN: !!js process.env.YOUR_TOKEN
```

或者:把定义放进 `servers/`(这样 `verify` 会覆盖它),并在本包 `cordis.patch.yml` 里加对应条目。

### 配置字段速查(来自 dsh-mcp-client)

| 字段 | 传输 | 必填 | 说明 |
|---|---|---|---|
| `transport` | 两者 | 是 | `"stdio"` 或 `"streamable-http"` |
| `serverName` | 两者 | 是 | 工具命名空间,存活实例内唯一 |
| `command` / `args` / `env` / `cwd` | stdio | command 必填 | 子进程规范 |
| `url` / `headers` | http | url 必填 | 端点 + 认证头 |
| `toolCallTimeoutMs` | 两者 | 否 | 单次调用超时,默认 60000 |
| `failOnStartupError` | 两者 | 否 | 连接失败时拒绝激活(默认 `false`) |
| `reconnect.*` | 两者 | 否 | 自动重连退避(默认开启) |

## 与 Reasonix / CodeWhale 联动

三者都是 agent harness——**MCP 就是共同语言**。你给 Reasonix / CodeWhale 配的任何 server 都能加到这里;自建的 `streamable-http` server 可以让 DSH、Reasonix、CodeWhale 共用一个进程。见 `servers/remote-http.json`。

## 排错(Windows)

- **headless 验证挂起**(`dsh --profile <name> "任务"`):profile 需要在 `dsh.profile.bundles` 里手动加 `@deepseek-ai/dsh-headless`(`dsh plugin add @deepseek-ai/dsh-headless` 会因其未发布依赖 404 失败)。缺它时树能激活但没有 agent 消费任务。
- **Windows 下 `npx` 正常可用**:MCP SDK 使用 `cross-spawn`,能解析 `.cmd` shim,不需要 `npx.exe`。
- **server 连上了但没有工具**:看 profile 日志;`failOnStartupError: false` 时失败条目会静默激活但不注册工具。

## 发布(npm)

1. `npm version patch`(或手动改 `package.json`),提交,打 tag `vX.Y.Z`。
2. `git push origin main --tags`。
3. GitHub Actions(`publish.yml`)自动发布到 npm——需要 npm **trusted publisher**(OIDC)关联仓库。设置:npm → Access Tokens → Generate new token → *Publish with GitHub Actions*。

给仓库打上 GitHub topic **`dsh-plugin`**,这样会出现在社区列表里([awesome-dsh-plugin](https://github.com/awesome-dsh-plugin/awesome-dsh-plugin)、[WhaleHub](https://github.com/vvlife/whalehub-dsh))。

## License

MIT — 见 [LICENSE](LICENSE)。

Install

dsh plugin --profile web add dsh-mcp-bridge@0.1.3

Profile: web

Source