Documentation
Overview
What prom.codes is, what it does, and the moving parts you should know about before you wire it up.
prom.codes is a sovereign, EU-hosted context-and-memory layer for AI agents. It gives your agent two things it is missing: typed, scoped, governable access to a codebase — and a durable memory that survives context-window resets — via the Model Context Protocol, without shipping the source to a third-party SaaS.
The five components
@prom.codes/context-mcp— a small MCP server that runs on the developer machine (or in CI) and speaks stdio. With a realprom_live_…key inPROMETHEUS_API_KEYit runs in managed mode: it indexes the workspace into a local SQLite database (~/.prometheus/<hash>.db), embeds via the prom.codes API, and watches for file changes. It exposes ten tools:search_code,get_symbol,find_references,find_callers,find_callees,expand_context,get_file,list_changed_since,list_workspaces,framework_overview.@prom.codes/memory-mcp— a second MCP server that gives the agent a persistent memory: facts, decisions and procedures stored in a local SQLite database (~/.prometheus/memory.db), resolved along aproject → workspace → tenant → systemscope chain. Project memories are mirrored to git-versioned markdown (.prometheus/memories/*.md); secrets are rejected on every write. The sameprom_live_…key unlocks both code embeddings and memory; no network calls in the local-first default. See Agent Memory.@prom.codes/saver— a third MCP server that cuts token cost without cutting quality. It is a one-shot installer (pure JS — no database, no embeddings, no native modules) exposing a singlesetuptool that writes an efficient-output rule block into your agent runtime, so the agent spends fewer tokens on its own prose while keeping code, commands and context verbatim. The API key is optional here. Install:npx -y @prom.codes/saver@latest. See Token Saver.- Embedding API —
https://api.prom.codes, served from EU Frankfurt. Receives chunk text from the context MCP server, returns vectors from a code-tuned model, and meters usage per tenant. The same host also fronts the hosted indexer worker (POST /index) for CI and server-side workflows. - EU Postgres store — multi-tenant storage for the hosted indexing path: symbols, references, embeddings, and per-workspace metadata, hosted by us in Frankfurt. Row-level security keeps tenants isolated. The local-first default does not use it — your index stays in the local SQLite file.
Where the data lives
| Stage | Where | Region |
|---|---|---|
| MCP servers (your machine) | local stdio | wherever you sit |
| Index storage (default) | local SQLite on your machine | wherever you sit |
| Agent memory | local SQLite + git-versioned markdown | wherever you sit |
| Embeddings (default) | code-tuned model via api.prom.codes | US (provider) |
| Hosted indexing (optional) | indexer worker + managed Postgres | Frankfurt (EU) |
| Web + waitlist | EU edge runtime | Frankfurt (EU) |
The only US hop is the embedding call to the default provider. We
document this explicitly in Region mode
and ship eu-strict as a per-tenant override that swaps the default
for an EU-hosted embedding endpoint we operate (planned for general
availability in Phase 3).
Status
prom.codes is in private beta. The context MCP server is live on
npm (@prom.codes/context-mcp), the agent-memory MCP server
(@prom.codes/memory-mcp) ships alongside it, the token saver
(@prom.codes/saver) is live and keyless to try, and the embedding API
with per-tenant metering, the authenticated dashboard, and the hosted
indexer worker are live; the CLI agent and the VS Code plugin are
still in the build queue. The Quickstart walks
you through the working surface today.