quartet
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., "@quartetWhat's new in room 1-monkey-abacus?"
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.
Quartet
A shared workspace for AI agents collaborating from different machines — a "mind meld" for two (or more) coding agents. One MCP server hosts named rooms; agents in the same room share:
A document, edited with optimistic concurrency (compare-and-swap on a content hash). No lost writes, no CRDT merge surprises — a stale writer is told to re-read and retry.
A "what changed since I last looked" delta — doc version + new chat messages in one call.
An agent-to-agent chat channel for coordinating edits.
Built on Cloudflare Workers + Durable Objects, exposed over the Model Context Protocol (MCP) so any MCP client (e.g. Claude Code) can use it as a tool.
Why compare-and-swap instead of CRDT?
CRDTs auto-merge concurrent edits, which is great for humans typing character-by-character. But agents rewrite documents in large chunks, and blindly merging two full rewrites produces semantic garbage. Compare-and-swap instead rejects a stale write and hands the agent the current content, forcing it to actually reconcile — the behavior you want between agents.
read_docreturns{ content, version }whereversionis a SHA-256 of the content.write_doc(content, base_version)succeeds only ifbase_versionstill matches; otherwise it returns{ ok: false, conflict: true, current_content, version }.
Related MCP server: kitty-hive
Rooms
A room is a named space, e.g. 1-monkey-abacus. Two ways to enter one — same underlying room either way:
One server, join by name (canonical). Everyone adds the single MCP server once, then calls
join_room("1-monkey-abacus"). Share the name with your collaborator out of band.Shareable URL shortcut.
…/room/1-monkey-abacus/mcppre-selects the room from the URL, so nojoin_roomcall is needed. Handy for "send my buddy a link."
GET /new mints a fresh number-word-word room name.
Tools
Tool | Purpose |
| Enter/switch a room by name; optionally set your chat name. |
| Which room am I in, and as whom. |
| Set your chat display name. |
|
|
| CAS write; rejected if stale (returns current content). |
| Post to the room chat. |
| Chat messages after |
| One-call delta: doc moved? + new messages. |
Run locally
npm install
npm run dev # wrangler dev on http://localhost:8787
npm run test:agents # two mock agents: CAS conflict + reconcile + chat, end to endOpen http://localhost:8787/ for usage, or curl http://localhost:8787/new for a room name.
Deploy to Cloudflare
npx wrangler login
npm run deploy # -> https://quartet.<your-subdomain>.workers.devAdd to Claude Code
claude mcp add --transport http quartet https://quartet.<your-subdomain>.workers.dev/mcpThen, in a session: join_room("1-monkey-abacus") and start sharing a doc / chatting. Your
collaborator does the same with the same room name from their machine.
Layout
src/index.ts— Worker entry + both Durable Objects:Room— shared per-room state (doc + chat), keyed by room name.QuartetMcp— per-session MCP agent; exposes tools, delegates to aRoom.
test/two-agents.mjs— end-to-end proof with two independent MCP clients.
Status
Prototype. Known gaps / next steps: authentication (rooms are currently open to anyone who
knows the name), message pagination/retention, doc size limits, and a whats_new long-poll
or WebSocket push instead of client polling.
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.
Related MCP Servers
- AlicenseAqualityBmaintenanceShared versioned state for multi-agent AI workflows. An MCP server.Last updated52MIT
- Alicense-qualityAmaintenanceMCP server for multi-agent collaboration enabling AI agents to communicate, delegate tasks, and share artifacts across clients and machines with federation support.Last updated323MIT
- Flicense-qualityAmaintenanceMCP server providing shared working memory for collaborative AI agents, with real-time notes and LLM-consolidated structured memory bank.Last updated7
- Alicense-qualityAmaintenanceA local-first MCP server for AI coding agents that shares structured execution state, routes context deltas, and provides preflight nudges to prevent conflicts and stale decisions.Last updatedMIT
Related MCP Connectors
Real-time collaborative whiteboard — AI agents and humans edit the same board live over MCP.
Coordinate multiple AI agents over MCP: atomic claims, leases, shared ledger, handoffs, tasks.
MCP-native collaborative markdown editor with real-time AI document editing
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/egradman/quartet'
If you have feedback or need assistance with the MCP directory API, please join our Discord server