DeepSeek Harness MCP 配置:迁移、注册、在对话里调用

MCP 服务器是怎么接进 dsh 的:一份配置怎么从 Claude Code / Codex 迁过来、注册好的服务长什么样、配置文件里贴什么,以及官方 DeepSeek Harness Web UI 真的调用高德地图 MCP 的全过程——6 张截图,每张步骤图都深链回原片对应秒数。

最近更新: 2026-09-27

localhost:3080 上的 DeepSeek Harness Web UI 显示高德地图 MCP 返回的「驾车路线信息」卡片,秦皇岛到天安门总距离约 292 公里、预计时间约 3 小时 20 分钟
回报的样子:MCP 服务器给出的答案,在 dsh 里渲染成一张原生卡片——292 公里、约 3 小时 20 分钟,G1 京哈高速那段还逐条拆开。

把 MCP 服务器接进 DeepSeek Harness,本质是改配置而不是找一个设置页:服务器注册好之后,会以普通工具调用的形式出现在会话里。这一页跟着的实录来自 B站 up 主 eogee——一支视频把迁移、注册、真正调用整条路径走完了。

动手看图之前先说清画面来源,因为这一页的素材比较特殊。大部分画面是作者自己那篇图文教程(eogee.com)的滚屏,加上他自研的 a4api 面板——那是第三方工具,不是 DeepSeek Harness 官方界面。只有首图和最后两张步骤图,来自 localhost:3080 上真正的官方 DeepSeek Harness Web UI。每一帧都按这个口径标注,官方行为也只在那三张图上描述。

先看结论

  • ▸MCP 是 dsh 借用外部工具的方式,接进来是改配置、不是找设置页:片内的字段对照表用五行就把一份服务定义搬过去——serverName、transport: stdio、command + args、env,以及远程服务的 streamable-http + url。
  • ▸注册好的服务在管理面板里是一张张卡片——chrome-devtools、playwright、open-websearch、github 标 dsh;node_repl、cua_repl 标 Codex;my-fastmcp-server、open-webserch 标 Claude。注意那个面板是 a4api,作者自研的工具,不是 dsh 界面。
  • ▸唯一能证明真的接通的是最后一张图:localhost:3080 上的官方 dsh Web UI 用一串 mcp__amap-maps__* 工具调用,回答了「秦皇岛到天安门」——约 292 公里、约 3 小时 20 分钟。

从改配置到拿到真实答案:五步

