一个专业的模型上下文协议(MCP)服务器,提供对Basecamp 4 API的完全编程访问。适用于AI代理、工作流自动化和自定义集成。
最全面且最兼容的Basecamp MCP服务器!
🔥 从v6.0升级? 查看UPGRADE-TO-V75.md迁移指南。
✅ 8个项目管理工具 - 完整的项目生命周期管理
✅ 11个待办事项管理工具 - 高级任务自动化与自动查找
✅ 6个通信工具 - 消息和讨论
✅ 6个文档及文件工具 - 内容管理和文件处理
✅ 4个团队管理工具 - 访问控制和权限
✅ 3个Campfire聊天工具 - 实时通讯
✅ 3个日程管理工具 - 日历和事件
✅ 4个卡片表工具 - Kanban工作流程
✅ 5个评论系统工具 - 全面协作
✅ 4个Webhooks工具 - 实时通知
✅ 2个搜索与分析工具 - 数据洞察
🆕 3个增强功能 - 自动查找、URL解析、OAuth流程
增强功能:
access_token(最高优先级)Authorization: Bearer TOKEN头部BASECAMP_ACCESS_TOKEN(备用)# 克隆仓库
git clone https://github.com/QusaiiSaleem/basecamp-mcp-server.git
cd basecamp-mcp-server
# 安装依赖
npm install
# 配置环境
cp wrangler.toml.example wrangler.toml
# 编辑wrangler.toml以包含您的账户ID
# 部署到Cloudflare Workers
npm run deploy
创建集成:访问Basecamp集成
配置设置:
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
访问https://your-worker.workers.dev/setup并按照OAuth流程获取您的访问令牌。
新增于v7.5:直接与Claude.ai网页界面集成!
Basecamp MCPhttps://your-worker.workers.devBearer YOUR_ACCESS_TOKEN对于详细的逐步说明,包括截图和故障排除,请参阅:
在Claude.ai中,尝试这些命令:
"列出我所有的Basecamp项目"
"显示我的当前待办事项分配"
"在项目X中创建新消息"
| 客户端 | v6.0 | v7.5 |
|---|---|---|
| Claude.ai | ⚠️ 有限 | ✅ 完全 |
| Claude桌面版 | ✅ 工作 | ✅ 工作 |
| Smithery Playground | ⚠️ 有限 | ✅ 完全 |
| RelevanceAI | ✅ 工作 | ✅ 工作 |
| n8n | ✅ 工作 | ✅ 工作 |
| Make.com | ✅ 工作 | ✅ 工作 |
https://your-worker.workers.devBearer your_access_token_here添加到您的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"
}
}
}
// 增强自动查找 - 不再需要资源ID搜索!
{
"tool": "get_todo_lists",
"arguments": {
"project_id": "123456" // 就是这样!自动查找todoset ID
}
}
// 创建待办事项,具有完整的分配控制
{
"tool": "create_todo",
"arguments": {
"project_id": "123456",
"todolist_id": "789012",
"content": "完成项目设置",
"due_on": "2024-12-31",
"assignee_ids": [1001, 1002]
}
}
// 全面评论系统
{
"tool": "add_comment_to_recording",
"arguments": {
"project_id": "123456",
"recording_id": "789012", // 适用于任何内容类型
"content": "这个项目进展很好!"
}
}
// 智能URL解析
{
"tool": "parse_basecamp_url",
"arguments": {
"url": "https://3.basecamp.com/999999/buckets/123456/todolists/789012"
}
}
| 工具 | 描述 | 关键参数 |
|---|---|---|
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 |
| 工具 | 描述 | 关键参数 |
|---|---|---|
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 |
| 工具 | 描述 | 关键参数 |
|---|---|---|
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 |
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_documents 🚀 | 列出文档(自动查找) | project_id |
create_document 🚀 | 创建文档(自动查找) | project_id, title, content |
update_document | 编辑文档 | project_id, document_id, content |
get_document | 获取特定文档 | project_id, document_id |
upload_attachment | 上传文件 | file_data, filename, content_type |
get_uploads | 列出项目上传 | project_id |
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_people | 获取项目团队 | project_id |
get_all_people | 获取所有账户人员 | - |
add_person_to_project | 授予项目访问权限 | project_id, person_ids[] |
remove_person_from_project | 撤销项目访问权限 | project_id, person_ids[] |
| 工具 | 描述 | 关键参数 |
|---|---|---|
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 |
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_campfire | 获取项目聊天 | project_id |
get_campfire_lines | 获取聊天消息 | project_id, campfire_id |
post_campfire_message | 发送聊天消息 | project_id, campfire_id, content |
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_schedule 🚀 | 获取日程(自动查找) | project_id |
get_schedule_entries | 获取日程事件 | project_id |
create_schedule_entry | 创建新事件 | project_id, summary, starts_at |
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_card_table | 获取Kanban板 | project_id |
get_cards | 获取表中的卡片 | project_id, card_table_id |
create_card | 创建新卡片 | project_id, card_table_id, title |
update_card | 更新现有卡片 | project_id, card_id, title |
| 工具 | 描述 | 关键参数 |
|---|---|---|
get_webhooks | 列出所有Webhooks | - |
create_webhook | 创建Webhook | payload_url, types[] |
update_webhook | 更新Webhook | webhook_id, payload_url |
delete_webhook | 删除Webhook | webhook_id |
| 工具 | 描述 | 关键参数 |
|---|---|---|
search | 搜索内容 | query, project_id(可选) |
get_events | 获取活动/事件 | project_id(可选) |
服务器自动找到所需的资源ID,消除404错误:
// 之前:复杂的资源ID搜索
{
"tool": "get_todo_lists",
"arguments": {
"project_id": "123456",
"todoset_id": "789012" // ← 手动查找困难
}
}
// 现在:简单的自动查找
{
"tool": "get_todo_lists",
"arguments": {
"project_id": "123456" // ← 自动查找todoset ID
}
}
解析任何Basecamp URL以提取项目和资源信息:
// 输入:https://3.basecamp.com/999999/buckets/123456/todolists/789012
// 输出:
{
"account_id": "999999",
"project_id": "123456",
"resource_type": "todolists",
"resource