中文EN

@adenxie/dsh-vercel

toolsnpmMIT

通过 OAuth 把 DeepSeek Harness 连接到 Vercel 官方 MCP 服务,支持按 Agent 按需加载工具、精简工具 schema、长结果分页,并附带 34 个 Vercel 技能。

下载量 / Downloads
426

安装

dsh plugin --profile web add @adenxie/dsh-vercel

沙箱测试

这个插件还没测过。提交测试 →

README

<h1 align="center">dsh-vercel</h1>

<p align="center">

在 DeepSeek Harness 中使用 Vercel 项目、部署与平台工具。<br>

通过 OAuth 连接官方 MCP 服务,按需读取 Vercel 技能指导。

</p>

<p align="center">

<a href="package.json"><img src="https://img.shields.io/badge/version-0.4.0-2563eb" alt="文档版本 0.4.0"></a>

<a href="https://www.npmjs.com/package/@adenxie/dsh-vercel"><img src="https://img.shields.io/npm/v/%40adenxie%2Fdsh-vercel?logo=npm&amp;color=CB3837" alt="npm 版本"></a>

<a href="#安装"><img src="https://img.shields.io/badge/DSH-0.2.1--rc.2-2563eb" alt="DSH 兼容目标 0.2.1-rc.2"></a>

<a href="package.json"><img src="https://img.shields.io/badge/Node.js-22.19%2B%20or%2024%2B-339933?logo=nodedotjs&amp;logoColor=white" alt="Node.js 版本范围见 package.json"></a>

<a href="#连接-vercel"><img src="https://img.shields.io/badge/OAuth-PKCE-8b5cf6" alt="OAuth 与 PKCE 授权"></a>

<a href="skills/vercel"><img src="https://img.shields.io/badge/Vercel_skills-34-f97316" alt="34 个 Vercel 技能"></a>

<a href="LICENSE"><img src="https://img.shields.io/badge/code-MIT-0f766e" alt="连接代码使用 MIT 许可"></a>

<a href="LICENSES/VERCEL-APACHE-2.0.txt"><img src="https://img.shields.io/badge/skills-Apache_2.0-0f766e" alt="Vercel 技能使用 Apache 2.0 许可"></a>

<a href="docs/VALIDATION-0.4.0.zh.md"><img src="https://img.shields.io/badge/status-verified-0f766e" alt="已在 Desktop 与隔离 Host 环境验证"></a>

</p>

<p align="center">

<a href="https://www.npmjs.com/package/@adenxie/dsh-vercel"><img src="https://img.shields.io/badge/npm_%E5%AE%89%E8%A3%85-CB3837?style=for-the-badge&amp;logo=npm" alt="npm 安装"></a>

<a href="https://github.com/AdenXie/dsh-vercel/releases/download/v0.4.0/adenxie-dsh-vercel-0.4.0.tgz"><img src="https://img.shields.io/badge/%E4%B8%8B%E8%BD%BD_tgz-111827?style=for-the-badge&amp;logo=github" alt="下载 0.4.0 安装包"></a>

<a href="#安装"><img src="https://img.shields.io/badge/快速开始-111827?style=for-the-badge" alt="快速开始"></a>

<a href="#官方技能"><img src="https://img.shields.io/badge/技能指南-111827?style=for-the-badge" alt="技能指南"></a>

<a href="docs/VERCEL_PARITY_AUDIT.zh.md"><img src="https://img.shields.io/badge/功能对比-111827?style=for-the-badge" alt="与 Codex Vercel 插件的功能对比"></a>

<a href="#本地开发"><img src="https://img.shields.io/badge/本地开发-111827?style=for-the-badge" alt="本地开发"></a>

</p>

<p align="center"><a href="README.md">English</a> · 简体中文</p>

@adenxie/dsh-vercel 把 Vercel 官方 MCP 服务接入 DeepSeek Harness。登录一次 Vercel 后,模型就能查询项目、部署和团队等信息,也能按需读取随包附带的 34 个 Vercel 技能文档。当前版本是 0.4.0。

安装

需要 DeepSeek Harness 0.2.1-rc.2 至 0.2.x,Node.js ^22.19.0 || >=24.0.0。Desktop 和 Web 使用不同的 profile,安装时选你实际运行插件的那个。

从 npm 安装

先打开一次 DSH Desktop 让它初始化 profile,然后完全退出,再用 Desktop 自带的 CLI 安装:

$DshCli = Join-Path $env:LOCALAPPDATA 'Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd'
& $DshCli plugin --profile desktop add '@adenxie/dsh-vercel@0.4.0'

装完重新打开 Desktop。Web profile 用 dsh plugin --profile web add @adenxie/dsh-vercel@0.4.0。

从安装包安装

从 0.4.0 Release 下载 adenxie-dsh-vercel-0.4.0.tgz,或者在源码目录运行 npm pack 自己生成。同样先初始化并退出 Desktop,然后在安装包所在目录运行:

$DshCli = Join-Path $env:LOCALAPPDATA 'Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd'
$Archive = (Resolve-Path './adenxie-dsh-vercel-0.4.0.tgz').Path
& $DshCli plugin --profile desktop add $Archive

