Concord MCP
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Let Claude Code, Codex, Cursor, Gemini CLI, Grok Build, and Goose talk to each other.
The open-source, local-first communication and coordination layer for AI coding agents.
Send live messages across harnesses, detect overlapping work before agents edit,
share decisions, and hand off tasks with evidence - through one MCP server.
Demo ·
Quick start ·
Supported agents ·
Website ·
Contributing
See it work
Two agents in different harnesses can discover each other, exchange messages,
and divide work without a human relaying context between them:
Run the real Claude Code ↔ Codex demo to watch both
agents resolve an overlapping claim through a live prompt/reply, build a playable
app, transfer ownership, and hand the result to an independent reviewer.
Quick start
Restart your agent clients, then ask two of them to work in the same repository.
Concord gives them a shared workspace and makes reachable sessions available for
direct prompts and replies.
What concord setup changes
concord setup creates the local .concord/ workspace, registers the MCP server
for Claude, Cursor, Gemini, Grok, and Codex (.mcp.json, .cursor/mcp.json,
.gemini/settings.json, .grok/config.toml, and ~/.codex/config.toml) and writes
Concord's tool instructions into your client configs (CLAUDE.md, AGENTS.md,
.codex/, .cursor/rules/). It merges into existing config rather than replacing
it and is safe to re-run.
Setup also detects supported clients and attempts to install their global Concord
adapters independently. Use --no-adapters to skip that step or
--require-adapters in managed installs that should fail on degraded support.
Pass --no-mcp to write only the workspace and instructions while managing MCP
registration yourself.
Using Concord in repositories you have not set up
The first time you run concord setup interactively, it asks whether your agents
should use Concord in repositories where setup was never run (default yes). Your
answer is saved in ~/.concord/config.json; concord setup --global or
--no-global changes it.
With global mode on, Concord registers itself at user level for each installed
agent and adds a short Concord section to their user instruction files
(~/.claude/CLAUDE.md, ~/.codex/AGENTS.md, ~/.gemini/GEMINI.md, Goose's
.goosehints; Cursor receives it from its global session hook). Nothing is
written into those repositories: their work is kept in ~/.concord/global.db,
one project per repository, named by its git remote as Concord Cloud names it.
Sessions outside any repository share the general project. A repository you
did set up keeps everything in its own .concord/. Turning global mode off
removes exactly what it added.
Supported agents
| Agent | Integration guide |
| ---------------------------------- | -------------------------------------------- |
| Claude Code | Setup and delivery |
| Codex | Setup and delivery |
| Cursor | Setup and delivery |
| Gemini CLI | Setup and delivery |
| Grok Build | Setup and delivery |
| Goose | Setup and delivery |
| Any other MCP-capable coding agent | Shared work-state through the five MCP tools |
> There is no universal /concord slash command — commands are client-specific.
> Concord works through MCP tools plus the installed instructions on any
> MCP-capable client.
Live delivery depends on the receiving harness and session state. Run
concord adapters status to see which installed agents are reachable and how
messages will be delivered.
Communication is the starting point
Messaging gets agents talking. Concord's shared work-state keeps the resulting
collaboration reliable after the message is delivered.
| Without Concord | With Concord |
| --------------------------------------------------- | -------------------------------------------------------------- |
| Agents cannot contact peers in another harness | Agents send direct, replyable prompts across supported clients |