宝塔拨测博客拨测技术博客
宝塔面板 / AI 运维

DeepSeek Harness 怎么接入宝塔 MCP?发送安装提示词,让 Agent 自己完成配置

宝塔 MCP 接入 DeepSeek Harness 后,就能直接在 Harness 会话里查询服务器状态,并按需调用网站、数据库、Docker、安全等面板能力。接入不需要手写配置文件——把宝塔面板生成的 MCP 安装提示词发给 Harness,Agent 会自己下载安装文档、识别环境并完成配置。本文按官方文档讲清从获取提示词到首次只读验证的完整流程,以及几个常见报错的处理。

需要提醒的是,DeepSeek Harness 目前仍处于 Developer Preview 阶段,配置结构和界面可能随版本快速变化,实际操作应以当前版本和 Harness 返回的执行摘要为准。

接入前要满足哪些条件

开始前先确认这几项,缺一项都会导致后面连不上:

  • 宝塔 MCP 服务已安装并处于「运行正常」状态
  • 宝塔面板防火墙和云服务器安全组已放行 MCP 服务端口
  • MCP 服务已配置客户端信任、且覆盖访问地址的有效 HTTPS 证书
  • 已安装并能正常打开 DeepSeek Harness
  • 已创建用于本次接入任务的 Harness 工作区
  • 已获取 Harness 所在网络的公网出口 IP

第 1 步:获取 MCP 安装提示词

登录宝塔面板,依次进入「软件商店 → 宝塔 MCP 服务 → 设置 → 接入与体验」,点击「配置 IP 白名单」添加 DeepSeek Harness 当前使用的公网出口 IP,然后复制页面生成的 MCP 安装提示词。

在宝塔 MCP 服务中复制 DeepSeek Harness 安装提示词

注意:如果 Harness 部署在远程服务器,应填该服务器访问宝塔 MCP 时使用的公网出口 IP,而不是浏览器所在电脑的 IP。后续出现 403 ip denied 时,重新确认实际出口 IP 并更新白名单即可。

第 2 步:把安装提示词发给 Harness

在 DeepSeek Harness 中新建会话,选择用于本次任务的工作区,把刚才复制的安装提示词完整粘贴到输入框。

因为安装过程需要读取远程说明并写入 Harness 配置,应选择能完成这些操作的权限模式(官方文档截图用的是 Workspace Write,具体名称可能随版本变化)。发送前先核对下载地址确实来自自己的宝塔面板,并确认目标工作区没有重要的未提交修改。

Harness 收到后会下载提示词指向的说明文档,识别当前 Agent 和运行环境,再检查配置位置、MCP 传输方式、认证信息与连接条件。如果下载地址无法访问,检查地址是否完整、服务端口是否放行、下载链接是否仍有效——但不要因为下载失败就关闭 HTTPS 校验或绕过系统安全策略。

第 3 步:核对配置范围再确认写入

Harness 会使用 @deepseek-ai/dsh-mcp-client 连接宝塔 MCP,传输方式为 streamable-http,并把配置写入:

~/.dsh/profiles/web/cordis.patch.yml

其中 web 是本次运行使用的 Profile 名称。按 DeepSeek Harness 官方说明,Profile 配置位于 $DSH_HOME/profiles/<profile>/cordis.patch.yml;如果改了 DSH_HOME 或使用了其他 Profile,实际路径会不同。

DeepSeek Harness 完成宝塔 MCP 配置并汇总结果

确认摘要时重点检查这五点:

  • MCP 服务名称和地址指向自己的宝塔 MCP 实例
  • 使用 Streamable HTTP,而不是未知的本地命令
  • 认证请求头使用 Bearer Token,且完整 Token 未被打印或写入公开文件
  • 目标文件属于当前实际使用的 Harness Profile
  • 没有覆盖 Profile 中原有的其他插件和 MCP 配置

两个容易踩的坑要单独说。第一,@deepseek-ai/dsh-mcp-client 是 Host/Profile 级 MCP 客户端:写入 Profile 的宝塔 MCP 连接后,同一 Harness Host 中使用该配置的会话通常都能看到对应工具,它不会因为本次选了某个工作区就自动限制为仅该工作区可用。所以只在可信的 Harness 实例和 Profile 中保存面板连接,并按最小权限配置宝塔 MCP。第二,不要跳过 HTTPS 证书校验——即使某次任务摘要里出现了 tls_required=false,也应以系统信任库正常校验服务端证书链为准,公网 MCP 必须用有效 HTTPS 证书。

