dsh-mcp-oauth-client:DeepSeek Harness 通用 MCP 管理与客户端桥接插件

前言

DeepSeek Harness (DSH) 的核心设计理念是「一切皆插件」。在使用 DSH 构建工作流或智能体时,通常需要连接多个 Model Context Protocol (MCP) 服务。这些服务形态各异,有的提供 HTTP 接口,有的依赖本地进程;有的需要认证,有的则无需认证。在 DSH 原生配置中管理这些服务往往需要手动编辑 YAML 文件,配置复杂且容易出错。

dsh-mcp-oauth-client 是为此设计的通用管理插件。它提供了一个可视化的管理界面,并作为客户端桥接,支持通过配置文件或界面添加、管理和连接各类 MCP 服务。

插件概览

  • 插件名称:dsh-mcp-oauth-client
  • 维护者:fangzaozao
  • 开源协议:MIT
  • 定位:面向 DeepSeek Harness 的通用 MCP 管理与客户端桥接插件
  • 说明:虽然包名保留了 oauth 历史名称,但它不仅支持带认证的服务,也支持无认证的 MCP 服务。

核心功能

该插件提供以下能力:

  • 可视化管理:在 DSH 的「设置 → MCP」界面中统一管理所有服务。
  • HTTP 流式支持:支持可流式 HTTP 协议,包含以下认证方式:
    • 无认证
    • OAuth 2.1 + PKCE
    • Bearer 令牌
    • 自定义请求头
  • 本地进程支持:支持标准输入输出(stdio)协议,可配置启动命令、参数、环境变量和工作目录。
  • 服务控制:支持添加、删除、启用、停用、重新连接服务,以及查看当前工具数量。
  • OAuth 自动化:支持自动打开浏览器进行授权,通过本机回调地址完成认证,并使用官方 MCP SDK 处理令牌刷新。

安装与启用

该插件通过 npm 包管理。安装时需要指定 Web profile。

1. 通过 npm 安装

dsh plugin --profile web add dsh-mcp-oauth-client

2. 通过本地 tarball 安装

如果插件已打包,可以直接安装:

pnpm pack
dsh plugin --profile web add ./dsh-mcp-oauth-client-0.3.0.tgz

3. 通过 Git 安装

从 Git 安装时,插件会执行 prepare 脚本进行构建。如果使用 pnpm 10 及以上版本,需要在 DSH profile 的 pnpm-workspace.yaml 中明确允许该构建脚本:

allowBuilds:
  dsh-mcp-oauth-client: true

然后使用固定的 commit SHA 进行安装,以确保构建结果稳定:

dsh plugin --profile web add github:fangzaozao/dsh-mcp-oauth-client#COMMIT_SHA

使用方法

安装完成后,启动 Web profile,进入「设置 → MCP」页面,点击「添加服务器」开始配置。

HTTP 服务配置

对于 HTTP 类型的 MCP 服务,界面提供了四种认证方式供选择:

  1. 无认证:适用于公开访问或由网络层(如防火墙)保护的端点。
  2. OAuth 2.1 / PKCE:支持动态注册,也支持手动填写客户端 ID 和客户端密钥。
  3. Bearer 令牌:直接输入令牌,插件会自动在请求头中添加 Authorization: Bearer <token>。
  4. 自定义请求头:适用于 API Key 或特定服务商的请求头格式。

stdio 服务配置

对于本地标准输入输出(stdio)类型的 MCP 服务,需要填写可执行命令。

  • 命令:填写启动该 MCP 服务的可执行文件或脚本路径。
  • 参数:命令参数每行填写一个。
  • 环境变量:使用 名称=值 的格式填写。
  • 工作目录:可选配置。

管理器模式

该插件包只安装管理器,不内置默认的 MCP 地址、凭据或本地命令。需要通过界面添加的具体服务条目,其配置会写入当前 profile 的 cordis.patch.yml 文件中。只有管理器条目本身需要设置 manager: true;如果该服务是由组合包提供的,且组合包已包含管理器,则无需重复设置。

注意事项

  1. 安全存储:在界面中填写的凭据会以明文形式写入 cordis.patch.yml。请勿将该配置文件提交到 Git 仓库。
  2. 令牌持久化:OAuth 的访问令牌和刷新令牌仅保存在插件进程的内存中。如果插件重启,令牌将失效,需要重新授权。
  3. 系统要求:运行该插件需要 Node.js 20 或更高版本。
  4. DSH 版本兼容性:需要支持组合包和 Web 客户端扩展的 DSH 版本。
  5. 预览状态:本插件面向 DeepSeek Harness 开发者预览版。DSH 仍在快速迭代,后续版本可能包含破坏性变更。

总结

dsh-mcp-oauth-client 解决了 DSH 环境下管理异构 MCP 服务(特别是涉及认证和本地进程)的配置痛点。通过可视化的操作和标准化的配置输出,它降低了连接外部工具的门槛。对于需要深度集成 MCP 生态的 DSH 用户,这是一个值得安装的基础设施插件。

更多细节和源码,请访问 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