这是一份完整指南,用于将您的本地服务器 (MCPB) 提交到 Anthropic 的公共目录,以实现更广泛的分发和可发现性。
前置条件
阅读本指南前,您应该具备:
一个可工作的 MCPB
使用变量替换的可移植代码
良好的错误消息和用户体验
清晰、捆绑的依赖项
初次接触 MCPB 开发?请先查看使用 MCPB 构建桌面扩展。有关技术最佳实践(测试、错误消息、可移植性),请参阅MCPB 存储库。
注意:本指南涵盖本地 MCP 服务器。有关远程桌面扩展,请参阅远程 MCP 服务器提交指南。
1. 目录概览
目录包含有什么好处?
可发现性和信任:
在 Claude Desktop 内的官方 Anthropic 目录中列出
可由个人 Claude Desktop 用户搜索
当管理员将其添加到允许列表时,对团队/企业用户可见
Anthropic 审查建立用户信任
用户体验:
从目录一键安装
与 Claude Desktop 设置 UI 集成
标准化呈现
支持和信誉:
Anthropic 对质量和安全性的审查
与其他已审查的扩展一起列出
社区可见性和反馈
专业分发渠道
2. 强制性要求
本部分中的所有要求对于目录批准都是强制性的。缺少其中任何一项将导致拒绝或修订请求。
注意:这些是 Anthropic 目录特定的要求。
有关一般 MCPB 开发最佳实践(测试、错误处理、可移植性),请参阅MCPB 存储库 README。
工具注解是否必需?
是的。每个工具都必须具有并维护准确的安全注解。
每个工具上必需的:
readOnlyHint: true - 用于仅读取数据的工具
destructiveHint: true - 用于修改数据或有副作用的工具
有关完整的架构和实现细节,请参阅MCP 协议 - 工具注解。
不可选。这是源自MCP 目录政策的硬性要求。
如何决定使用哪个注解:
工具行为 | 注解 | 示例 |
仅读取数据 | readOnlyHint: true | search、get、list、fetch、read |
写入/修改数据 | destructiveHint: true | create、update、delete、send、write |
创建临时文件 | destructiveHint: true | 即使是临时写入也算 |
发送外部请求 | destructiveHint: true | 电子邮件、通知、webhook |
仅内部缓存 | readOnlyHint: true | 内部优化可以 |
实现细节:有关以下内容,请参阅MCP 协议 - 工具:
带注解的完整工具架构
工具定义结构
输入/输出架构规范
其他工具属性(包括可选的 title 字段)
提交前验证:
# 检查所有工具是否有注解
grep -A 5 -B 5 "readOnlyHint\|destructiveHint" server/
# 验证每个工具恰好有一个注解
影响:这是我们检查的第一件事,也是修订请求最常见的原因。
其他推荐的注解:
title - 用于 UI 显示的人类可读工具名称(改进用户体验)
隐私政策是否必需?
是的,隐私政策在两个位置都是必需的:
位置 1:README.md
在您的 README 中添加"隐私政策"部分,并链接到您的完整隐私政策,以便用户了解您的做法:
## 隐私政策
此扩展收集 [描述数据类型]。有关完整的隐私信息,请参阅我们的隐私政策:https://your-domain.com/privacy-policy
### 数据收集
- [列出收集的数据]
- [如何使用]
- [是否与第三方共享]
- [保留期]
位置 2:manifest.json
添加 privacy_policies 数组,包含可公开访问的 HTTPS URL:
完整实现:有关以下内容,请参阅MCPB 清单规范 - 隐私政策:
隐私政策字段结构
清单版本要求 (0.3+)
多个政策 URL 支持
验证要求
隐私政策必须涵盖:
您的 MCPB 收集的数据
数据如何使用和存储
数据是否与第三方共享
用户数据保留政策
隐私问题的联系信息
要求:
必须是可公开访问的 HTTPS URL
必须来自您的域(不是第三方托管)
必须是当前和准确的
必须在 README 和 manifest.json 中
必须使用清单版本 "0.3" 或更高版本
常见错误:
隐私政策在清单中但不在 README 中
隐私政策在 README 中但不在清单中
使用清单版本 "0.2" 或更旧版本
无效或无法访问的 URL
隐私政策托管在第三方网站上
影响:这是拒绝最常见的原因之一 - 直接修复但经常被忽视。
需要多少个示例?
最少三个演示核心功能的工作示例。
什么是好的示例:
展示现实用例
包括预期的用户输入/提示
显示预期的输出/行为
演示实际工具使用
清晰易懂的工作流
示例格式(在 README.md 中):
## 示例
### 示例 1:搜索文件
**用户提示:** "查找我的项目中的所有 JavaScript 文件"
**预期行为:**
- 扩展搜索工作区目录
- 返回带有路径的 .js 文件列表
- 在摘要中显示文件计数
### 示例 2:读取文件内容
**用户提示:** "显示 config.json 的内容"
**预期行为:**
- 扩展读取 config.json
- 返回格式化的 JSON 内容
- 优雅地处理文件未找到
### 示例 3:创建新文件
**用户提示:** "创建一个名为 notes.txt 的新文件,内容为 'Hello World'"
**预期行为:**
- 扩展创建 notes.txt
- 将内容写入文件
- 确认创建并显示文件路径
要包括的内容:
现实的用户提示(用户如何交互)
预期的工具调用(幕后发生的事情)
预期的输出(用户将看到的内容)
错误处理示例(可选但推荐)
要求:
最少 3 个示例(无上限)
涵盖核心功能
展示不同的工具/功能
演示价值主张
包括在 README.md 中
影响:延迟或拒绝的常见来源 - 审查者需要完整的文档来正确评估提交。
我需要提供测试凭证吗?
如果您的 MCPB 需要身份验证或外部服务访问,那么是的。
需要的情况:
您的 MCPB 连接到外部 API
功能需要身份验证
MCPB 用户必须有帐户才能使用功能
存在外部服务集成
不需要的情况:
纯本地 MCPB(仅文件系统操作)
没有外部连接
不需要身份验证
完全自包含
要提供的内容:
测试帐户凭证(用户名/密码或 API 密钥)
帐户中的示例数据(有助于功能测试)
设置说明(如何配置和使用测试帐户)
访问限制或限制(如果有)
帐户过期日期(如果是临时的)
如何提供:
包括在提交表单中
如果高度敏感,通过安全方法发送
确保帐户在整个审查期间保持活跃
提供足够的访问级别以进行完整测试
最佳实践:创建与生产分开的专用测试帐户,以便:
避免暴露生产数据
控制审查者可以访问的内容
在批准后轻松撤销访问
跟踪测试帐户使用情况
影响:如果需要时缺少,会延迟审查过程
需要什么文档?
README.md 中包含最少必需部分的全面文档。
最少必需的部分:
描述 - 清楚地解释您的 MCPB 的功能
功能 - 关键功能和用例
安装 - 如何安装(通常:从 Anthropic 目录安装)
配置 - 必需的设置和设置步骤
使用示例 - 最少 3 个示例(见上面的部分)
隐私政策 - 链接到完整隐私政策
支持 - 用户如何获得帮助或报告问题
示例 README.md 结构:
# 我的 MCPB 扩展
## 描述
此扩展的功能及其有用原因的简要描述。
## 功能
- 功能 1:[描述]
- 功能 2:[描述]
- 功能 3:[描述]
## 安装
从 Claude Desktop 设置 → 扩展中的 Anthropic 目录安装。
## 配置
1. 打开设置 → 扩展 → [扩展名]
2. 添加 API 密钥(如果需要)
3. 选择工作区目录
4. 配置可选设置
## 示例
[见上面的最少 3 个示例部分]
## 隐私政策
请参阅我们的隐私政策:https://your-domain.com/privacy
## 支持
如有问题或疑问:[email protected]
GitHub 问题:https://github.com/your-username/your-extension/issues
其他推荐的部分:
故障排除 - 常见问题和解决方案
版本兼容性 - 支持的 Claude Desktop 版本
更新日志 - 版本历史和更改
贡献 - 其他人如何贡献(用于开源)
最佳实践:
清晰、简洁的写作
屏幕截图(可选但非常有帮助)
分步说明
链接到其他资源
3. 提交流程
我如何提交到目录?
在提交到目录之前,请完成此分步提交流程:
1. 提交前检查清单:
测试您的 MCPB:
通过所有 4 个测试阶段(开发、清洁环境、跨平台、Claude Desktop)
在没有开发工具的清洁环境中工作
可在 macOS 和 Windows 上移植
依赖项当前且已捆绑
错误消息有帮助且可操作
性能可接受
验证强制性要求:
所有工具都有 readOnlyHint 或 destructiveHint 注解
隐私政策存在于 README.md 中
隐私政策存在于 manifest.json privacy_policies 数组中
使用最新清单版本以获得最佳兼容性
README 中记录了最少 3 个工作示例
提供了测试凭证(如适用)
准备文档:
README.md 完整,包含所有必需部分
包含 LICENSE 文件
包含图标(推荐,512×512px PNG)
CHANGELOG.md(可选但推荐)
2. 打包最终版本:
# 清洁构建
rm -rf node_modules/.cache
npm install --production
# 打包
mcpb pack
# 验证包
mcpb info your-extension.mcpb
3. 通过官方表单提交:
必需信息:服务器详情、文档链接、测试凭证、示例(最少 3 个)和联系信息。表单提供了完整列表。
虽然我们努力尽快审查每份提交,但由于兴趣量很大,我们无法承诺接受您的提交或单独回复。
4. 常见问题
修订请求最常见的原因是什么?
这些是基于提交数据的主要问题:
1. 缺少工具注解
问题:工具缺少必需的 readOnlyHint 或 destructiveHint 注解
修复:在服务器实现中的所有工具中添加注解
影响:立即拒绝,需要代码更改
预防:在提交前运行验证命令
2. 可移植性问题
问题:在开发者环境中工作,但对最终用户失败
常见原因:硬编码路径、缺少依赖项、平台假设
修复:在清洁环境中测试、使
