The Basecamp MCP Server enables LLMs to interact with Basecamp projects, messages, todos, kanban boards, comments, people, and activity through a comprehensive set of tools.
Projects: List all accessible projects with name/description filtering and retrieve detailed project information including dock configuration.
Messages: List messages with content filtering, get single message details, list message types/categories, create new messages with category and draft status options, and update messages with advanced content editing (full replacement, append, prepend, search/replace) and subject changes.
Todos: Get todo set containers with all lists, list todos with status filtering (active/archived), create new todos with descriptions and assignees, mark todos as complete/incomplete, and update todos with advanced content editing and assignee management.
Kanban Boards: List columns and cards (with steps and assignees), get complete card details, create new cards with title, content, checklist steps, due dates, and assignees, update cards with comprehensive editing including step and assignee management, and move cards between columns/positions.
Comments: List comments on any Basecamp resource (universal support), create comments with HTML formatting and mentions, and update comments with advanced content editing.
People: Get authenticated user profile, list all people with filtering by name, email, or title, and retrieve individual person details.
Activity: Browse recent activity globally or across specific projects with filtering by type, date range, person, and text search (supports multiple values for OR-matching).
Key Features: HTML content support with allowed tags (div, span, h1, br, strong, em, strike, a, pre, ol, ul, li, blockquote, bc-attachment), @mentions using bc-attachment tags, content highlighting with colored backgrounds, partial content operations to optimize token usage, and comprehensive assignee and due date management.
Enables comprehensive project management through Basecamp's API, including managing projects, messages, todos, comments, people, and kanban boards with support for creating, reading, updating content and handling pagination.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Basecamp MCP Serverlist active todos in the 'Website Redesign' project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Basecamp MCP Server
Model Context Protocol (MCP) server for Basecamp integration. Enables LLMs to interact with Basecamp projects, messages, todos, comments, people, and kanban boards.
Getting Started
The Basecamp MCP server requires Node.js 18+ and works with various MCP clients including Claude Code CLI, Claude Desktop, Cursor, VS Code, and others.
Prerequisites
You need a Basecamp OAuth app. Register one at 37signals Launchpad with the redirect URI set to http://localhost:7652/callback.
Installation
Add the MCP server to your client with your OAuth credentials:
{
"mcpServers": {
"basecamp": {
"command": "npx",
"args": ["-y", "basecamp-mcp@latest"],
"env": {
"BASECAMP_CLIENT_ID": "your_client_id",
"BASECAMP_CLIENT_SECRET": "your_client_secret"
}
}
}
}Claude Code CLI:
claude mcp add basecamp npx basecamp-mcp@latest \
-e BASECAMP_CLIENT_ID=your_client_id \
-e BASECAMP_CLIENT_SECRET=your_client_secretClaude Desktop: Follow the MCP install guide using the JSON config above.
Cursor: Add configuration through Settings → Tools & Integrations → New MCP Server.
VS Code:
code --add-mcp '{"name":"basecamp","command":"npx","args":["-y", "basecamp-mcp@latest"]}'Authentication
Once the MCP server is running, authenticate using the built-in login tool:
Call
basecamp_login— a browser window will open for Basecamp authorizationAuthorize the app in your browser
If you have multiple Basecamp accounts, call
basecamp_loginagain with the desiredaccount_idDone! Credentials are saved to
~/.config/basecamp-mcp/credentials.json
Use basecamp_whoami to check who you're logged in as, and basecamp_logout to remove stored credentials.
Configuration
The server requires these environment variables:
BASECAMP_CLIENT_ID— Your Basecamp OAuth client IDBASECAMP_CLIENT_SECRET— Your Basecamp OAuth client secret
Available Tools
Authentication
basecamp_login- Authenticate with Basecamp via OAuth browser flowbasecamp_logout- Remove stored credentialsbasecamp_whoami- Show the currently authenticated user
Projects
basecamp_list_projects- List all accessible projects with optional filteringbasecamp_get_project- Get detailed project information including dock configuration
Messages
basecamp_list_messages- List messages in a message board with optional filteringbasecamp_list_message_types- List available message types/categories for a projectbasecamp_get_message- Get single message detailsbasecamp_create_message- Create new message with optional category and draft statusbasecamp_update_message- Update message with advanced content editing (supports full replacement, append, prepend, search/replace)
TODOs
basecamp_get_todoset- Get todo set container with all todo listsbasecamp_list_todos- List todos in a list with status filtering (active/archived)basecamp_create_todo- Create new todo with optional descriptionbasecamp_complete_todo- Mark todo as completebasecamp_uncomplete_todo- Mark todo as incomplete
Comments
basecamp_list_comments- List comments on any resource (works universally on all recording types)basecamp_create_comment- Add comment to any resourcebasecamp_update_comment- Update comment with advanced content editing (supports full replacement, append, prepend, search/replace)
People
basecamp_get_me- Get personal information for the authenticated userbasecamp_list_people- List all people with optional filtering by name, email, or titlebasecamp_get_person- Get person details
Kanban
basecamp_list_kanban_columns- List all columns in a kanban boardbasecamp_list_kanban_cards- List cards in a column with steps and assigneesbasecamp_get_kanban_card- Get complete details of a specific cardbasecamp_create_kanban_card- Create new card with title, content, and optional checklist stepsbasecamp_update_kanban_card- Update card with advanced content editing (supports full replacement, append, prepend, search/replace, plus title, due date, assignees, notifications, and complete step array management)basecamp_move_kanban_card- Move a card to a different column and/or position
Activity
basecamp_list_recordings- Browse recent activity globally or across specific projects, with filtering by type, date range, person, and text search. All filters support multiple values for OR-matching (e.g., multiple project IDs, person IDs, types, or search terms)basecamp_list_campfire_messages- Browse chat messages from Campfires with filtering by campfire, person, text content, and date range. All filters support multiple values for OR-matching
Development
# Install dependencies
npm install
# Run type checking
npx tsc --noEmit
# Build
npm run build
# Clean build artifacts
npm run cleanLicense
MIT
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.