Skip to main content

Basecamp MCP server for Claude — read and search Basecamp with your own API access

Project description

basecamp-mcp

An MCP (Model Context Protocol) server that gives Claude read access to your Basecamp account. Works with Claude Desktop, Claude Code, and any MCP-compatible client.

V1 is read-only — search, browse, and read your Basecamp projects, messages, todos, documents, and files. No write operations.

Setup

1. Register a Basecamp OAuth App (once per team)

Someone on your team registers an OAuth app with Basecamp. Everyone else can reuse the same Client ID and Secret — each person authorizes their own account separately.

  1. Go to launchpad.37signals.com/integrations and log in with your Basecamp account
  2. Click "Register another application"
  3. Fill in the form:
    • Name: Basecamp MCP (or whatever you like)
    • Company: Your company name
    • Website URL: https://github.com/jacobfiler/basecamp-mcp
    • Redirect URI: http://localhost:8000/callbackmust be exact
  4. Click "Register this app"
  5. You'll see your Client ID and Client Secret — share these with your team

2. Install

pip install basecamp-mcp

Windows:

py -m pip install basecamp-mcp

3. Authorize

basecamp-mcp auth

Windows (if basecamp-mcp isn't on PATH):

py -m basecamp_mcp.server auth

This will:

  1. Ask for the Client ID and Client Secret from step 1
  2. Open your browser to authorize with Basecamp — click "Yes, I'll allow access"
  3. Save your tokens locally (~/.config/basecamp-mcp/ on Mac/Linux, %APPDATA%\basecamp-mcp\ on Windows)
  4. Automatically configure Claude Desktop (if installed)

That's it! Restart Claude Desktop and your Basecamp tools are ready.

Manual Claude Desktop Setup (if auto-config didn't work)

Open Claude Desktop's config file:

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add the basecamp server (merge with any existing mcpServers):

{
  "mcpServers": {
    "basecamp": {
      "command": "basecamp-mcp",
      "args": []
    }
  }
}

4. Use It

Ask Claude things like:

  • "List my Basecamp projects"
  • "Find the style guide in our Basecamp"
  • "Show me the messages in the Marketing project"
  • "Search all projects for the onboarding checklist"
  • "What todos are assigned in the Q2 Planning project?"
  • "Read the latest message in HQ"
  • "Browse the docs and files in the Marketing project"

Available Tools

Tool Description
list_projects List all projects you can access
get_project Get project details by ID or name (fuzzy match)
search_project Search a project's messages, docs, files, and todos by keyword
search_all_projects Search across ALL projects by keyword
browse_vault Browse a project's Docs & Files (folders, documents, uploads)
list_messages List messages on a project's message board
read_message Read a message + all its comments
list_todolists List todolists in a project
list_todos List todos in a todolist (pending or completed)
read_todo Read a todo + its comments
list_people List all people in the account
list_documents List docs in a vault folder
read_document Read a document's content

Optional: Document Search

If you have a document ingestion service that indexes .docx files from Basecamp, you can connect it for full-text search:

basecamp-mcp connect-docs

This adds two additional tools: search_document_content and document_stats.

How It Works

Config file  (your credentials, never shared)
     |
basecamp-mcp (MCP stdio server, runs locally)
     |
Basecamp API (https://3.basecampapi.com)
  • Each user runs their own instance with their own OAuth tokens
  • The Client ID/Secret identify the app, not the user — safe to share across a team
  • No shared server — credentials never leave your machine
  • Tokens auto-refresh when they expire (access tokens last 2 weeks, refresh tokens last 10 years)
  • Config stored at ~/.config/basecamp-mcp/ (Mac/Linux) or %APPDATA%\basecamp-mcp\ (Windows)

Development

git clone https://github.com/jacobfiler/basecamp-mcp.git
cd basecamp-mcp
pip install -e .

# Run auth flow
basecamp-mcp auth

# Run server directly
basecamp-mcp

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

basecamp_mcp-0.2.2.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

basecamp_mcp-0.2.2-py3-none-any.whl (17.5 kB view details)

Uploaded Python 3

File details

Details for the file basecamp_mcp-0.2.2.tar.gz.

File metadata

  • Download URL: basecamp_mcp-0.2.2.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for basecamp_mcp-0.2.2.tar.gz
Algorithm Hash digest
SHA256 ce80d001655af5e97e72e0ee997c8c6097804730c7d2b63bb81acb0ad3ede7ce
MD5 38049e09cbe32685257b04f4ce1eb4cf
BLAKE2b-256 2396990db43f30f3699f41f6cf97f64e1a3c7c0973fb46b468ce30f14e83fece

See more details on using hashes here.

File details

Details for the file basecamp_mcp-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: basecamp_mcp-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 17.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for basecamp_mcp-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 aeace7e27295d6759c5e4bfdd36752a49b547584f94c46dc7bfb9ff4c8c4b601
MD5 a360c9e652c76d62c77afff65ed45702
BLAKE2b-256 c2ff54a2addebe6520ec9c31444ec3759f7225e6df56aee05731f437f01c2af3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page