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.1.tar.gz (15.0 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.1-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: basecamp_mcp-0.2.1.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.5 cpython/3.14.2 HTTPX/0.28.1

File hashes

Hashes for basecamp_mcp-0.2.1.tar.gz
Algorithm Hash digest
SHA256 0fec5240c91cd8cc1d538183d4e13c6724ad9b8ed97d8f730e6f12fc30d4e631
MD5 60ae5c836ecf398cd67ba935df79b177
BLAKE2b-256 911fdd03db46d91932b04f5055c9b7549d5d4f1fdb479f1512c65c9fa678d2f2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: basecamp_mcp-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 17.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.5 cpython/3.14.2 HTTPX/0.28.1

File hashes

Hashes for basecamp_mcp-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b6ad5c877f22bfd5f2d00825a7e2d875c93e6a365ef1c47e41fd0d77ae4f2a6e
MD5 461e6bdc2cc36a2f8b5e58467e55a55a
BLAKE2b-256 d3033753ef2b2eafff4a6f2d4256aa9199f89bdd267f6c1ca35f5a4adea3a349

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