agent-handoff-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., "@agent-handoff-mcpsend a handoff to qa-agent asking it to run the regression suite"
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 Handoff MCP
A local-first Model Context Protocol server for bounded, auditable handoffs between AI agents.
Agent Handoff MCP gives Claude, Codex, local agents, and other MCP clients a shared inbox without giving one model control over another. Agents can send structured work, acknowledge it, report a blocker, complete it, or cancel work they originally queued. Every transition is attributable and retained in SQLite.
Why this exists
Multi-agent systems often pass work through chat transcripts, ad hoc files, or vendor-specific orchestration. That loses ownership, lifecycle state, authorization boundaries, and a durable audit trail. This server turns a handoff into a small protocol object:
sender -> queued -> accepted -> completed
| ^
v |
blocked --------+
sender may cancel only while queuedThe server coordinates work; it does not execute agents, fetch references, read arbitrary files, or create autonomous agent loops.
Related MCP server: agent2agent
MCP tools
Tool | Purpose |
| Show the authenticated identity and communication boundaries. |
| Send a structured handoff to an authorized recipient. |
| List handoffs addressed to the current identity. |
| Read a handoff and its append-only event history. |
| Accept queued or blocked work. |
| Mark work blocked/completed, or cancel it while queued. |
Design properties
SQLite shared state with WAL mode and parameterized queries
Streamable HTTP and stdio transports
Opaque UUID handoff, event, and thread identifiers
Explicit
send_toandreceive_fromauthorizationPer-agent disclosure ceilings:
public-safe,internal, orrestrictedHashed, expiring bearer-token bindings for HTTP
Idempotency keys for safe retries
Maximum reply-chain depth to limit automated ping-pong
Strict message, array, reference, and request-size limits
Sender/recipient-only reads
Append-only lifecycle events; no MCP delete tool
References are stored as inert strings and never dereferenced
Quick start
Requirements: Node.js 22.13 or newer.
git clone https://github.com/SarutobiSasuke8/agent-handoff-mcp.git
cd agent-handoff-mcp
npm ci
cp .env.example .env
cp config/agents.example.yaml config/agents.yaml
npm run token:newReplace the disabled example token hashes and expiry timestamps in config/agents.yaml, then start the shared HTTP service:
npm run check
npm startThe default endpoints are:
GET http://127.0.0.1:3220/healthz
POST http://127.0.0.1:3220/mcp
Authorization: Bearer handoff_<agent-specific-token>The server binds to localhost by default. Put an authenticated private-network or TLS boundary in front of it before any remote deployment.
Stdio mode
Each stdio client supplies its identity through its own process environment while sharing the same SQLite database and registry:
{
"command": "node",
"args": ["/absolute/path/agent-handoff-mcp/dist/src/stdio.js"],
"env": {
"HANDOFF_AGENT_ID": "example-codex",
"HANDOFF_MCP_DB": "/absolute/shared/path/handoffs.sqlite",
"HANDOFF_MCP_REGISTRY": "/absolute/path/agents.yaml"
}
}Use HTTP when multiple clients should connect to one long-running service. Use stdio for local clients that can safely receive a fixed identity through their own configuration.
Documentation
Scope boundary
This project is a coordination primitive, not a general task platform. Shared task boards, decisions, broadcasts, presence, leases, notifications, context promotion, and remote dispatch belong behind future optional modules. The six-tool handoff surface remains the stable core.
License
Apache-2.0. See LICENSE.
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
- Alicense-qualityDmaintenanceA SQLite-backed message queue system that enables multiple AI agents to communicate with each other via a simple HTTP interface.Last updated4Apache 2.0
- Alicense-qualityCmaintenanceEnables async, authenticated messaging between AI agents with explicit authorization and persistent inbox.Last updated3MIT
- Flicense-qualityDmaintenanceEnables multiple AI agents to communicate and coordinate via a shared SQLite-backed message log, supporting directed messages, broadcasts, and session discovery.Last updated
- Alicense-qualityBmaintenanceAn append-only coordination memory for multi-agent and human work, backed by SQLite, with a local dashboard and acceptance contracts that enforce integrator review before work is considered accepted.Last updated1MIT
Related MCP Connectors
Durable agent-to-agent handoffs and shared scratchpad for multi-agent workflows.
Reliable async execution for agent tool calls: schema gating, retries, idempotency, audit trail.
Hosted email MCP for AI agents with inboxes, send/receive, memory, recovery, and credits.
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/SarutobiSasuke8/agent-handoff-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server