第一组 · 把服务接进来

  1. 1

    先看字段对照:dsh 把 MCP 的每个字段叫什么

    复用一份已经在别处配好的 MCP 配置,本质是改字段名,不是重写。片内的 4.1 字段对照表把三个客户端并排放:dsh(表头写的是 cordis.patch.yml)、Claude Code(claude mcp / JSON)和 Codex(config.toml)。几行内容都很短——serverName(dsh 要单独一个字段,Claude Code 用 mcpServers 里的键,Codex 用 [mcp_servers.<名称>])、transport: stdio(三者默认都是 stdio,Codex 只要存在 command 字段就按 stdio 处理)、command + args 与 env(含义一致),以及远程服务的 transport: streamable-http + url。配置文件的名字会随 dsh 版本变化,这一列只当作者当天的记录看,动手前先对一遍配置教程。

    eogee.com 的 DeepSeek Harness MCP 教程里的字段对照表,把 dsh(cordis.patch.yml)、Claude Code(claude mcp / JSON)和 Codex(config.toml)的 serverName、transport: stdio、command + args、env 与 streamable-http url 并排比对
    作者的 4.1 字段对照表:五行就覆盖了绝大多数要在客户端之间搬的 MCP 服务定义。看原片 2:50
  2. 2

    看看已经接好的服务:一张卡片一个 MCP

    这张图里的面板是 a4api——作者自研的第三方管理器,不是 dsh 官方界面。它的「MCP 管理」页把每个注册过的服务列成一张卡,并标出它来自哪个客户端:chrome-devtools(浏览器调试、DOM/网络/性能检查)标 dsh,playwright(浏览器自动化)标 dsh,open-websearch(网络搜索集成:访问搜索引擎并返回实时结果)标 dsh,github 标 dsh;node_repl、cua_repl 标 Codex;my-fastmcp-server、open-webserch 标 Claude。卡片上还写着传输方式(多数是 stdio,两个是 sse),以及「迁移…/介绍/预览」三个按钮;上方工具条是「全局视图/项目视图/迁移日志/回收站/安装 MCP/刷新」。

    a4api 第三方「MCP 管理」面板里并排八张已注册 MCP 服务卡——chrome-devtools、cua_repl、github、my-fastmcp-server、node_repl、open-websearch、open-webserch 和 playwright,每张都标注了 dsh、Codex 或 Claude 来源
    八台服务排在一屏,每张卡都标了它来自哪个客户端。这个面板是 a4api,作者自研的工具,不是 dsh 界面。看原片 3:30
  3. 3

    注册一个:把 mcpServers 配置贴进去

    点「安装 MCP」会开一个两页签的弹窗——「粘贴 JSON」,或者「表单填写」手动把同样的字段填一遍。JSON 页签吃的是标准服务块,片里贴的就是高德地图那个:command 是 npx,args 是 ["-y", "@amap/amap-maps-mcp-server"],env 里放 AMAP_MAPS_API_KEY。输入框下方的提示写明它兼容「mcpServers」顶层、以名称为键的 server 字典或单个对象,多条还能一次批量导入。但注意这次的「安装到」停在 Claude:面板是把它写进你选的那个客户端;上一张图里带 dsh 标记的卡片说明它同样管 dsh 这一侧。

    a4api 面板的「安装 MCP 服务」弹窗停在「粘贴 JSON」页签,框里是一段 amap-maps 的 MCP 服务配置:command 为 npx、args 为 @amap/amap-maps-mcp-server,env 里读 AMAP_MAPS_API_KEY
    JSON 路线:贴一段标准服务块,在「安装到」里选客户端,面板就把它写进那个客户端的配置。看原片 3:56

第二组 · 在 dsh 会话里用起来

  1. 4

    在官方 dsh 会话里提问

    从这里开始是真实界面:localhost:3080 上的官方 DeepSeek Harness Web UI,工作区 a4agent,界面是「探索未至之境(预览版)」,模型 DeepSeek V4 Flash。新会话就是一个输入框——没有 MCP 选择器,没有服务器列表,什么都不用先打开。直接用大白话问就行:「我在秦皇岛 我想去 天安门有多远 开车多长时间」,然后发送。由哪个 MCP 来回答,是模型自己决定的,不是你去勾的。

    官方 DeepSeek Harness Web UI 的输入框,工作区为 a4agent、模型选中 DeepSeek V4 Flash,框里已输入「我在秦皇岛 我想去 天安门有多远 开车多长时间」
    提问这一步:新会话里用大白话写一句就行,没有 MCP 选择器要你先设。看原片 5:18
  2. 5

    看 dsh 真的调用 MCP,再读回执

    会话上方有「对话」和「轨迹」两个页签,第二个才是看得见接线的地方。它先给模型的推理,再给调用本身:Tool call · mcp__amap-maps__maps_geo(秦皇岛市),再一次 mcp__amap-maps__maps_geo(天安门),然后是带解析坐标的 mcp__amap-maps__maps_direction_driving 和 mcp__amap-maps__maps_distance。mcp__<服务>__<工具> 这个命名就是回执——干活的是 MCP 服务器,不是内置工具;它也是分辨「注册成功」和「静默失败」最快的办法。

    DeepSeek Harness 会话的「轨迹」页签,显示 MCP 工具调用链:先是对秦皇岛市和天安门的 mcp__amap-maps__maps_geo,接着是 mcp__amap-maps__maps_direction_driving 和 mcp__amap-maps__maps_distance
    「轨迹」页签:mcp__<服务>__<工具> 这些行就是回执——回答的是高德地图 MCP,不是内置工具。看原片 5:28

dsh 接入 MCP 常见问题

dsh 到底有没有 MCP 管理界面、Claude Code 和 Codex 的配置哪些能直接搬、以及怎么分辨接上了还是静默失败。

DeepSeek Harness 有 MCP 管理界面吗?

这支视频里没有——这一点必须说准。带八张服务卡的「MCP 管理」面板,以及旁边的「安装 MCP」弹窗,都属于 a4api,也就是作者自研的第三方工具。同一支视频里的官方 dsh Web UI 完全没有 MCP 页签:服务器靠配置接进来,然后以工具调用的形式出现在会话中。如果你就是想要图形界面,这类第三方面板可以用,但请按第三方代码对待,先读再跑。

我在 Claude Code 或 Codex 里配好的 MCP,能直接复用吗?

可以,这正是片内 4.1 字段对照表的用处。serverName、transport: stdio、command + args、env 几乎一一对应。真正 dsh 特有的只有 serverName——dsh 要单独一个字段,Claude Code 用 mcpServers 里的键,Codex 用 [mcp_servers.<名称>]。远程服务方面,dsh 的 transport: streamable-http + url 对应 Claude Code 的 type: "http" / --transport http 以及 Codex 的 --url / url。动手改之前,配置文件的名字请以当前配置教程为准——表里 dsh 那一列写的是 cordis.patch.yml。

片里到底注册了哪些 MCP 服务器?

同一屏上有八张卡:chrome-devtools、playwright、open-websearch、github 标 dsh;node_repl、cua_repl 标 Codex;my-fastmcp-server、open-webserch 标 Claude。多数走 stdio,my-fastmcp-server 和 open-webserch 走 sse。真正跟到最后的只有高德地图——以 npx @amap/amap-maps-mcp-server 注册,env 里放 AMAP_MAPS_API_KEY。

怎么确认一个 MCP 真的接上了?

问一个只有那台服务器才答得上来的问题,然后打开会话的「轨迹」页签。接成功的标志是出现 Tool call · mcp__amap-maps__maps_geo · 秦皇岛市 这样的行——mcp__<服务>__<工具> 前缀直接点了服务器的名。如果模型用自己的知识回答了,或者这行压根没出现,就是没接上:先查配置,再查服务器自己的启动命令。

MCP 服务器都要自己的 API Key 吗?

要调付费接口或绑定账号接口的那些要。片里的高德地图就是例子:它的配置在 env 里带 AMAP_MAPS_API_KEY,而作者是先把配置块贴进去,再去高德开放平台控制台(应用管理 → 我的应用)取到 Key 填回来。Key 应该放在服务器的 env 块里,或面板的「请求头」里按每行 KEY=VALUE 写,别写进提示词;另外,Key 一旦进了配置文件,那个文件就是机密。

接着往下看 MCP

MCP 服务器只是 dsh 生态里的一格——这几页接着这一页往下走。

来源与署名

6 张截图全部出自同一支 B站 实操视频——感谢 up 主 eogee 把整条路径录了下来。看图时请对着标注读:字段对照表是作者自己的图文教程页(eogee.com);「MCP 管理」面板和「安装 MCP 服务」弹窗是他自研的 a4api 工具,属于第三方面板、不是 DeepSeek Harness 的一部分;只有输入框、工具调用列表和路线卡片来自官方 dsh Web UI。每张图都深链到原片对应秒数,可以自己核对。 dsh 这一侧的配置本身,先看 配置分层教程

DSH Plugins 是独立的 DeepSeek Harness 插件市场,与 DeepSeek 官方无关,也不代表官方背书。第三方插件未经安全审计,安装前请审查源码。

每周获取最新的 DeepSeek Harness 插件,绝不滥发。