Interagent
An MCP server that enables multiple Claude Code agents to communicate, share messages, specs, and statuses, solving coordination problems across different workspaces.
README
Interagent
An MCP server that lets multiple Claude Code agents talk to each other. Send bug reports, feature requests, API specs, and status updates between agent instances — no more manually copying markdown files between terminals.
The Problem
When you're running multiple Claude Code agents on different components of the same project (e.g., a client, a server, and a nav mesh service), they can't talk to each other. If one agent finds a bug in another agent's domain, you have to copy the findings yourself. Agents forget where other repos live after context compaction. There's no coordination.
The Solution
Interagent is an MCP server that gives your agents a shared communication layer:
- Agent Registry — Agents register with short names, workspace paths, and descriptions. No more forgetting where repos live.
- Markdown Messaging — Agents write up detailed bug reports and feature requests and send them directly to the responsible agent.
- Signal Files — A lightweight file is dropped in the target agent's workspace as a notification breadcrumb.
- Inbox Polling — Agents check for incoming messages between tasks (with you as the fallback to say "check your incoming").
- Shared Specs — Publish API contracts and schemas that any agent can reference. Single source of truth.
- Status Board — Agents broadcast what they're working on so others (and you) can see at a glance.
- Escalation — If an agent is stuck, it flags the message and notifies you to come take a look.
How It Works
Interagent MCP Server
(~/.claude-interagent/)
/ | \
register send_message publish_spec
check_inbox reply_message get_spec
set_status escalate list_specs
/ | \
[consumer] [db-server] [navmesh]
Claude Code Claude Code Claude Code
Instance 1 Instance 2 Instance 3
- Each agent registers on startup via CLAUDE.md instructions
- Agent A finds a bug in Agent B's domain, writes it up, sends via
send_message - The server stores the message and drops a signal file in Agent B's workspace
- Agent B picks it up on its next
check_inbox, works on it, replies when done - If stuck, Agent B escalates — you get notified to hop over and help
Quick Start
Install
git clone https://github.com/signalclaude/interagent.git
cd interagent
npm install
npm run build
Configure Claude Code
Add to your MCP settings (~/.claude/settings.json):
{
"mcpServers": {
"interagent": {
"command": "node",
"args": ["/path/to/interagent/dist/index.js"]
}
}
}
Onboard Your Agents
Add the contents of AGENT_INSTRUCTIONS.md to each agent's CLAUDE.md, customizing the registration call:
register_agent("my-agent", "/path/to/workspace", "What this agent handles")
The instructions tell the agent to register on startup, poll its inbox between tasks, and use the full messaging toolkit.
Tools
| Tool | Description |
|---|---|
register_agent |
Register with a short name, workspace path, and description |
list_agents |
List all registered agents |
get_agent |
Get details for a specific agent |
send_message |
Send a markdown message to another agent |
check_inbox |
Check for incoming messages |
read_message |
Read a message (auto-acknowledges receipt) |
reply_message |
Reply to a message, optionally mark the original complete |
escalate |
Flag a message as blocked — needs human attention |
publish_spec |
Publish an API contract or schema |
get_spec |
Retrieve a published spec |
list_specs |
List all published specs |
set_status |
Set your current working status |
get_status |
Check another agent's status |
get_all_statuses |
Dashboard view of all agent statuses |
Data Storage
All data lives in ~/.claude-interagent/:
~/.claude-interagent/
registry.json # agent registrations
messages/ # message content (MD files)
messages-meta/ # message metadata (JSON)
specs/ # published API specs/contracts
status.json # agent statuses
Signal files are dropped into each agent's workspace at .claude/inbox/.
Notification Strategy
Agents are reactive — they don't have push listeners. Interagent uses a three-tier approach:
- Polling — CLAUDE.md instructs agents to call
check_inboxbetween tasks - Signal files — A file dropped in
.claude/inbox/acts as a visible breadcrumb - You — If an agent is deep in a rabbit hole, hop over and say "check your incoming"
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.