peer-agents-mcp
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., "@peer-agents-mcpreview this diff for my PR"
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.
peer-agents-mcp
MCP server that lets other AI coding tools (Codex, Claude, Cursor, etc.) call the Grok CLI and Antigravity CLI as peer reviewers and collaborators.
What it does
This server wraps the local grok and agy (Antigravity) CLIs behind a clean Model Context Protocol (MCP) interface.
Any MCP-capable agent can now:
Send code changes, plans, errors, or questions to Grok or Antigravity
Receive structured peer feedback
Run multi-turn review/debug/planning sessions with session memory
Get independent opinions by running both CLIs on the same task
The primary agent (Codex, Claude, etc.) stays in control. It simply delegates specific tasks to these peers when it wants a second (or different) opinion.
Related MCP server: antigravity-claude-mcp
Core idea
Instead of one model doing everything, your main coding agent can use Grok and Antigravity as peers:
Grok for most coding work (reviews, planning, debugging, implementation critique)
Antigravity for large context, general knowledge, or multimodal tasks
Smart routing happens automatically based on the type of request.
Available tools
Tool | Purpose | Routed to |
| Review a unified diff or patch | Grok (usually) |
| Create an implementation plan | Grok |
| Diagnose failures from logs/stack traces | Grok |
| Check test/build output for safety | Grok |
| General grounded Q&A | Antigravity |
| Independently compare Plan A vs Plan B | Grok |
| Continue a multi-turn peer session | Same peer |
| Long-running follow-up turn (background job) | Same peer |
| Cold-start Grok implementation handoff (job) | Grok |
| Long-running diff review (background job) | Grok |
| Long-running debug handoff (background job) | Grok |
| Poll a background job (includes | — |
| Cancel a background job | — |
| Garbage-collect old terminal jobs | — |
| Low-level side-by-side call to both CLIs | Both |
Additional session tools: peer_summarize, peer_transcript, peer_list_sessions, peer_reset, and peer_health.
All routed tools accept full file contents via the files parameter and diffs via diff. Never send summaries — send the actual content.
Long-running async jobs
Large implementation handoffs can exceed the MCP client's synchronous tool timeout. Use the async path instead of blocking on peer_turn:
Start work with
peer_implement_async(cold start) orpeer_turn_async(existing session).Continue local work while the peer runs.
Poll
peer_job_statusevery 30–60 seconds (avoid aggressive polling).While
statusisrunning, optionalprogressmay includetextSnippet,lastThought, andeventCount(Grok streaming-json).When
statusissucceeded, readresultand continue withpeer_turnif needed.Use
peer_job_cancelto stop a queued/running job owned by this MCP process.
Terminal statuses: succeeded, failed, timed_out, cancelled, orphaned.
Idempotency: retries with the same idempotency_key return the same job (running or sticky terminal). After timed_out / cancelled / failed, use a new key to retry the work.
Jobs and completed results are stored under ~/.peer-agents/jobs/. Live provider processes do not survive MCP server restarts; non-terminal jobs are marked orphaned on hydrate (unless the session already committed the operation, which recovers as succeeded).
Terminal jobs older than 7 days are garbage-collected on hydrate (override with PEER_AGENTS_JOB_GC_MAX_AGE_MS) or via peer_jobs_gc.
Async jobs use a separate timeout from synchronous turns:
PEER_AGENTS_JOB_TIMEOUT_MS— default 30 minutes (1800000)GROK_JOB_TIMEOUT_MS/ANTIGRAVITY_JOB_TIMEOUT_MS— optional per-provider overridesPEER_AGENTS_JOB_GC_MAX_AGE_MS— terminal job retention (default 7 days)PEER_AGENTS_GROK_TRANSPORT—headless(default) oracpfor warm process poolPEER_AGENTS_GROK_ACP_MAX_CLIENTS— max concurrent ACP processes (default 4)PEER_AGENTS_GROK_ACP_IDLE_MS— idle recycle for ACP processes (default 5 minutes)
Keep the MCP server process alive for the duration of a job.
Grok transport: headless vs ACP
|
| |
Invocation |
| Long-lived |
Latency | Cold start every turn | Warm process; multi-turn reuses process + session |
CLI features | Full flag matrix (sandbox, json-schema, worktree, …) | Subset (always-approve); structured findings via prompt |
Enable | (default) |
|
Prefer headless for one-shot reviews with strict sandboxing. Prefer acp when you run many follow-up peer_turns and want lower process-startup cost.
How other agents use it
Codex, Claude, or any other MCP client connects to this server over stdio. Once connected, the agent can call the peer tools exactly like any other tool.
Typical flow:
Your agent prepares a diff, error log, or task description.
It calls
peer_review_diff,peer_plan,peer_debug, etc.The server invokes the appropriate CLI(s) in headless mode.
The peer response comes back with a
sessionId.Your agent can follow up later with
peer_turnusing thatsessionId.
This gives you persistent, contextual peer conversations without the primary agent having to manage CLI invocation itself.
Prerequisites
Node.js ≥ 18
The
grokCLI (or setGROK_COMMAND)The
agyCLI (Antigravity, or setANTIGRAVITY_COMMAND)
Both CLIs must be authenticated and working on your machine.
Installation & usage
git clone https://github.com/Rakeen70210/peer-agents-mcp
cd peer-agents-mcp
npm install
npm run buildRun directly:
node dist/index.jsMCP client configuration
Add it to your client's MCP servers config (example for a typical stdio setup):
{
"mcpServers": {
"peer-agents": {
"command": "node",
"args": ["/absolute/path/to/peer-agents-mcp/dist/index.js"],
"env": {
"GROK_COMMAND": "/home/you/.grok/bin/grok",
"ANTIGRAVITY_COMMAND": "/home/you/.local/bin/agy"
}
}
}
}Environment variables
GROK_COMMAND— path to grok binary (default:grok)ANTIGRAVITY_COMMAND— path to agy binary (default:agy)GROK_ARGS/ANTIGRAVITY_ARGS— JSON array of extra CLI argsANTIGRAVITY_CONVERSATIONS_DIR— override agy conversation store used to capture native session ids (default:~/.gemini/antigravity-cli/conversations)PEER_AGENTS_STORAGE_DIR— where sessions are persisted (default:~/.peer-agents/sessions)PEER_AGENTS_ENABLED_PROVIDERS— comma list whitelist of peer CLIs (grok,antigravity). Useantigravityalone when the host is Grok so peers never re-enter Grok.PEER_AGENTS_DISABLED_PROVIDERS— comma list blacklist (ignored ifPEER_AGENTS_ENABLED_PROVIDERSis set)PEER_AGENTS_TURN_TIMEOUT_MS— per-turn synchronous timeout (default 120s for Grok, 300s for Antigravity)ANTIGRAVITY_TURN_TIMEOUT_MS— optional Antigravity sync overridePEER_AGENTS_JOB_TIMEOUT_MS— async job timeout (default 30 minutes)GROK_JOB_TIMEOUT_MS/ANTIGRAVITY_JOB_TIMEOUT_MS— optional async per-provider overridesPEER_AGENTS_MAX_PROMPT_CHARS— safety limit on prompt size
Multi-turn peer sessions
Each routed call returns a sessionId. Use peer_turn to continue the conversation:
Tell the peer what changed
Attach new diffs or files
Ask it to re-review or check your fixes
Sessions are persisted to disk, so they survive across restarts of the MCP server.
Grok and Antigravity multi-turn turns prefer native CLI resume when a conversation/session id was captured on the first turn; otherwise the MCP rehydrates recent transcript into the prompt.
Grok CLI integration (0.2.x+)
Grok peer turns use modern headless flags under the hood (callers do not pass these):
Concern | Behavior |
Large prompts | Always |
Multi-turn |
|
Reviewer / planner / critic |
|
Implementer |
|
| Default git |
Review findings |
|
Risk / security | Elevated |
Specialists | Packaged |
Async progress |
|
ACP pool (opt-in) |
|
Spend telemetry |
|
Antigravity CLI integration (agy 1.1.x+)
Antigravity peer turns use print mode under the hood (callers do not pass these flags):
Concern | Behavior |
Invocation |
|
Multi-turn |
|
Session capture | Before/after scan of the conversations store (default |
Reviewer / critic |
|
Planner |
|
Implementer |
|
Workspace |
|
Agent | Optional |
Health | Prefer |
agy does not expose Grok-style json-schema, streaming metrics, worktree, or prompt-file — those remain Grok-only.
Design notes
The server never modifies your repo itself — it only runs the CLIs you already have.
User messages in session transcripts are labeled from the caller's perspective (commonly "Codex").
Idempotency keys are supported so repeated calls with the same key are safe.
Context quality hints are returned when the input looks too thin (missing files, diffs, etc.).
Implementation handoffs default to a Grok worktree so the peer does not clobber a dirty main tree.
License
MIT (or as specified in the repo).
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
- Alicense-quality-maintenanceEnables Claude to query Grok as a peer for collaborative reasoning, code reviews, and architecture debates. It provides access to real-time web research and multiple specialized reasoning modes through the xAI API.Last updated
- AlicenseAqualityCmaintenanceEnables Claude Code to request independent code reviews and second opinions from other AI models (like Gemini, GPT-OSS) via the Antigravity CLI, directly from the chat.Last updated186MIT
- AlicenseAqualityCmaintenanceAllows Claude Code to request an independent code review from Google Antigravity (Gemini, Claude, or GPT-OSS) via the Antigravity CLI, providing a second opinion on plans or diffs.Last updated1862MIT
- FlicenseAqualityBmaintenanceEnables using the xAI Grok CLI as an MCP sub-agent for code review, asking questions, and continuing conversations within MCP hosts like Claude Code.Last updated4
Related MCP Connectors
Agentic code review, no signup to try: reality gates + frontier-model review, with veto.
Human-in-the-loop for AI coding agents — ask questions, get approvals via Slack.
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
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/Rakeen70210/peer-agents-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server