io.github.josephibra/handoff-mcp-server
Durable agent-to-agent handoffs and shared scratchpad for multi-agent workflows.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
claude mcp add --transport http handoff-mcp-server 'https://handoff-mcp-server-production.mcp.xpay.sh/mcp'
{
"mcpServers": {
"handoff-mcp-server": {
"type": "http",
"url": "https://handoff-mcp-server-production.mcp.xpay.sh/mcp"
}
}
}
claude mcp add --transport http handoff-mcp-server 'https://handoff-mcp-server-production.up.railway.app/mcp'
{
"mcpServers": {
"handoff-mcp-server": {
"type": "http",
"url": "https://handoff-mcp-server-production.up.railway.app/mcp"
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
handoff-mcp-server
Durable handoffs and shared scratchpad for multi-agent workflows over MCP (HTTP transport).
Endpoints
GET /basic service infoGET /healthhealth and storage statsPOST /mcpJSON-RPC MCP endpointGET /robots.txtdiscovery fileGET /llms.txtdiscovery fileGET /sitemap.xmldiscovery file
Environment Variables
PORTdefault3000DATA_DIRdefault/dataMCP_API_KEYrequired in production (NODE_ENV=production)PUBLIC_MCP_DISCOVERYdefaulttruePUBLIC_BASE_URLoptional, used for absolute links in discovery files
Local Run
npm ci
npm run build
MCP_API_KEY=test-secret node dist/index.js
MCP Auth Behavior
- Discovery methods (
initialize,tools/list,resources/list,prompts/list,ping) can be public whenPUBLIC_MCP_DISCOVERY=true. tools/callrequires valid upstream auth whenMCP_API_KEYis set:Authorization: Bearer <MCP_API_KEY>orx-api-key: <MCP_API_KEY>
Xpay + Railway Configuration (Required)
- Railway variables:
MCP_API_KEY=<your-strong-key>PUBLIC_MCP_DISCOVERY=truePUBLIC_BASE_URL=https://handoff-mcp-server-production.up.railway.app
- Xpay MCP URL:
- Use
https://handoff-mcp-server-production.mcp.xpay.sh/mcp?key=xpay_sk_... - Without
?key=..., Xpay returns auth required and requests will not forward.
- Client calls through Xpay:
- Keep the Xpay key in URL.
- Also send upstream auth header for
tools/call(x-api-keyor Bearer token matchingMCP_API_KEY).
Publishing
MCP Registry
- Server name:
io.github.josephibra/handoff-mcp-server - Primary remote: Xpay URL (with key at client usage time, not committed)
- Secondary remote: Railway URL
Smithery
- Namespace:
josephibrahim - Server ID:
handoff-mcp-server - MCP Server URL:
https://handoff-mcp-server-production.mcp.xpay.sh/mcp?key=xpay_sk_...
Agentverse
- Create a new agent and attach MCP server:
- URL:
https://handoff-mcp-server-production.mcp.xpay.sh/mcp?key=xpay_sk_... - Headers:
x-api-key: <MCP_API_KEY>for tool execution paths
- URL:
Recommended Extra Discovery Listings
- PulseMCP directory
- mcp.so
- OpenTools catalog
- MCPmarket / mcpservers.org
Use the same canonical MCP URL and matching auth notes everywhere to avoid inconsistent behavior.
Frequently asked questions
What is io.github.josephibra/handoff-mcp-server?
Durable agent-to-agent handoffs and shared scratchpad for multi-agent workflows.
How do I install io.github.josephibra/handoff-mcp-server?
It runs as a remote server. In Claude Code: claude mcp add --transport http handoff-mcp-server 'https://handoff-mcp-server-production.mcp.xpay.sh/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.josephibra/handoff-mcp-server need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is io.github.josephibra/handoff-mcp-server open source?
Its code is public on GitHub, but the repository does not declare a standard license.
Who maintains io.github.josephibra/handoff-mcp-server?
It is published by josephibra. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.