Skip to main content
Base URL: https://mcp.atlaso.ai/developer/v1. Authenticate with a project key + subject, or a device bearer — see Authentication. All bodies are JSON.

Remember

Store a memory in a subject’s bag. POST /memories Body Pass an optional Idempotency-Key header to make retries safe (details).
Response
redacted lists the category names of any recognized secrets, credentials, or high-entropy tokens scrubbed before storing, such as aws_access_key or high_entropy. It never contains the removed values.

Recall

Retrieve the most relevant memories for a subject, semantically ranked. GET /recall?q=<query>&limit=<n>
Response
  • is_confident — whether Atlaso is confident in the result (top level = the overall answer; per-result = that memory).
  • has_disagreement / conflict_peers — set when the subject holds conflicting memories (e.g. “likes window seats” vs a later “now prefers aisle”). Atlaso surfaces both rather than silently picking one; you decide which to trust.

Delete a memory

Hard-delete one memory. Idempotent — deleting something already gone returns deleted: false, not an error. DELETE /memories/{id}?reason=<optional>
This is a real erase — the memory, its search index, and its conflict links are removed, not tombstoned.

Delete a subject (GDPR)

Purge an end-user’s entire memory bag in one call — for a “delete my data” request. DELETE /subjects/{subject}?reason=<optional>
The subject in the path must match the subject you’re authenticated as (mismatch → 403). Idempotent, and it frees the storage the subject used.

Device credentials

Mint, batch-enroll, and revoke per-device credentials. These use the project key only (no subject header). Full guide: Devices & hardware.
full_token is shown once for a newly minted credential — flash it to the device and store nothing else. For batch enrollment, send the devices and an optional fleet-level group_id:
The response wraps each credential in credentials and includes the total:
Re-enrolling the same external_device_id returns the existing credential with existing: true and full_token: null. Revocation returns the number of credentials revoked: