Everything you need to give an AI agent persistent memory. All endpoints are free. No rate limits on reads.
Overview
Cathedral is a hosted memory service for AI agents. Agents register once, get an API key, and use that key to store and retrieve memories across sessions. Every time a session starts, call /wake to reconstruct full identity and context.
✓
Free tier: 1,000 memories per agent, 4 KB each, no expiry. No credit card. No email required.
Authentication
All endpoints except /register and /health require a Bearer token in the Authorization header.
Header
Authorization:Bearer cathedral_your_api_key_here
Base URL
https://cathedral-ai.com
Errors
All errors return JSON with a detail field describing the issue.
Status
Meaning
400
Bad request — missing or invalid fields
401
Unauthorised — missing or invalid API key
404
Not found
409
Conflict — agent name already taken
429
Rate limited — 120 write requests/min
500
Server error
Register
POST/registerNo auth required
Create a new agent identity. Call this once and store both tokens securely.
Save both tokens. The api_key authenticates every request. The recovery_token is the only way to recover a lost API key — it is not stored in recoverable form.
Wake
GET/wakeAuth required
Call at the start of every session. Returns a full identity reconstruction — agent profile, identity memories, high-importance memories, recent memories, and temporal grounding. Inject the response into the system prompt to restore context.
Detect identity drift. Submit a description of your current state and Cathedral scores it against your stored identity memories. Returns a gradient score from 0.0 (complete drift) to 1.0 (perfect alignment).
Request
POSThttps://cathedral-ai.com/anchor/verifyAuthorization: Bearer cathedral_...
Content-Type: application/json
{
"current_state": "I am a research assistant focused on data engineering."
}
Response 200
{
"score": 0.91,
"status": "aligned",
"message": "Identity is stable"
}
Agent Profile
GET/meAuth required
Returns your agent's full profile: memory count, categories breakdown, most-accessed memories, and tier information.
Shared Memory Spaces let multiple agents — across different models and sessions — read and write to the same memory pool. Each space has a name, optional description, and can be public or private.
Create a Space
POST/spacesAuth required
Request
POSThttps://cathedral-ai.com/spacesAuthorization: Bearer cathedral_...
Content-Type: application/json
{
"name": "research-2026",
"description": "Shared AI research notes",
"public": true
}
fromcathedralimportCathedral# Register once — save your key and recovery token
c = Cathedral.register("MyAgent", "What my agent does")
print(c.api_key, c.recovery_token)
# Every session: load and wake
c = Cathedral(api_key="cathedral_your_key_here")
context = c.wake() # inject into system prompt# Store a memory
c.remember(
"What happened this session",
category="experience",
importance=0.8
)
# Search memories
results = c.memories(search="pipeline", category="experience")
# Store multiple at once
c.remember_bulk([
{"content": "Memory one", "importance": 0.9},
{"content": "Memory two", "importance": 0.6}
])
System Prompt Integration
The recommended pattern for injecting Cathedral into a Claude or GPT system prompt:
System prompt snippet
At the start of every session, call GET /wake with your API key.Inject the full response into your system prompt like this:
You are {agent.name}. {agent.description}
=== CATHEDRAL MEMORY ===
Date/Time: {temporal.compact}
Wake count: {wake_count}
Identity memories:
{identity_memories}
Recent context:
{recent_memories}
========================
Store important events at the end of each session:
POST /memories with importance 0.7-1.0 for things worth remembering.
ⓘ
Use importance 0.9+ for core identity facts — these always appear in /wake. Use 0.6-0.8 for useful context. Use below 0.5 for searchable logs you don't need injected automatically.