第 4 步:让新配置生效

DeepSeek Harness 会监视用户 Profile 的 cordis.patch.yml 并尝试热更新。配置写入后等待工具同步完成,再新建会话检查宝塔工具是否出现。

如果当前会话仍看不到新工具,依次排查:确认本次会话使用的 Profile 与写入配置的 Profile 一致;检查 Harness 日志中是否存在配置解析、插件加载或 MCP 连接错误;重新启动当前 Harness Host;新建会话后再次执行只读验证。

MCP 工具在模型中通常以 mcp__<serverName>__<tool> 形式注册,实际名称和工具数量会随 serverName、宝塔 MCP 版本和授权范围变化。

第 5 步:执行首次只读验证

在新会话中发送一条只读指令,例如:

查看宝塔面板当前状态,只读取 CPU、内存、磁盘、系统负载和服务运行情况,不要修改任何配置。

如果 Harness 能通过宝塔 MCP 调用 SystemInfo、ServiceStatus 等只读工具并返回结果,且没有出现 401、403 或证书错误,说明接入成功。

通过 DeepSeek Harness 完成宝塔 MCP 只读验证

首次验证通过后再按需逐步尝试其他操作。涉及删除文件、修改防火墙、重启服务、安装软件等高风险操作时,应仔细核对执行计划并保留人工确认。

常见报错怎么处理

  • Harness 无法下载或读取安装文档:确认提示词里的下载地址完整且未过期,检查 Harness 所在服务器能否访问宝塔面板;遇到证书错误应修复服务端证书,不要关闭 HTTPS 校验。
  • MCP 连接返回 403 ip denied:回「接入与体验」页把 Harness 服务器实际使用的公网出口 IP 加入白名单,不要长期设为允许任意来源。
  • MCP 连接返回 401:检查 Bearer Token 是否与当前宝塔 MCP 实例一致;Token 已更新或疑似泄露时,在宝塔 MCP 中重新生成授权信息再更新 Harness 配置。
  • 配置写入后当前会话看不到工具:确认配置写入了当前 Host 使用的 $DSH_HOME 和 Profile,等待热更新或重启 Harness Host 并新建会话。
  • 修改后 Harness 报 YAML 或插件加载错误:检查 cordis.patch.yml 是否仍是有效的 Patch 列表、有没有覆盖原有配置;Developer Preview 阶段配置结构可能调整,遇到版本差异优先参考当前版本的官方配置文档。

信息来源

本文接入流程、配置路径、权限模式与报错处理均以宝塔官方文档为准:《使用 DeepSeek Harness 接入宝塔 MCP》。DeepSeek Harness 处于 Developer Preview 阶段,配置结构和界面可能随版本变化,具体以当前版本和 Harness 返回的执行摘要为准。

常见问题

DeepSeek Harness 接入宝塔 MCP 前要准备什么?

确认宝塔 MCP 服务已安装且运行正常、防火墙和安全组已放行 MCP 端口、MCP 已配好客户端信任的 HTTPS 证书,并已安装 DeepSeek Harness、创建好工作区、拿到 Harness 所在网络的公网出口 IP。

安装提示词发给 Harness 后,配置写到哪里?

Harness 使用 @deepseek-ai/dsh-mcp-client 连接,传输方式为 streamable-http,默认写入 ~/.dsh/profiles/web/cordis.patch.yml(web 为本次使用的 Profile 名)。若改了 DSH_HOME 或用了其他 Profile,实际路径会不同。

IP 白名单应该填哪个 IP?

填 DeepSeek Harness 所在服务器访问宝塔 MCP 时使用的公网出口 IP,不是浏览器所在电脑的 IP。出现 403 ip denied 时重新确认实际出口 IP 并更新白名单。

配置写入后当前会话看不到宝塔工具怎么办?

确认本次会话使用的 Profile 与写入配置的 Profile 一致,检查 Harness 日志有无配置解析或 MCP 连接错误,必要时重启 Harness Host 并新建会话再验证。不要只凭工作区名称判断配置范围。

为什么不能关闭 HTTPS 证书校验来绕过错误?

公网 MCP 应使用客户端信任且覆盖访问地址的有效 HTTPS 证书。出现 TLS 或证书错误时应修复服务端证书,关闭校验或导入来源不明的根证书会带来中间人攻击风险。