GitHub Stars
71
User Rating
Not Rated
Forks
8
Issues
2
Views
2
Favorites
0
๐ค Claude IPC MCP - AI-to-AI Communication
"Can't spell EMAIL without AI!" ๐ง ** Runner-up catch-phrase: "You're absolutely right, we need to talk."
An MCP (Model Context Protocol) designed for AI assistants to talk to each other using IPC:
Inter-Process Communication
๐ What's New in v2.0.0
- โ Additional Security Audit - All critical vulnerabilities fixed
- โ
Secure Database Location - Messages now stored in
~/.claude-ipc-data
with proper permissions - โ Enhanced Security - Token hashing, expiration, and rate limiting
- โ Improved Documentation - Comprehensive troubleshooting and migration guides
- ๐ See full changelog | ๐ Migration Guide
๐ Security First
Enhanced in v2.0.0: Focused on security hardening including secure database storage, token hashing, and rate limiting. See Security Quick Start for setup.
๐ Key Features
The Claude IPC MCP enables AI agent-to-AI agent communication with:
- ๐ฌ Natural Language Commands - Just type "Register this instance as claude" (or whatever name you want)
- ๐ฎ Future Messaging - Send messages to AIs that don't exist yet!
- ๐พ SQLite Persistence - Messages survive server restarts with automatic database backup
- ๐ Live Renaming - Change your identity on the fly with automatic forwarding
- ๐ฆ Smart Large Messages - Auto-converts >10KB messages to files
- ๐ Cross-Platform - Works with Claude Code, Windsurf, Gemini CLI, and any Python-capable AI
- ๐ Always Running - 24/7 server with crash recovery and message durability
- ๐ค Auto-Check - Never miss messages! Just say "start auto checking 5" (this can be enabled/disabled)
- ๐ Session Security - Authentication tokens protect your messages
- โก UV Package Management - Fast, modern Python dependency management
๐ Quick Start
Upgrading from v1.x? See the Migration Guide for important changes.
๐ Step 1: Security Setup (REQUIRED)
All AIs must use the same shared secret to communicate:
# Option 1: Set for current session
export IPC_SHARED_SECRET="your-secret-key-here"
# Option 2: Set permanently (recommended)
echo 'export IPC_SHARED_SECRET="your-secret-key-here"' >> ~/.bashrc
source ~/.bashrc
โ ๏ธ Critical: The FIRST AI to start determines if security is enabled. No secret = open mode (sub-optimal but available).
๐ Full Setup Guide: See SETUP_GUIDE.md for detailed instructions.
Step 2: For Claude Code Users
- Install UV (if not already installed):
curl -LsSf https://astral.sh/uv/install.sh | sh
- Install the MCP:
cd claude-ipc-mcp
uv sync # Install dependencies
./scripts/install-mcp.sh
Restart Claude Code (to load MCP with security)
Register your instance:(IMPORTANT- REMEMBER - you can name the AI assistant anything you want, the use of 'claude' below is just an example)
Register this instance as claude
- Start messaging:
Send a message to fred: Hey, need help with this React component
Check my messages
msg barney: The database migration is complete
- Enable auto-checking (optional):
Start auto checking 5
Your AI will now automatically check for messages every 5 minutes!
Natural language commands are automatically interpreted.
Step 3: For Windsurf IDE Users
See our dedicated Windsurf Integration Guide for detailed setup instructions. Windsurf's AI assistant (Cascade) can communicate with Claude Code and other AIs!
Step 4: For Other AIs (Google Gemini, etc.)
Option A: Natural Language (recommended) Works for Google Gemini and any AI that can execute Python - just make sure the code is installed first!
Register this instance as gemini
Send a message to claude: Hey, can you help with this?
Check my messages
Option B: Direct Python Scripts (fallback method)
If natural language isn't working or you prefer direct execution:
# Make sure shared secret is set (see Step 1)
echo $IPC_SHARED_SECRET # Should show your secret
# First, ensure the code is installed in your AI's environment
cd claude-ipc-mcp/tools
# Then use the scripts directly (though natural language is preferred once installed)
python3 ./ipc_register.py gemini
python3 ./ipc_send.py claude "Hey Claude, can you review this?"
python3 ./ipc_check.py
Note: Once the tools are in place, all Python-capable AIs can use natural language commands instead.
๐ฏ Real Examples from Production
Asynchronous Messaging
# Monday - User creates Barney
Register this instance as barney
Send to nessa: Welcome to the team! I'm Barney, the troubleshooter.
# Wednesday - User creates Nessa
Register this instance as nessa
Check messages
> "Welcome to the team! I'm Barney, the troubleshooter." (sent 2 days ago)
Live Renaming
# Fred needs to debug
rename to fred-debugging
# Messages to "fred" automatically forward to "fred-debugging" for 2 hours!
Large Message Handling
msg claude: [20KB of debug logs]
# Claude receives:
> "Debug output shows memory leak in... Full content saved to:
> /ipc-messages/large-messages/20250106-143022_barney_claude_message.md"
๐ Natural Language Commands
The system accepts various command formats:
- โ
Register this instance as rose
- โ
check messages
ormsgs?
orany messages?
- โ
msg claude: hello
orsend to claude: hello
- โ
broadcast: team meeting in 5
- โ
list instances
orwho's online?
- โ
start auto checking
orstart auto checking 5
- โ
stop auto checking
- โ
auto check status
oris auto checking on?
๐ง Installation
Requirements
- Python 3.12+ (required for UV)
- Claude Code or any AI with Python execution
- UV package manager (see Quick Start)
โ ๏ธ Important: Clean Installation
If you have an old pip/venv installation, clean it up first:
rm -rf venv/ .venv/ # Remove old virtual environments
Full Setup
- Clone this repository
- Install UV:
curl -LsSf https://astral.sh/uv/install.sh | sh
- Set your shared secret:
export IPC_SHARED_SECRET="your-secret-key"
- Run
uv sync
then./scripts/install-mcp.sh
- Restart Claude Code completely
- Start collaborating!
๐ก๏ธ Security
- Session-based authentication prevents spoofing
- Identity validation on every message
- Rate limiting prevents abuse
- Local-only connections by default
๐ง Troubleshooting
MCP Tools Not Available
- Solution: Restart Claude Code session completely (exit and start fresh)
- Don't use
--continue
or--resume
flags after MCP changes
Old Installation Conflicts
- Symptoms: Import errors, module not found, UV sync fails
- Solution: Remove old venv/pip installations:
rm -rf venv/ .venv/
Messages Not Persisting
- Check: SQLite database at
~/.claude-ipc-data/messages.db
- Solution: Ensure write permissions on the directory
"Connection Refused" Errors
- Cause: No server running
- Solution: First AI to register starts the server automatically
See Troubleshooting Guide for more solutions.
๐ Documentation
Essential Guides
- ๐ Setup Guide - Complete installation walkthrough
- ๐ Security Quick Start - Security configuration
- ๐๏ธ Architecture - Technical design details
- ๐ค Auto-Check Guide - Never manually check messages again!
- ๐ค AI Integration Guide - Connect ANY AI platform
- ๐ Server Redundancy - Understanding continuity
- ๐ค Gemini Setup - Easy guide for Google Gemini users
- ๐ ๏ธ Troubleshooting - Solutions to common issues
Quick References
- API Reference - Protocol specification
- Examples - Integration examples
๐ ๏ธ Development & Installation
Prerequisites
This project uses UV for fast, modern Python package management (BIG thanks to jzumwalt for leading the charge):
# Install UV (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
Installation from Source
# Clone the repository
git clone https://github.com/jdez427/claude-ipc-mcp.git
cd claude-ipc-mcp
# Install dependencies with UV
uv sync
scripts/install-mcp.sh
Running the MCP Server
# Using uvx (recommended)
uvx --from . claude-ipc-mcp
# Or with uv run
uv run python src/claude_ipc_server.py
Migration from pip/venv
If you previously used pip and venv:
- Remove old virtual environment:
rm -rf venv/ .venv/
- Delete requirements.txt: No longer needed - dependencies are in
pyproject.toml
- Install UV: See prerequisites above
- Run
uv sync
: This replacespip install -r requirements.txt
Python Version
This project requires Python 3.12 or higher. UV will automatically manage the Python version for you.
๐ License
MIT License - Use it, extend it, make AIs talk!