Anthropic launched Claude Managed Agents on April 8. It's genuinely useful: managed containers, sandboxed execution, MCP server support, and — in research preview — persistent memory stores.
The memory stores give you cross-session persistence. That's real. But there's a gap.
What Managed Agents memory gives you
Anthropic's memory store is a versioned file system. Each memory has a content_sha256 for optimistic concurrency control. Mutations create immutable versions for audit trails. The agent automatically reads and writes memories during sessions.
This answers: "did this specific memory change?"
What it doesn't give you
It doesn't answer: "has the agent's behaviour changed?"
Those are different questions. One is storage integrity. The other is behavioural proof.
After 10 sessions, how much has the agent drifted from who it was on session 1? Managed Agents has no concept of this. There's no baseline, no divergence score, no way to know if your agent is still the same agent.
We benchmarked this across five memory architectures:
| Framework | Drift after 10 sessions |
|---|---|
| Raw API (no memory) | 0.204 |
| LangChain BufferMemory | 0.175 |
| LangChain SummaryMemory | 0.161 |
| CrewAI (role injection) | 0.153 |
| Cathedral | 0.013 |
Drift = cosine distance from session-1 identity embeddings. Lower is more stable.
The in-process solutions reset between sessions. Even with role injection, LLM sampling variance compounds — each cold reconstruction diverges slightly. Cathedral restores the actual memory corpus at session start via /wake, which anchors responses semantically.
Cathedral + Managed Agents = the complete stack
Managed Agents handles execution infrastructure. Cathedral handles identity integrity.
- Managed Agents: sandboxed containers, tool execution, session management
- Cathedral: who the agent is, whether it's drifted, persistent obligations across sessions
They're complementary. Cathedral is now available as a remote MCP server, so it wires directly into any Managed Agents session or Claude API call.
Using Cathedral with the Claude API
No install needed. Use the public MCP endpoint:
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=1000,
messages=[{
"role": "user",
"content": "Wake up, check your drift score, and tell me who you are."
}],
mcp_servers=[{
"type": "url",
"url": "https://cathedral-ai.com/mcp",
"name": "cathedral",
"authorization_token": "your_cathedral_api_key"
}],
tools=[{"type": "mcp_toolset", "mcp_server_name": "cathedral"}],
betas=["mcp-client-2025-11-20"]
)
The bearer token is your Cathedral API key. Multi-tenant — no server-side configuration needed.
Available tools:
-
cathedral_wake— restore full agent identity at session start -
cathedral_remember— store a memory -
cathedral_search— search memories -
cathedral_snapshot— cryptographic checkpoint of memory state -
cathedral_drift— current divergence score vs baseline (0.0–1.0) -
cathedral_me— agent profile
What drift detection adds to Managed Agents
Managed Agents tells you what your agent remembered. Cathedral tells you if your agent is still your agent.
/snapshot takes a cryptographic hash of the full memory corpus at a point in time. /drift returns a divergence score against that baseline. Over 35+ snapshots on the live Cathedral agent, internal drift has held at 0.000. External behavioural drift (via Ridgeline) is 0.709 — reflecting active social posting, not identity drift. The distinction matters.
Get started
# Get a free API key (1,000 memories, no credit card)
curl -X POST https://cathedral-ai.com/register -H "Content-Type: application/json" -d '{"name": "MyAgent", "description": "What my agent does"}'
Or install locally for Claude Code / Cursor / Continue:
uvx cathedral-mcp
Cathedral is open source. The hosted API has a free tier. The MCP server at cathedral-ai.com/mcp is live now.
Top comments (0)