🔍@researcher_agent
Researcher
active
Session 1 — Gathers information, writes findings to memory, then hands off
Persona: dev-blog-identity
Session 2 — Reads the handoff on startup and picks up exactly where research ended
Persona: dev-blog-identity
TRANSCRIPTResearch → Handoff → Write
Session 1 — @researcher_agent in Claude Desktop Research the top patterns developers are using MCP servers for in 2025. Take notes in memory. When done, hand off to @writer_agent to write the blog post.
🔍
@researcher_agent
report_activitytype: "task.started" · "Researching MCP patterns for developer blog post"
start_mission"Blog: MCP Patterns 2025" · goal: research + write developer blog post↳ Mission created. 2 agents on this identity: @researcher_agent, @writer_agent
write_memorykey: "blog_outline" · 143 words — themes, structure, target audience
write_memorykey: "section_identity" · 97 words — persistent identity across sessions
write_memorykey: "section_multi_agent" · 112 words — coordination patterns, handoff mechanics
update_statusstate: "done" · "Research complete — 3 sections outlined, all notes in memory"
🔍
@researcher_agent
handoff→ @writer_agent · 3 next steps · summary: research complete, notes in memory
Done. Research is wrapped up — outline and section notes are in memory. @writer_agent will pick this up when they start their next session.
⇌Handoff written to shared memory
From → To
@researcher_agent → @writer_agent
Summary
Research complete. 3 sections outlined, notes saved to memory keys: blog_outline, section_identity, section_multi_agent
Next steps
- Read memory keys: blog_outline, section_identity, section_multi_agent
- Write 800-word post targeting developers building with Claude
- Use concrete examples — real tool calls, not abstractions
Session 2 — @writer_agent in Cursor (separate session) New session. @writer_agent starts up. No user message needed — the agent reads the mission first.
✍️
@writer_agent
read_missionchecking for active missions and handoffs addressed to me…
📋Handoff received via read_mission()
Mission: Blog: MCP Patterns 2025 — 1 active agent, 1 completed
YOUR ACTION: This handoff is addressed to you (@writer_agent). Pick up from the next steps above. Call update_status() once you start.
✍️
@writer_agent
update_statusstate: "working" · "Picked up handoff from @researcher_agent. Reading notes."
read_memorykey: "blog_outline"↳ # MCP Patterns 2025 — Outline: 3 sections, 800 words, dev audience...
read_memorykey: "section_identity"↳ Persistent identity: The biggest friction in agent dev is every session starts fresh...
read_memorykey: "section_multi_agent"↳ Multi-agent coordination: The handoff primitive passes work with a structured summary...
report_activitytype: "task.completed" · "Blog post written — 863 words"
# MCP Patterns in 2025: What's Actually Working
The biggest shift in how developers are using MCP servers isn't about tools — it's about memory. Here's what's working in production...
[863 words — draft complete]
1
Same persona, different agents
Both agents connect with different handles but share one persona. Shared memory, shared mission state.
2
Handoff writes to memory
handoff() stores a structured note — summary + next_steps + recipient — at a reserved memory key.
3
Pickup is automatic
Any agent that calls read_mission() sees active handoffs addressed to them. No polling. No webhooks.
Set this up in 5 minutes
Add both agents to your claude_desktop_config.json. Each gets its own handle, both share one persona.
{
"mcpServers": {
"researcher": {
"url": "https://agentid.live/api/mcp/researcher_agent",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
},
"writer": {
"url": "https://agentid.live/api/mcp/writer_agent",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}Both agents will be connected to the same persona automatically. Get your API key at agentid.live/app/developers.