claude-collab-mcp
MCP server for async collaboration between two Claude users via shared project state.
Two people using Claude (Claude Code, Claude Desktop, or any MCP-compatible client) can share live project context through a Supabase backend. No cloud hosting required.
Installation
# Using uvx (recommended, no install needed)
uvx claude-collab-mcp
# Or install with pip
pip install claude-collab-mcp
# Or install with uv
uv pip install claude-collab-mcp
Setup
1. Create a Supabase Project
- Go to supabase.com and create a free project
- Run the schema setup in your Supabase SQL editor (see setup.sql)
- Copy your project URL and anon key from Settings > API
2. Configure Environment Variables
Each user needs three environment variables:
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_KEY=your-anon-key
COLLAB_USER=kelly # or justin, or any identifier
3. Add to Your Claude Client
Claude Code:
claude mcp add claude-collab -s user -e SUPABASE_URL=https://... -e SUPABASE_KEY=... -e COLLAB_USER=kelly -- uvx claude-collab-mcp
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"claude-collab": {
"command": "uvx",
"args": ["claude-collab-mcp"],
"env": {
"SUPABASE_URL": "https://your-project.supabase.co",
"SUPABASE_KEY": "your-anon-key",
"COLLAB_USER": "justin"
}
}
}
}
Tools
Core Collaboration
| Tool | Purpose |
|---|---|
get_project_state(project_name) |
Full snapshot: open tasks, handoffs, decisions, context |
update_task(project_name, title, ...) |
Create or update task (upsert by title) |
post_handoff(project_name, to_user, title, context) |
Async handoff with rich context |
get_handoffs(user?) |
Pending handoffs, auto-acknowledges yours |
log_decision(project_name, decision, rationale) |
Append-only decision record |
add_context(project_name, key, value) |
Upsert shared context entry |
get_activity(project_name, since_hours?) |
Activity feed since N hours ago |
Project Context Sync
| Tool | Purpose |
|---|---|
sync_project_brief(project_name, brief?) |
Push/pull portable project overview (goals, architecture, context) |
post_session_summary(project_name, summary, ...) |
Record what was accomplished (like /commit for collaborators) |
Git Integration
| Tool | Purpose |
|---|---|
log_git_activity(project_name, type, message, ...) |
Log commits, pushes, merges so collaborators see code changes |
File References
| Tool | Purpose |
|---|---|
add_file_reference(project_name, name, url, ...) |
Store links to external files (Google Drive, GitHub, Figma) |
get_file_references(project_name) |
Retrieve all shared file links |
Usage Pattern
Add this to any shared project's CLAUDE.md:
## On Session Start
Before beginning any work:
1. Call get_activity("project-name", 24) for recent changes
2. Call get_handoffs() for pending handoffs
3. Summarize what's new before proceeding
How It Works
User A's Claude → spawns local MCP server (stdio) → reads/writes Supabase
User B's Claude → spawns local MCP server (stdio) → reads/writes Supabase
Same package on both machines. Same Supabase database. Projects are created automatically on first use.
Requirements
- Python 3.12+
- Supabase account (free tier works)
- MCP-compatible Claude client
License
MIT
Metadata
Release files for claude-collab-mcp 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| claude_collab_mcp-0.2.0.tar.gz | 113.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| claude_collab_mcp-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 122.8 kB
Release files / claude_collab_mcp-0.2.0.tar.gz
| Download URL | claude_collab_mcp-0.2.0.tar.gz |
|---|---|
| Size | 113.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3784370ffa80f374863afde1db718b51ebfd7edc54f81b42d0987165c06bb385
|
|
BLAKE2b-256 checksum How to use checksums |
31da7d507e246c92c0e4c2438cad0cb30e632c974d541609b57019473e381be3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.16 {"installer":{"name":"uv","version":"0.9.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / claude_collab_mcp-0.2.0-py3-none-any.whl
| Download URL | claude_collab_mcp-0.2.0-py3-none-any.whl |
|---|---|
| Size | 9.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9c0fdada5de46e846a5bc0aa8db83738507b78c1b46b7e8bf4c51af085840f3e
|
|
BLAKE2b-256 checksum How to use checksums |
e924504c8897cd5fd5a1669b854cff5c3ef5ba805b9472e6bd1129989e0a300d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.16 {"installer":{"name":"uv","version":"0.9.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|