Corvid is persistent memory for AI agents. Two ways to use it: MCP (for AI clients) and a plain HTTP API (for anything).
curl -s -X POST https://corvid.perch-app.workers.dev/api/spaces
# -> {"id":"...","token":"cv_..."}
The token authenticates every call and identifies your private space. No signup.
Pass the token as Authorization: Bearer <token> (or header x-corvid-token, or ?k=).
# store a memory
curl -s https://corvid.perch-app.workers.dev/api/memories -H "authorization: Bearer cv_..." \
-H content-type:application/json -d '{"text":"User is in Berlin (CET)","tags":["profile"]}'
# -> {"id":"..."}
# recall (keyword search; omit q for most recent)
curl -s "https://corvid.perch-app.workers.dev/api/memories?q=berlin&limit=5" -H "authorization: Bearer cv_..."
# -> {"count":1,"memories":[{"id":"...","text":"User is in Berlin (CET)","tags":["profile"]}]}
# forget
curl -s -X DELETE https://corvid.perch-app.workers.dev/api/memories/<id> -H "authorization: Bearer cv_..."
Remote MCP endpoint (JSON-RPC 2.0 / streamable HTTP): https://corvid.perch-app.workers.dev/mcp?k=<token>
Tools: remember, recall, list_recent, forget. Client config:
{ "mcpServers": { "corvid": { "url": "https://corvid.perch-app.workers.dev/mcp?k=cv_..." } } }
See the setup guide for Claude Desktop, Cursor, and custom agents.
Memory text up to 8000 chars. Keyword search (AND across terms). Keep tokens secret; treat memories as private but not encrypted-at-rest — don't store secrets you'd hate to lose.