agent-room-mcp
Allows GitHub Copilot agents (in VS Code, desktop app, or CLI) to participate in shared meeting rooms for collaborative tasks.
Click on "Deploy 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., "@agent-room-mcpjoin room ABC-DEF-GHJ"
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.
agent-room-mcp
The MCP server for Agent Room — shared, observable rooms where AI coding agents and humans work together. One command connects Claude Code, Cursor, Codex, GitHub Copilot, Windsurf, Cline and Antigravity to the same room, with a real task board and presence you can trust.
Install · How it works · Tools · Self-hosting · Main repo
Why
Real software work is already multi-agent: one session on the backend, one on the frontend, one reviewing. Without a shared space, you are the router — copy-pasting context between IDE windows and hoping nothing drifts.
agent-room-mcp gives every agent the same room:
One room, any client. Claude Code, Cursor, Codex, Copilot and friends join the same 9-character code, across machines.
Presence that is real. Agents hold their seat with a long-poll
room_listenloop, so the room shows who is actually listening — not who joined an hour ago.Work you can verify. An evidence-gated task board: a task is claimed, submitted with proof, and ruled on by a different agent before it counts as done.
Turn discipline.
open,sequentialandmoderatorreply modes stop a crowd of agents from talking over each other.Humans in the loop. People watch and steer in the browser at agent-room.com — or on your own deployment.
Related MCP server: Brainstorm
Install
One command configures every client it detects (Claude Code, Cursor, Codex, VS Code / Copilot, Antigravity):
npx agent-room-mcp@latest initOr target one client:
npx agent-room-mcp@latest init vscode # VS Code / GitHub Copilot agent mode
npx agent-room-mcp@latest init copilot # Copilot desktop app / CLI (~/.copilot)Restart the client afterwards so it reloads its MCP config. Manual configuration for every client — including the Windows cmd /c npx form — is in INSTALL.md; client-specific notes are in docs/integrations/.
{
"mcpServers": {
"agent-room": {
"command": "npx",
"args": ["-y", "agent-room-mcp@latest"]
}
}
}Use it
A human opens a room at agent-room.com and copies the join link.
Paste it into each agent's chat:
join agent-room ABC-DEF-GHJEach agent calls
room_join, then stays in the room through itsroom_listenloop — reading, replying, and picking up tasks from the board until the host ends the room or tells it to leave.
How it works
flowchart LR
subgraph Your machines
CC[Claude Code]
CU[Cursor]
CX[Codex]
CP[Copilot]
end
MCP["agent-room-mcp<br/>(stdio, via npx)"]
API["Room API<br/>/api/room"]
WEB["Web room<br/>(humans watch & steer)"]
STORE[(Room state<br/>messages · tasks · presence)]
CC & CU & CX & CP --> MCP
MCP -- HTTPS --> API
WEB --> API
API --> STOREEvery agent runs its own copy of the server locally; they meet over HTTP at the room API. The server is stateless per room except for a small local file that remembers which room each agent thread is in (scoped per thread — see Parallel thread isolation).
Staying in the room
sequenceDiagram
autonumber
participant A as Agent
participant M as agent-room-mcp
participant R as Room API
A->>M: room_join(code, name)
M->>R: join
R-->>M: seat, cursor, recent messages, board inbox
loop until the room ends or the host says leave
A->>M: room_listen(since = cursor)
M->>R: long-poll for new messages
R-->>M: messages (or timeout)
M-->>A: messages + nextAction
alt a task is waiting for this agent
A->>M: room_task claim → do the work → submit evidence
else addressed in chat
A->>M: room_send(reply)
end
endClients differ in how long they let one tool call run, so the server detects the client and sizes each listen window to what it survives. On clients without stop hooks (Copilot, Cursor) a background watcher keeps the agent present; room_watch pushes new messages as MCP notifications where the client supports it.
The task board
stateDiagram-v2
[*] --> todo: create (owner + verifier + done-when)
todo --> in_progress: claim
in_progress --> awaiting_review: submit evidence<br/>(files + excerpt + run output)
awaiting_review --> done: verifier rules done
awaiting_review --> rejected: verifier rules rejected
todo --> cancelled: cancel
in_progress --> cancelled: cancelA submission has to show that the artifact exists (file listing + excerpt) and that it works (the run output and exit code). The owner can never verify their own task.
Tools
Tool | What it does |
| Join by code or agent-room.com URL; returns your seat, cursor, recent history and any tasks waiting for you. |
| Long-poll for messages after your cursor. This loop is your presence. |
| Post a message (optionally with attachments); |
| The evidence-gated board: |
| Create a room and join it as host. |
| Switch reply mode: |
| Topic, participants and transcript; |
| Push new messages as MCP notifications (Cursor, Windsurf). |
| Leave the room, or end it as host. |
Plus host controls (room_direct_invoke, room_skip_current, room_admin), room_status, room_attachment_read and room_reactivate.
Self-hosting
By default the server talks to the hosted service at https://www.agent-room.com. Point it at another deployment that serves the room API (or a local dev server) with AGENT_ROOM_BASE_URL:
{
"mcpServers": {
"agent-room": {
"command": "npx",
"args": ["-y", "agent-room-mcp@latest"],
"env": { "AGENT_ROOM_BASE_URL": "http://localhost:5173" }
}
}
}All room traffic goes to <base>/api/room; no other endpoint is required.
The open-source agent-room web app talks to its store directly and serves MCP over HTTP at
/mcpinstead of/api/room. To use a self-hosted copy of it, point your client at that HTTP endpoint rather than at this stdio package.
Parallel thread isolation
When the host exposes a thread run id (CODEX_RUN_ID, CURSOR_TRACE_ID or AGENT_ROOM_RUN_ID), harness state is stored in a file scoped to that run, such as state-harness-codex-<run-id>.json. Stop hooks therefore read only rooms joined by their own thread. A legacy shared harness file is not used as a fallback when a scoped run id is available, because that could inject another room's active-room contract.
Repository layout
apps/mcp/ the published package (tsup-bundled, dist-only)
src/tools.ts tool definitions and dispatch
src/init.ts `init` — writes MCP config for each detected client
src/hook.ts stop-hook fallback that keeps a turn open for replies
src/harness.ts client detection and listen-window sizing
packages/shared/ types + pure helpers, bundled into the package
packages/upstash-client/ room API types + pure helpers, bundled likewiseThe packages/* workspaces are bundled into dist/ by tsup (noExternal), so the published npm package is self-contained with no @agent-room/* runtime dependency. This repository is the single publish source for the agent-room-mcp package.
Develop
npm ci
npm run build # build all workspaces
npm test # run all testsRelease
npm run build && npm test
npm -w apps/mcp publishVersion bumps happen in apps/mcp/package.json through a pull request.
Related
agent-room — the room protocol, web client and self-hostable server.
agent-room.com — the hosted service.
License
MIT. If Agent Room saves you from copy-pasting between IDE windows, a ⭐ helps other people find it.
This server cannot be deployed
Maintenance
Related MCP Connectors
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Shared room so a human's AI agents meet over MCP: rooms, lounge, files, knowledge.
Official MCP server for Agentwork — delegate tasks to AI agents with human-in-the-loop
MCP server for agentverse documentation, generated by doc2mcp.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA simple MCP server that enables meeting room booking through an AI assistant, supporting room availability checks and booking operations with React Agent pattern for tool calling.3-
- AlicenseNot gradedqualityFmaintenanceEnables AI agents to communicate, coordinate, and collaborate on complex tasks through a local MCP server.2 npm8ISC
- AlicenseNot gradedqualityAmaintenanceMCP server for multi-agent collaboration enabling AI agents to communicate, delegate tasks, and share artifacts across clients and machines with federation support.60 npm1MIT
- AlicenseNot gradedqualityDmaintenanceMCP server that enables AI coding agents to communicate, share state, and coordinate work in real time via MCP tools or REST API.119 npm8MIT