使用说明
🏕️ MCP 服务器基地营
一个专业人士 模型上下文协议(MCP) 提供全面编程访问的服务器 Basecamp 4 API非常适合用于人工智能代理、工作流自动化和自定义集成。
🚀 v7.5.0 新增功能:兼容 Claude.ai!
最全面且最兼容的Basecamp MCP服务器!
v7.5的新功能:
- ✅(对勾符号,通常表示正确、同意或确认) 与Claude.ai完全兼容 - 在Claude网页界面中运行完美
- ✅ 最新的MCP协议 - 支持2025年6月18日的规范
- ✅ 会话管理 - 为现代客户端提供适当的连接跟踪
- ✅ 自动发现 - MCP配置端点用于自动设置
- ✅ 表示“正确”或“对”。 简化认证 - 不使用KV存储,仅使用OAuth + 环境变量
- ✅ 表示“正确”或“确认”。 55+种专业工具 完成Basecamp API的全面覆盖
🔥 从v6.0升级? 见 升级至V75.md 用于迁移指南。
✅(勾选标记,表示正确、确认或完成) 8 项目管理 工具 - 完整的项目生命周期管理
✅ 11项全能管理 工具 - 带有自动查找功能的高级任务自动化
✅ 6. 沟通 工具 - 消息和讨论
✅ 翻译成中文是:勾选/确认/正确/成功 6. 文档与文件 工具 - 内容管理和文件处理
✅ 4. 团队管理 工具 - 访问控制和权限管理
✅ 3 野火旁的闲聊 工具 - 实时通信
✅ 3. 进度管理 工具 - 日历和事件
✅ 表示“正确”或“确认”。 四张牌桌 工具 - 看板工作流程
✅ 5条评论系统 工具 - 全方位协作
✅ 4. Webhooks(网络钩子) 工具 - 实时通知
✅ 2 搜索与分析 工具 - 数据洞察
🆕 新的 3 增强功能 - 自动查找,URL解析,OAuth流程
增强功能:
- 自动查找功能 - 不再出现404错误!自动查找资源ID
- OAuth 2.0 集成 - 完整的身份验证流程,包括设置用户界面
- 多种认证方法 - 持有者令牌(Bearer Token)、参数、环境变量
- 可投入生产的部署 - Cloudflare Workers 已优化
✨ 特点/功能
🛠️ 完整工具覆盖(59种工具)
- 项目管理 (8种工具):完整的增删改查(CRUD)操作、存档、构建
- 全面管理 (11种工具):列表、项目、任务分配、完成状态、定位
- 沟通 (6种工具):消息、回复、讨论、存档
- 文档与文件 (6种工具):创建、编辑、上传、管理附件
- 团队管理 (4个工具):添加/移除人员、权限、访问控制
- 评论与合作 (5种工具):适用于所有内容的通用评论系统
- 篝火聊天 (3种工具):实时聊天信息和历史记录
- 进度管理 (3种工具):事件、里程碑、日历条目
- 折叠桌(或卡式桌) (4种工具):看板板、卡片、列、定位
- Webhooks(网络钩子) (4种工具):实时通知和事件订阅
- 搜索与分析 (2种工具):内容搜索和活动追踪
🔐 认证与安全
- OAuth 2.0 带有设置界面的完整身份验证流程
- 支持多重身份验证 带有令牌优先级:
access_token在争论中(最高优先级)Authorization: Bearer TOKEN头球BASECAMP_ACCESS_TOKEN环境变量(回退)
- 个人用户令牌 同时共享基础设施
- 安全处理令牌 经过适当的验证
- 简化部署 - 无需KV存储(v7.5+)
🚀 准备就绪,可投入生产
- 边缘部署 在Cloudflare Workers上
- 全球内容分发网络(Global CDN) 全球响应时间低于100毫秒
- 自动扩展 处理任何流量量
- 速率限制 遵守Basecamp API限制
- 全面的错误处理 带有有意义的信息
- 自动查找功能 防止404错误
🚀 快速入门
1. 部署到Cloudflare Workers
# Clone the repository
git clone https://github.com/QusaiiSaleem/basecamp-mcp-server.git
cd basecamp-mcp-server
# Install dependencies
npm install
# Configure your environment
cp wrangler.toml.example wrangler.toml
# Edit wrangler.toml with your account ID
# Deploy to Cloudflare Workers
npm run deploy
2. 设置Basecamp OAuth集成
-
创建集成访问 Basecamp 集成
-
配置设置:
- 应用程序名称“您的Basecamp MCP服务器”
- 重定向URI:
https://your-worker.workers.dev/auth/callback - 客户类型网络应用程序
-
设置环境变量:
echo "your_client_id" | wrangler secret put BASECAMP_CLIENT_ID
echo "your_client_secret" | wrangler secret put BASECAMP_CLIENT_SECRET
echo "your_account_id" | wrangler secret put BASECAMP_ACCOUNT_ID
3. 获取您的访问令牌
访问 https://your-worker.workers.dev/setup 并遵循OAuth流程获取您的访问令牌。
🌐 Claude.ai 集成
v7.5新增功能与Claude.ai网页界面直接集成!
快速设置
- 访问 Claude.ai首选 claude.ai(通常直接音译为“克劳德AI”,意为“克劳德人工智能平台”或“克劳德人工智能服务”)
- 打开设置点击设置 → 连接器
- 添加远程MCP服务器:
- 名字:
Basecamp MCP - URL(统一资源定位符):
https://your-worker.workers.dev - 认证:
Bearer YOUR_ACCESS_TOKEN
- 名字:
- 启用切换功能打开连接器 ✅
- 验证工具所有55个工具都应在您的对话中出现
完整安装指南
如需查看包含截图和故障排除的详细分步指南,请参阅:
测试您的连接
在 Claude.ai 中,尝试以下命令:
"List all my Basecamp projects"
"Show me my current todo assignments"
"Create a new message in Project X"
兼容性矩阵
| 客户端 | v6.0 | v7.5 |
|---|---|---|
| Claude.ai | ⚠️ 有限 | ✅ 完全 |
| Claude Desktop | ✅ 可用 | ✅ 可用 |
| Smithery 游乐园 | ⚠️ 有限 | ✅ 满员 |
| RelevanceAI | ✅ 可用 | ✅ 可用 |
| n8n | ✅ 可用 | ✅ 可用 |
| Make.com | ✅ 可用 | ✅ 可用 |
🔧 使用示例
使用RelevanceAI
- 代理设置 → MCP 服务器 → 添加远程MCP工具
- 服务器URL:
https://your-worker.workers.dev - 认证:
Bearer your_access_token_here
使用 Claude Desktop
添加到您的MCP配置中(~/.claude/mcp_servers.json):
{
"basecamp": {
"command": "node",
"args": ["path/to/mcp-server"],
"env": {
"BASECAMP_ACCESS_TOKEN": "your_token_here",
"BASECAMP_ACCOUNT_ID": "your_account_id"
}
}
}
直接使用API
// Enhanced auto-lookup - no more resource ID hunting!
{
"tool": "get_todo_lists",
"arguments": {
"project_id": "123456" // That's it! Auto-finds todoset ID
}
}
// Create todos with full assignment control
{
"tool": "create_todo",
"arguments": {
"project_id": "123456",
"todolist_id": "789012",
"content": "Complete project setup",
"due_on": "2024-12-31",
"assignee_ids": [1001, 1002]
}
}
// Universal commenting system
{
"tool": "add_comment_to_recording",
"arguments": {
"project_id": "123456",
"recording_id": "789012", // Works with any content type
"content": "Great progress on this item!"
}
}
// Smart URL parsing
{
"tool": "parse_basecamp_url",
"arguments": {
"url": "https://3.basecamp.com/999999/buckets/123456/todolists/789012"
}
}
📚 完整工具参考手册
📋 项目管理(8种工具)
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_projects |
列出所有可访问的项目 | - |
create_project |
创建新项目 | name, description |
get_project |
获取项目详情 | project_id |
update_project |
更新项目信息 | project_id, name, description |
archive_project |
归档项目 | project_id |
unarchive_project |
恢复项目 | project_id |
get_project_construction |
获取项目工具/功能 | project_id |
parse_basecamp_url 解析任何Basecamp URL url |
✅ 任务管理(11种工具)
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_todo_lists 🚀 |
获取待办事项列表(自动查找) | project_id |
create_todo_list 🚀 |
创建待办事项列表(自动查找) | project_id, name |
get_todos |
从列表中获取所有待办事项 | project_id, todolist_id |
get_all_project_todos 🆕 |
获取所有项目待办事项 | project_id |
create_todo |
创建新待办事项 | project_id, todolist_id, content |
update_todo |
更新待办事项详情 | project_id, todo_id, content |
complete_todo |
将待办事项标记为完成 | project_id, todo_id |
uncomplete_todo |
将待办事项标记为未完成 | project_id, todo_id |
get_my_assignments |
获取当前用户分配 | - |
get_user_assignments |
获取用户的任务 | user_id |
reposition_todo |
更改待办事项位置 | project_id, todo_id, position |
💬 沟通(6种工具)
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_message_board 🚀 |
获取留言板(自动查找) | project_id |
get_messages 🚀 |
获取消息(自动查找) | project_id |
create_message 🚀 |
创建消息(自动查找) | project_id, subject, content |
update_message |
编辑消息 | project_id, message_id, content |
get_message |
获取特定消息 | project_id, message_id |
archive_message |
存档信息 | project_id, message_id |
📄 文档与文件(6种工具)
| 工具 | 描述 | 关键参数 |
|---|---|---|
| (分隔符) | (分隔符) | (分隔符) |
create_document |
project_id🚀 |
创建文档(自动查找) |
update_document |
project_id |
编辑文档 |
get_document |
project_id |
获取特定文档 |
upload_attachment |
file_data |
上传文件 |
get_uploads |
project_id |
列出项目上传内容 |
|
👥 团队与人员(4种工具)
| 工具 | 描述 | 关键参数 |
|------|-------------|----------------| get_people | 分隔符 | 标题1 | 标题2 | project_id |
| 获取项目团队 | get_all_people |
| add_person_to_project | 获取所有账户人员 | - | project_id| person_ids[] | 授予项目访问权限 |
, remove_person_from_project | project_id| person_ids[] | 撤销项目访问权限 |
,
|
💭 评论与协作(5种工具)
| 工具 | 描述 | 关键参数 | add_comment_to_recording |------|-------------|----------------| project_id| 分隔符 | 标题 | 内容 | recording_id| content 通用评论工具
, add_comment_to_todo , project_id| todo_id| content | 待办事项评论 |
, add_comment_to_message , project_id| message_id| content | 回复消息 |
, add_comment_to_document , project_id| document_id| content | 对文件的评论 |
, add_comment_to_card , project_id| card_id| content | 卡片上的评论 |
,
,
|
💬 篝火聊天(3种工具) get_campfire | 工具 | 描述 | 关键参数 | project_id |------|-------------|----------------|
| get_campfire_lines | 获取项目聊天信息 | project_id| campfire_id |
| 获取聊天消息 | post_campfire_message , project_id| campfire_id| content | 发送聊天消息 |
,
,
|
📅 时间管理(3种工具) get_schedule | 工具 | 描述 | 关键参数 | project_id |------|-------------|----------------|
| get_schedule_entries 🚀 | 获取时间表(自动查找) | project_id |
| create_schedule_entry | 获取日程事件 | project_id| summary| starts_at | 创建新事件 |
,
,
|
🎫 卡牌桌(4件工具) get_card_table | 工具 | 描述 | 关键参数 | project_id |------|-------------|----------------|
| get_cards | 获取看板 | project_id| card_table_id |
| 从桌子上拿牌 | create_card , project_id| card_table_id| title | 创建新卡片 |
, update_card , project_id| card_id| title | 更新现有卡片 |
,
,
|
🔗 Webhooks(4种工具) get_webhooks | 工具 | 描述 | 关键参数 |
|------|-------------|----------------| create_webhook | payload_url| 列出所有Webhooks | - | types[] |
| 创建Webhook | update_webhook , webhook_id| payload_url |
| 更新Webhook | delete_webhook , webhook_id |
|
| 删除Webhook |
|
🔍 搜索与分析(2款工具) search | 工具 | 描述 | 关键参数 | query|------|-------------|----------------| project_id |
| 搜索内容 | get_events , project_id (可选)|
|
| 获取活动/事件 |
(可选)|
// Before: Complex resource ID hunting
{
"tool": "get_todo_lists",
"arguments": {
"project_id": "123456",
"todoset_id": "789012" // ← Hard to find manually
}
}
// After: Simple auto-lookup
{
"tool": "get_todo_lists",
"arguments": {
"project_id": "123456" // ← Auto-finds todoset ID
}
}
🔍 智能功能
🧠 自动查找智能
// Input: https://3.basecamp.com/999999/buckets/123456/todolists/789012
// Output:
{
"account_id": "999999",
"project_id": "123456",
"resource_type": "todolists",
"resource_id": "789012",
"suggested_tools": ["get_todos", "create_todo"]
}
服务器自动查找所需的资源ID,从而避免404错误:
📈 URL智能分析
- 解析任何Basecamp URL以提取项目和资源信息:🔄 支持多重认证
access_token具有优先级顺序的灵活认证: - 论点;争论点:
Authorization: Bearer TOKEN - **参数(最高优先级)**标题/头部信息
BASECAMP_ACCESS_TOKEN:
环境
:
(备用选项)
⚙️ 配置
环境变量 BASECAMP_ACCOUNT_ID | 变量 | 描述 | 必需 |
|----------|-------------|----------| BASECAMP_CLIENT_ID |
| 您的Basecamp帐户ID | ✅ | BASECAMP_CLIENT_SECRET |
| OAuth 客户端 ID | ✅(用于 OAuth)| BASECAMP_ACCESS_TOKEN |
| OAuth 客户端密钥 | ✅(用于 OAuth) |
name = "my-basecamp-mcp-server"
main = "index.ts"
compatibility_date = "2024-08-05"
[vars]
BASECAMP_ACCOUNT_ID = "999999999"
# Note: v7.5 no longer requires KV namespace binding
# All authentication is handled via environment variables
|
| 回退访问令牌 | ⚠️(可选) |
- `wrangler.toml` 示例🔒 安全最佳实践
- 认证安全单个代币
- 每个用户都维护自己的OAuth令牌安全头部(Secure Headers)
- 所有请求均使用正确的授权头令牌验证
自动令牌验证和错误处理
- 环境隔离生产秘密与代码分离
- API安全速率限制
- 自动遵守Basecamp API限制请求验证
- 输入净化和类型检查错误处理
确保错误信息安全,防止数据泄露
CORS 配置
- 正确的跨域资源共享🚀 部署选项
- **Cloudflare Workers(推荐)**全球边缘网络
- 全球响应时间低于100毫秒自动扩展
- 处理无限流量内置安全功能
DDoS防护,WAF(Web应用防火墙),SSL(安全套接层协议)
- 性价比高按需付费,无闲置成本
- 替代平台Vercel 函数
- 无服务器部署AWS Lambda
- 企业级基础设施Google Cloud Functions(谷歌云函数)
谷歌生态系统整合
- Azure Functions微软生态系统集成
- 自托管选项Node.js 服务器
- 传统服务器部署Docker 容器
集装箱化部署
Kubernetes(中文常译为“科尼皮图斯”或直接音译为“库伯内特斯”,但更常用的是其英文原名,因其是一个专有名词,且在中文技术社区中已被广泛接受和使用)
容器编排
# Clone the repository
git clone https://github.com/QusaiiSaleem/basecamp-mcp-server.git
cd basecamp-mcp-server
# Install dependencies
npm install
# Set up environment
cp wrangler.toml.example wrangler.toml
# Start development server
npm run dev
🤝 贡献
- **我们欢迎投稿!以下是投稿指南:**开发环境设置
getAllBasecampTools() - 添加新工具定义工具模式(或工具架构)
callBasecampTool()添加工具定义到 - 实现处理程序添加案例至
- switch 语句测试实施
- 与Basecamp API端点进行验证更新文档
在README中添加工具参考
提交拉取请求
- 包含测试和示例📊 性能与监控
- 性能指标响应时间
- 全球平均<100毫秒可用性
- **99.9%的正常运行时间服务级别协议(SLA)**吞吐量
每秒处理10,000+请求的能力
- 错误率错误率<0.1%
- 监控功能Cloudflare 分析(或“Cloudflare 数据分析”)
- 请求指标和性能自定义日志记录
- 详细的操作跟踪错误报告
自动错误通知
健康检查
持续可用性监控
Error: Authentication required
❓ 故障排除常见问题 /setup 认证错误
解决方案
Error: BASECAMP_ACCESS_TOKEN not configured
确保您的访问令牌有效。请访问用于OAuth流程。
配置缺失
Error: Todo lists are not enabled for this project
解决方案设置OAuth凭据或在请求头中提供令牌。
自动查找失败
- 解决方案在您的Basecamp项目设置中启用待办事项列表。
- 寻求帮助GitHub Issues(在GitHub上的问题/议题)
- 报告错误并提出功能请求讨论
社区支持与问题
文档 全面指南和示例 📄 许可证
这个项目采用MIT许可证授权——详见
- 许可证详情见文件。
- 🏆 致谢Basecamp团队
- 为提供卓越的APIMCP社区
- 对于模型上下文协议标准Cloudflare(科拉弗莱/克洛德弗莱,通常直接音译为“云弗莱”或保留原英文名)
对于边缘计算平台
- 贡献者 感谢所有贡献者! 📋 版本历史
- v7.5.0(版本号) (2025年9月30日):Claude.ai 兼容性更新 + 协议更新 -
- CHANGELOG.md 翻译为中文是:“版本更新日志文件”或“变更日志文件”。这个文件通常用于记录软件或项目的版本更新历史,包括新增功能、修复的错误、已知问题等信息 版本6.0.0
(2024-12-15): 完成59种工具的实施
- v5.0.0(版本5.0.0)(2024-10-01):首次公开发布 🔗 链接
- 🏠 首页: GitHub 仓库
- 📖 文档: 完整API参考
- 🚀 升级指南: 升级到V75.md
- 📝 更新日志: CHANGELOG.md 翻译成中文是:“变更日志文件(Markdown 格式)”
- Claude.ai 设置: CLAUDE-AI-SETUP.md 翻译为中文是:“CLAUDE-AI-设置指南.md” 或 “CLAUDE-AI-安装配置文件.md”(具体翻译可能根据上下文有所调整,但“SETUP”在此处通常可理解为“设置”或“安装配置”的意思)
- 🐞 问题: 错误报告
- 💬 讨论: 社区论坛
- 🏕️ Basecamp API(注:Basecamp通常指的是一种项目管理或团队协作工具,这里的“Basecamp API”指的是该工具的程序接口): 官方文档
🤖 MCP 协议
: 规格;规范