其他平台用 dsh plugin --profile web add /path/to/adenxie-dsh-vercel-0.4.0.tgz,路径和 profile 换成你自己的。

从源码安装

适合开发调试,日常使用建议装 npm 包或安装包。

git clone https://github.com/AdenXie/dsh-vercel.git
Set-Location dsh-vercel
pnpm install --frozen-lockfile
pnpm run build
$DshCli = Join-Path $env:LOCALAPPDATA 'Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd'
$Checkout = (Get-Location).Path
& $DshCli plugin --profile desktop add "link:$Checkout"

其他平台用 dsh plugin --profile web add link:/path/to/dsh-vercel,然后重启对应的 Host。上面的示例都通过 $env:LOCALAPPDATA 找到 Desktop 自带的 CLI,所以系统 PATH 里不需要有 dsh。

连接 Vercel

第一次使用时运行 adenxie_vercel_mcp_account(action=login),在浏览器里登录并授权。连接成功后,Vercel 的 MCP 工具会以 mcp__adenxie_vercel__* 的名字出现。同一个工具的 status、test、clear 可以查看状态、测试连接或清除凭据,设置页也能做这些操作并刷新令牌。

授权会申请 openid offline_access,这样 Vercel 才会发刷新令牌。如果你是从旧版升级、旧授权里没有刷新令牌,在设置页重新授权一次即可;新授权成功之前,原来的凭据会一直保留。

手动完成授权时,用 action=finish 并提供完整的回调 URL(包含 code 和 state),或者同时传入这两个值。只传 code 会被拒绝,因为插件要校验 state。

按需加载工具

Vercel 服务端有两百多个工具,全部塞给模型会占掉大量上下文。所以每个 Agent 一开始只看到 8 个辅助工具:先用 adenxie_vercel_mcp_search_tools 搜索,再把名字交给 adenxie_vercel_mcp_load_tools,对应的 Vercel 工具在下一轮出现在这个 Agent 里。已经知道 Vercel 原始工具名(如 list_projects)时可以直接加载,不用先搜索。

  • 每个 Agent 最多同时加载 6 个工具,schema 合计不超过 32000 字符。
  • 在 deepseek-flash 上实测,会话中途加载的工具以延迟声明的方式下发,模型有时不认为它们可调用,直到上下文压缩之后才直接调用。这时可以用 adenxie_vercel_mcp_call 传入 name 和 arguments 调用已加载的工具。它在 DSH 内部按真实工具名嵌套执行,审批、守卫和策略与直接调用完全一样,也调不到当前 Agent 没有加载的工具。
  • 尽量不要卸载。DeepSeek 线路以 addition-only 方式更新工具列表:新增工具会追加在对话历史后面,提示缓存不受影响;卸载或 mode=replace 会重写工具列表,之后的请求都无法命中缓存。只有预算不够时才用 adenxie_vercel_mcp_unload_tools。
  • 加载结果只对当前 Agent 生效。子 Agent 只能加载父 Agent 已经加载的工具,DSH 宿主本身的限制照常生效。
  • 断线会清空已加载的工具,重连后重新搜索、加载即可。

精简后的 schema

声明给模型的 schema 是精简过的:去掉 $schema、title、example(s) 和布尔型 additionalProperties 这类不影响参数是否合法的标注,参数说明只保留第一层。属性名、类型、枚举、required 都原样保留,Vercel 服务端仍按完整 schema 校验每次调用。导出的工具目录也保持原样。

精简后仍超过 6000 字符的工具(目前 10 个,如 update_project、create_deployment),会把其中最大的几个属性折叠成只有类型和提示的占位,其余字段照常展开。模型需要折叠部分时,用 adenxie_vercel_mcp_describe_tool 按路径(如 requestBody.framework)查看完整结构,不用先加载。

按 237 个工具的快照计算,声明总量从约 48.6 万字符降到约 29.1 万字符(少 40%),最大的单个工具不超过 6000 字符,加载前的初始开销是 8 个工具共 2882 字符加 400 字符的系统提示(0.3.1 是 11 个工具 2974 字符加 871 字符)。这些都是序列化字符数,不是 token。

长结果分页

工具返回的内容超过 12000 字符时,结果会被截断,结构化结果里附带一个结果 handle。

  • 普通文本:模型先看到前 12000 字符。用 adenxie_vercel_mcp_read_result 传入 resultId 和上一页的 nextOffset 继续读,每页最多 12000 字符。
  • JSON(部署列表、项目列表等):模型只看到前 4000 字符和一份结构概要,概要列出顶层字段、数组长度和数组条目里有哪些字段。之后可以只读需要的字段,例如 read_result({resultId, path: "deployments", fields: ["uid", "state", "url"], limit: 50}),这时 offset/limit 按条目计数,每次最

…(truncated)

以上内容来自 npm 上的 README,我们只做格式化,不改内容。

版本

npm 上共发布:3,最后更新 2026-10-19

链接

GitHub · Homepage · npm

同类插件