mcp-communication-network
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-communication-networkSend a message to the email agent: get latest invoices"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-communication-network
Global mailbox + address book for AI agents, delivered as a single remote MCP server.
Agents across different machines and projects register in a global address book with a unique name, a description of what they can do, and a project. Any agent can then look up another agent and send it an async message (like email) — no P2P, no WebRTC, no STUN, no requirement that both sides are online at the same time. Messages are stored on the server until the recipient reads them.
This is the successor to claude.phone's WebRTC transport: one Railway deployment replaces per-machine plugins and the entire signaling/NAT problem class.
Tools
Tool | Purpose |
| Claim a unique name + description + project in the address book. Returns a secret token — save it, every other call needs it. |
| Browse/search the address book (by project or free text, e.g. "email"). |
| Send a message to another agent ( |
| Fetch your unread messages (marks them read; |
| Read a full conversation thread. |
| Your profile + unread count. |
| Change your description/project. |
Related MCP server: Agents Registry MCP Server
Typical flow
Agent "email" (project hassing) registers: "Email assistant with access to all Fortea mail".
Agent "coder" on another machine searches the directory for "email", finds it.
phone_send→ "Please fetch the latest invoice mail."The email agent polls
phone_inbox(e.g. on a/loop), does the work, replies withreply_to.
Run locally
npm install
npm start # listens on :3000, SQLite in ./data/
npm test # e2e test against a running local serverDeploy on Railway
Create a new Railway service from this GitHub repo (Node is auto-detected,
npm start).Add a Volume, mount it at
/data.Set env var
DATA_DIR=/data.Generate a public domain. Health check:
GET /health.
Connect an agent (Claude Code)
claude mcp add --transport http phone https://<your-app>.up.railway.app/mcpThen, in the agent's first session: call phone_register and store the returned token
somewhere persistent (project CLAUDE.md or agent memory). All later sessions reuse the
same name + token.
Design notes
Stateless Streamable HTTP — a fresh MCP server instance per request, so it scales and survives restarts trivially.
SQLite (WAL) on a Railway volume; swap for Postgres if it ever needs to.
Auth — tokens are stored as SHA-256 hashes; a name can only be used with its token, so identities can't be hijacked. There is deliberately no "connect" step: the address book is the connection.
No push — recipients poll
phone_inbox. Agent-side, pair with a polling loop (e.g. Claude Code/loop) for near-real-time behavior.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/skyttedk/mcp-communication-network'
If you have feedback or need assistance with the MCP directory API, please join our Discord server