build-mcpb – MCP Server 打包分发 Skill

3周前更新 9 0 0 0

build-mcpb 是指导 AI Agent 把现有 MCP Server 项目识别、配置并打包成 .mcpb 分发格式的打包型 Skill,适合需要把已写好的 MCP Server 发布给其他用户安装使用的开发者。

Skill 安装

多 Agent 安装
npx skills add https://github.com/anthropics/claude-plugins-official --skill build-mcpb

使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。

Skill 调研报告

Skill 详细介绍

anthropics/claude-plugins-official#build-mcpb 是 Anthropic 官方插件仓库 claude-plugins-official 中的一个 Skill,名称可以识别为 build-mcpb。

它本身不是插件、不是 MCP Server、也不是可直接双击运行的软件,而是一份由 Anthropic 官方维护的“打包指南 / 工作流指令集”,用来指导 AI Agent 把已经写好的 MCP Server 项目构建成 .mcpb 打包文件(MCP Bundle)。MCPB 是 MCP Server 的一种分发格式,目的是让最终用户不用手动配置 Node/Python 依赖和 JSON 配置,就能安装和启动一个 MCP Server。

核心用途

  • 识别一个现有 MCP Server 项目的类型(Node.js、Python 等)。
  • 规划 .mcpb 包应包含哪些文件、入口点、依赖清单和元数据。
  • 生成或校验 MCPB 所需的 manifest / 配置文件。
  • 打包、测试并输出可分发产物。

它不是什么

  • 不是通用 MCP 开发框架。
  • 不是 MCP Server 运行时。
  • 不是 MCP 协议本身的替代品。
  • 不负责从零设计一个 MCP Server 的业务逻辑,那是 MCP 开发类 Skill 的职责。

安装后 Agent 增加的能力

集中在“把已有 MCP Server 整理、配置并打包成 .mcpb 分发格式”这一环。典型场景是:你已经在本地写好一个 MCP Server,希望把它发布给其他用户,让用户用更简单的按钮式安装方式使用,而不是手工安装依赖、手写 JSON。

适合谁

  • 已经了解 MCP、手上已有 Server 项目、需要打包分发的开发者。
  • 想把现有 MCP Server 变成可分发产物的维护者。

不适合谁

  • 完全不了解 MCP、只想直接使用现成 MCP Server 的普通用户。
  • 还没有 Server、需要从零开发业务逻辑的人。

由于该 Skill 属于 Anthropic 官方 claude-plugins-official 仓库,它的默认目标环境是 Claude Code 及 Anthropic 生态的 Skill 加载机制。

Skill 安全评估

总体判断:来源可信度较高,因为它来自 Anthropic 官方插件仓库 claude-plugins-official。但它的实际操作范围涉及文件读写、Shell 执行和依赖处理,安全与否主要取决于你在什么权限下让 Agent 运行它。

来源可信度

Skill 本身来自 Anthropic 官方插件仓库,比第三方同名 Skill 更可信。但不要把它和第三方同名 build-mcpb 混为一谈,注意确认来源是 anthropics/claude-plugins-official。

文件读写

打包过程需要读取 MCP Server 源码、生成 manifest、复制或写入打包产物,这属于打包任务的正常权限范围。风险在于它可能写入或覆盖目录内的文件。建议在 Git 仓库中操作,保持可回滚。

Shell 权限

构建 .mcpb 通常需要执行打包命令、安装依赖、运行测试。如果给 Agent 开放自动执行 Shell,它可能运行 npm / pip / 打包工具的命令。建议首次使用时关闭“自动执行 Shell”,由你手动确认每条命令。

依赖与供应链风险

打包过程可能引入 npm 或 Python 依赖,依赖来自公共源,存在一定供应链风险。建议检查 lockfile、固定版本、避免安装来路不明的包。

网络访问

如需拉取依赖或上传打包产物,会涉及网络访问。属于正常需要,但应尽量限制在必要域名上。

凭证与密钥

Skill 本身通常不需要 API Key。但如果你的 MCP Server 需要凭证,打包时应确保凭证没有被硬编码进 manifest 或产物里。

Prompt Injection

如果 MCP Server 项目内包含第三方文档、README 或注释,理论上可能包含被 Agent 读取后误执行的指令。建议在可信项目上使用。

可落地的降低风险建议

  • 在版本控制仓库内操作,方便回滚。
  • 首次使用时关闭 Agent 自动执行 Shell 权限。
  • 打包完成后人工检查 manifest 和产物内容,确认没有多余的凭证、路径和脚本。
  • 不要把生产环境凭证交给打包流程。

Skill 使用要求

一、Agent / 客户端

该 Skill 来自 Anthropic 官方插件仓库,官方主要面向 Claude Code 生态,可以优先在 Claude Code 中使用。

官方没有公布完整的第三方 Agent 兼容列表。从 Agent Skill 的工作方式看,包含 SKILL.md 或类似指令加载机制的其他主流 Agent(例如 Codex、Cursor、Trae、OpenClaw、WorkBuddy)通常也可以尝试使用。不同 Agent 对 Skill 的加载方式、目录结构和权限模型不同,兼容程度和效果可能不同,具体以对应 Agent 当前版本为准。

二、运行环境 / 依赖

具体版本要求以该 Skill 当前官方说明为准。从打包 .mcpb 的实际需求看:

项目 要求
Agent Claude Code 优先,其他兼容 Agent 可尝试
目标 MCP Server 项目 必须是已存在、可运行的 MCP Server
Node.js 或 Python 取决于被打包的 MCP Server 使用哪种运行时,不是 Skill 本身强制要求
网络 安装依赖或获取打包工具时通常需要
Git 推荐,用于版本回滚

官方未明确强制的最低 Node.js / Python 版本,请不要自行假设。

