For developers

Memory and continuity for your agents, over MCP.

Boswell is a tenant-scoped, versioned memory service that your agents reach through the Model Context Protocol. Branches, commits, bookmarks, tasks, search, and recall that outlive any one session or model. Invitation-only private beta, running on Atlas, used inside Claude Code and Codex today.

// Status

The service, right now.

Read live from the v3 service's public health document. The same endpoint your agents will talk to.

Checking…
Version
Build
Schema
Platform
Database
Embeddings
Encryption
Audit

Endpoints: https://boswellmcp.com/mcp (MCP, streamable HTTP), https://boswellmcp.com/status (this health document). Boswell 6, the archive pipeline with curation and provenance, is in development and not launched yet.

// Quickstart

Three steps to a remembering agent.

01

Get an invitation

Boswell is an invitation-only private beta. Have a conversation at askboswell.com and enter your invite code on the page it builds for you. The invitation page creates your tenant and shows your API key once, with the exact connection commands filled in. No invite code yet? The page Boswell builds for you says how to ask for one.

02

Connect your client

Any MCP client that speaks streamable HTTP can connect. These two are used every day:

# Claude Code
claude mcp add --transport http --scope user boswell https://boswellmcp.com/mcp --header "X-API-Key: $BOSWELL_API_KEY"

# Codex
codex mcp add boswell --url https://boswellmcp.com/mcp --bearer-token-env-var BOSWELL_API_KEY

Clients that speak MCP OAuth discover the resource at /.well-known/oauth-protected-resource/mcp. API keys are tenant-scoped; keep them out of prompts and repositories.

03

Start a session, then remember on purpose

Open each session with boswell_startup to load your commitments, the recent thread, and open tasks. Stage observations with boswell_bookmark as you work; commit decisions with boswell_commit, capturing the why, not only the what. Bring things back with boswell_search and boswell_recall. Nightly consolidation promotes the bookmarks that proved useful.

# the rhythm of a session
boswell_startup   { verbosity: "warm" }
boswell_bookmark  { branch, summary, salience: 0.3 }
boswell_commit    { branch, message, content: { decision, why, how } }
boswell_search    { query }          # hybrid lexical + semantic
boswell_recall    { commit }         # the full record by hash

// Tools

The surface your agent works with.

Grouped by job. The authoritative list is whatever the server returns to tools/list for your tenant; this is the map.

Orientation

  • boswell_startup · commitments, recent thread, open tasks, once per session
  • boswell_brief · what changed since you last looked
  • boswell_handshake · full tenant orientation in one call
  • boswell_manifest · the tenant's standing commitments
  • boswell_task_briefing · context for one task
  • boswell_episode_recap, boswell_reflect, boswell_bootloader · recap, reflection, and the minimal boot record

Memory

  • boswell_bookmark · stage an observation; salience decides promotion
  • boswell_commit · preserve a decision or insight, with the why
  • boswell_search / boswell_semantic_search · hybrid or vector search
  • boswell_recall · a specific memory by commit or blob hash
  • boswell_log, boswell_head, boswell_branches, boswell_checkout · the git-shaped history
  • boswell_consolidate, boswell_checkpoint, boswell_replay, boswell_resume · consolidation and continuity

Tasks

  • boswell_create_task, boswell_claim_task, boswell_update_task, boswell_release_task, boswell_delete_task
  • boswell_update_plan, boswell_resume_tasks, boswell_halt_tasks, boswell_halt_status

Trails & graph

  • boswell_record_trail, boswell_hot_trails, boswell_trails_from, boswell_trails_to
  • boswell_graph, boswell_link, boswell_links, boswell_landscape
  • boswell_decay_status, boswell_decay_forecast, boswell_trail_health · what is fading and when

Governance

  • boswell_quarantine_list / boswell_quarantine_resolve · doubtful material stays out of default recall
  • boswell_hygiene_list / boswell_hygiene_resolve, boswell_immune_status
  • boswell_validate_routing, boswell_silt, boswell_resurrect, boswell_buried_memories

Vault

  • boswell_vault_put / boswell_vault_get / boswell_vault_list / boswell_vault_delete
  • Each secret is encrypted with AES-256-GCM under its own key and returned as a vault:// handle; listing never shows values. Needs the protected vault:access scope.

// Memory model

Git-shaped memory that learns what matters.

Every tenant gets its own graph. Inside it, memory is versioned like code and weighted like a mind.

Branches & commits

Branches keep different parts of the work distinct and connected. Commits are immutable, timestamped records with their reasoning attached; a change creates a new version and the old one stays intact.

Bookmarks & consolidation

Bookmarks catch observations quickly, with a salience score. Nightly consolidation promotes the ones that earned it into permanent commits and lets the rest settle.

Trails & decay

Relationships between memories are weighted trails. Travelled trails strengthen; untravelled ones fade on an FSRS-inspired curve. Recall follows the shape of your work.

Search & recall

Hybrid search fuses lexical and vector results, with supersession applied so newer facts outrank the ones they replaced. Anything can be recalled exactly by hash.

Tasks & trails of work

Tasks, plans, and claims live beside the memory they came from, so a second model, or a second session, can pick up work without a rebrief.

Boundaries

Tenant-scoped API keys and row-level database controls keep each graph its own. Encryption at rest is configured, audit is on, provenance rides with every memory, and doubtful material is quarantined rather than recalled by default.

Where these ideas come from, and what they feel like in use: Where it comes from →. Why the layer exists at all: a response to the frontier-ecosystem thesis →.

// FAQ

Before you paste a key.

What actually leaves my machine?

Only what your agent chooses to store: the summaries, decisions, tasks, and secrets it hands to the tools. Boswell never reads your files or your prompts on its own. Retrieval sends back what you stored, ranked.

Who can read my memory?

Your tenant, through your key. Each invitation creates one tenant with its own graph, isolated by tenant-scoped keys and row-level database controls. Encryption at rest is configured and every access is audited. Deletion requests go through the privacy page.

Does it work with my client?

Claude Code and Codex are used with it every day. Any MCP client that speaks streamable HTTP and can send a bearer token or an X-API-Key header should connect the same way; clients that speak MCP OAuth find the resource metadata at /.well-known/oauth-protected-resource/mcp.

Is the memory shared across models?

Yes. The graph belongs to the tenant, not to a model. A session in Claude Code and a session in Codex read and write the same branches, commits, and tasks, and inherit the same standing commitments.

What does "forgetting" mean here? Is anything deleted?

Decay changes what surfaces, not what exists. Commits are immutable. Memories that go unused sink out of default recall on an FSRS-inspired curve; a deep search still reaches them, and boswell_resurrect brings one back. Where that idea comes from →

Bookmark or commit?

Bookmark by default: observations, patterns, anything that might matter, with a salience score. Commit for decisions, architectural choices, completed work, and rules, and write down the why. Nightly consolidation promotes the bookmarks that earned it.

What happens to my key?

The invitation page shows it once. Put it in your client's configuration or a secret manager, never in a prompt or a repository. Keys are tenant-scoped, so a key only ever reaches its own graph.

What does the beta cost, and can I self-host?

Nothing during the private beta; the invitation is the whole price. The service runs on our own infrastructure and there is no self-hosted edition today.

What is Boswell 6?

The next release: an archive pipeline that ingests your existing history with curation and provenance, so the memory does not start empty. It is in development and not launched yet. The status panel above always says what is running now.

Try the memory before you wire the agent.

Four turns, then a page built from what you said. The invitation is on that page.

Tell Boswell about yourself →