此项目提供了一个基于FastMCP的Basecamp 3集成方案,允许Cursor通过MCP协议直接与Basecamp进行交互。
✅ 迁移完成: 成功迁移到官方Anthropic FastMCP框架,功能完全一致(所有46个工具) 🚀 生产就绪: 完全符合MCP 2025-06-18协议规范
该服务器支持Cursor和Claude Desktop。选择您偏好的客户端:
克隆并运行设置脚本:
git clone <repository-url>
cd basecamp-mcp
python setup.py
设置脚本会自动:
.env模板文件配置OAuth凭证:
编辑生成的.env文件:
BASECAMP_CLIENT_ID=your_client_id_here
BASECAMP_CLIENT_SECRET=your_client_secret_here
BASECAMP_ACCOUNT_ID=your_account_id_here
USER_AGENT="Your App Name (your@email.com)"
使用Basecamp进行身份验证:
python oauth_app.py
生成Cursor配置:
python generate_cursor_config.py
完全重启Cursor(退出并重新打开,不仅仅是重新加载)
在Cursor中验证:
# 快速测试FastMCP服务器(适用于两个客户端)
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}
{"jsonrpc":"2.0","method":"notifications/initialized","params":{}}
{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' | python basecamp_fastmcp.py
# 运行自动化测试
python -m pytest tests/ -v
基于官方MCP快速入门指南,Claude Desktop集成遵循以下步骤:
完成基本设置(参照Cursor设置中的步骤1-3):
git clone <repository-url>
cd basecamp-mcp
python setup.py
# 使用OAuth凭证配置.env文件
python oauth_app.py
生成Claude Desktop配置:
python generate_claude_desktop_config.py
完全重启Claude Desktop(退出并重新打开应用程序)
在Claude Desktop中验证:
配置文件自动生成于:
~/Library/Application Support/Claude/claude_desktop_config.json~/AppData/Roaming/Claude/claude_desktop_config.json~/.config/claude-desktop/claude_desktop_config.json生成的示例配置:
{
"mcpServers": {
"basecamp": {
"command": "/path/to/your/project/venv/bin/python",
"args": ["/path/to/your/project/basecamp_fastmcp.py"],
"env": {
"PYTHONPATH": "/path/to/your/project",
"VIRTUAL_ENV": "/path/to/your/project/venv",
"BASECAMP_ACCOUNT_ID": "your_account_id"
}
}
}
}
询问Claude一些问题,例如:
检查Claude Desktop日志(参考官方调试指南):
# macOS/Linux - 实时监控日志
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
# 检查特定错误
ls ~/Library/Logs/Claude/mcp-server-basecamp.log
常见问题:
oauth_tokens.json)一旦配置完成,您可以在Cursor中使用这些工具:
get_projects - 获取所有Basecamp项目get_project - 获取特定项目的详细信息get_todolists - 获取项目的待办事项列表get_todos - 获取待办事项列表中的待办事项(返回所有页面;透明处理Basecamp分页)search_basecamp - 跨项目、待办事项和消息搜索get_comments - 获取Basecamp项目的评论create_comment - 在Basecamp项目上创建评论get_campfire_lines - 获取Basecamp Campfire的最近消息get_daily_check_ins - 获取项目的每日检查问题get_question_answers - 获取每日检查问题的答案create_attachment - 上传文件作为附件get_events - 获取录音事件get_webhooks - 列出项目的Webhookscreate_webhook - 创建Webhookdelete_webhook - 删除Webhookget_documents - 列出保险库中的文档get_document - 获取单个文档create_document - 创建文档update_document - 更新文档trash_document - 将文档移至回收站get_card_table - 获取项目的卡片表详细信息get_columns - 获取卡片表中的所有列get_column - 获取特定列的详细信息create_column - 在卡片表中创建新列update_column - 更新列标题move_column - 移动列到新位置update_column_color - 更新列颜色put_column_on_hold - 将列置于暂停状态(冻结工作)remove_column_hold - 移除列的暂停状态(解冻工作)watch_column - 订阅列更改的通知unwatch_column - 取消订阅列的通知get_cards - 获取列中的所有卡片get_card - 获取特定卡片的详细信息create_card - 在列中创建新卡片update_card - 更新卡片move_card - 将卡片移动到新列complete_card - 标记卡片为已完成uncomplete_card - 标记卡片为未完成get_card_steps - 获取卡片的所有步骤(子任务)create_card_step - 为卡片创建新的步骤(子任务)get_card_step - 获取特定卡片步骤的详细信息update_card_step - 更新卡片步骤delete_card_step - 删除卡片步骤complete_card_step - 标记卡片步骤为已完成uncomplete_card_step - 标记卡片步骤为未完成询问Cursor一些问题,例如:
该项目使用官方Anthropic FastMCP框架以获得最大的可靠性和兼容性:
basecamp_fastmcp.py)- 官方MCP SDK,包含46个工具,兼容Cursor和Claude Desktopoauth_app.py)- 处理与Basecamp的OAuth 2.0流程token_storage.py)- 安全存储OAuth令牌basecamp_client.py)- Basecamp API客户端库search_utils.py)- 跨Basecamp资源搜索setup.py)- 单命令安装generate_cursor_config.py - 用于Cursor IDE集成generate_claude_desktop_config.py - 用于Claude Desktop集成python setup.py以创建正确的虚拟环境.env文件,然后重新运行配置生成器问题:服务器无法启动
# 测试FastMCP服务器是否正常工作:
./venv/bin/python -c "import mcp; print('✅ MCP可用')"
# 如果失败,请运行:python setup.py
问题:Python版本错误
python --version # 必须是3.8+
# 如果版本过旧,请安装较新版本的Python并重新运行设置
问题:认证失败
# 检查OAuth流程:
python oauth_app.py
# 访问http://localhost:8000并完成登录
Cursor配置位置:~/.cursor/mcp.json(macOS/Linux)或%APPDATA%\Cursor\mcp.json(Windows)
Claude Desktop配置位置:~/Library/Application Support/Claude/claude_desktop_config.json(macOS)
{
"mcpServers": {
"basecamp": {
"command": "/full/path/to/your/project/venv/bin/python",
"args": ["/full/path/to/your/project/basecamp_fastmcp.py"],
"cwd": "/full/path/to/your/project",
"env": {
"PYTHONPATH": "/full/path/to/your/project",
"VIRTUAL_ENV": "/full/path/to/your/project/venv",
"BASECAMP_ACCOUNT_ID": "your_account_id"
}
}
}
}
如果您不知道自己的Basecamp账户ID:
https://3.basecamp.com/4389629/projects.env文件,不要将其提交到版本控制系统oauth_tokens.json中本项目根据MIT许可证发布。