三、权限

  • 文件读取:必需,用于读取 MCP Server 源码与配置。
  • 文件写入:必需,用于生成 manifest 与打包产物。
  • Shell:通常需要,用于执行打包、安装依赖和测试。属于可选,可关闭自动执行、改为手动确认。
  • 网络:通常需要,用于拉取依赖或工具。
  • Git:推荐,不属于强制权限。

四、账号 / API Key

Skill 本身通常不需要账号、API Key 或 Token。

但被它打包的 MCP Server 项目本身如果需要 API Key、Token 或 OAuth 凭证,则属于那个 Server 的需求,不是这个 Skill 的需求。打包时应避免把这些凭证硬编码进产物。

最小使用条件

  1. 一个可用的 Claude Code 或兼容 Agent。
  2. 一个已存在的 MCP Server 项目。
  3. 对该项目的读写权限。
  4. 对打包及依赖安装相关命令的执行能力。

Skill 安装、使用与卸载教程

一、安装

可以直接复制本页面提供的 Skill 安装指令,粘贴到对应的 Agent 或终端中执行。

如果你不确定自己的 Agent 该如何安装这个 Skill,可以直接问当前 Agent:

如何安装 anthropics/claude-plugins-official#build-mcpb?

也可以更具体地问:

如何在 Claude Code 中安装 anthropics/claude-plugins-official#build-mcpb?

如何在 Codex 中安装 anthropics/claude-plugins-official#build-mcpb?

如何在 Cursor 中安装 anthropics/claude-plugins-official#build-mcpb?

让当前 Agent 根据自己的 Skill 加载与管理机制给出对应步骤,是最稳妥的方式。

如果官方对该 Skill 有特殊安装说明(例如必须放在特定插件目录、通过插件市场加载),以官方说明为准,不要凭经验套用其他 Skill 的目录结构。

二、安装后如何使用

安装后一般不需要额外“启动”命令。在需要打包 MCP Server 时,直接以自然语言向 Agent 描述任务,并点名使用该 Skill 即可。

使用 build-mcpb,帮我把我当前目录下的这个 MCP Server 打包成 .mcpb 分发文件。

用 build-mcpb 检查我这个 MCP Server 项目,生成打包所需的 manifest,并说明还缺哪些字段。

用 build-mcpb 走一遍打包流程,遇到需要执行命令的地方先停下来让我确认,不要自动执行。

把 Skill 名、目标项目、以及你希望它做到哪一步说清楚,效果通常最好。

三、卸载

不同 Agent 的 Skill 安装位置和管理方式不同。常见做法是:

  • 使用对应 Agent 或 Skill 管理器提供的删除方式移除该 Skill。
  • 或者直接问当前 Agent:

如何卸载 anthropics/claude-plugins-official#build-mcpb?

如果官方没有提供统一卸载命令,直接询问当前 Agent 通常更稳妥,避免误删其他 Skill 文件。

常见问题

1. 没有现成的 MCP Server,能用这个 Skill 吗?

不适合。这个 Skill 的定位是把已有的 MCP Server 打包成 .mcpb,不负责从零设计 Server 的业务逻辑。如果你还没有 Server,需要先开发,再回来打包。

2. 打包出来的 .mcpb 能在任何 MCP 客户端里用吗?

不一定。.mcpb 是一种分发格式,能否被某个客户端直接安装取决于该客户端是否支持 MCPB 格式。不同客户端、不同版本的 MCP 支持程度不同,建议以目标客户端官方文档为准。

3. 可以把同一个 Skill 同时装到多个 Agent 里吗?

通常可以。Skill 本质是文件,不同 Agent 各自维护自己的 Skill 目录时,可以在多个 Agent 中分别安装。但不同 Agent 对触发方式、权限和兼容性的处理可能不同,需要逐个验证。

4. Skill 更新后需要重新安装吗?

取决于你的 Agent 如何管理 Skill。有的会自动拉取更新,有的需要手动重新安装。建议直接问当前 Agent:这个 Skill 是否支持自动更新。

5. 打包过程可以完全不让 Agent 执行 Shell 吗?

可以尝试。你可以要求 Agent 只负责生成 manifest 与打包方案,把实际命令列出来由你手动执行。代价是流程会慢一些,但可控性更高。对不熟悉的项目,这是一个比较稳的做法。

6. 中国大陆使用会不会有网络问题?

Skill 本身没有专门的中国大陆适配说明。如果打包过程需要从公共源拉取依赖或工具,中国大陆网络环境可能变慢或需要配置镜像。这不属于 Skill 本身的问题,而是依赖源可达性问题。

7. 它会不会改动我现有的项目文件?

打包通常需要生成新的 manifest 与产物文件,也可能写入压缩包目录。是否会修改已有源码取决于具体任务和 Agent 的行为。建议在 Git 仓库内操作,先提交一次,方便对比和回滚。

Skill 更新日志

版本列表
无版本号
使 mcp-server-dev 技能与 claude.com/docs 连接器指南保持一致(#1418) - build-mcp-server:加载 llms-full.txt 以获取 Claude 特定上下文; 新增第 6 阶段(在 Claude 中测试、审查清单、提交、发布插件) - references/auth.md:新增 Claude 认证类型表、回调 URL、 不支持列表 - references/tool-design.md:新增 Anthropic Directory 硬性要求 (注解、名称长度、读写拆分、提示注入规则) - build-mcp-app:新增 Claude 宿主特定内容(prefersBorder、 safeAreaInsets、CSP)和提交资产规范;通过 自定义连接器进行测试 - build-mcpb:说明远程服务器是推荐的目录路径
无版本号
add(plugin):mcp-server-dev — 用于构建 MCP 服务器的技能(#731)

暂无评论

none
暂无评论...