EngramPort Docs
Everything you need to install EngramPort, wire it into your MCP client, and use the tools. A hosted docs site at docs.engramport.com ships shortly; this page is the current single source of truth.
1. Quick install
EngramPort is an npm package that speaks the Model Context Protocol (MCP). It runs as a stdio process spawned by your MCP client (Claude Desktop, Cursor, Continue.dev, etc.) and proxies all calls to api.engramport.com with your ek_ key.
npm install -g engramport
Requires Node 18 or newer. Works on macOS, Windows, and Linux. If you don't have an ek_ key yet, create a tenant (free tier, no credit card).
2. Three environment variables
Every MCP client config wires these three vars. The key was shown once on the signup reveal screen — if you lost it, email hello@covenantsystems.ai with your tenant slug and we'll issue a replacement.
ENGRAMPORT_API_URL=https://api.engramport.com ENGRAMPORT_API_KEY=ek_live_… # your tenant's key ENGRAMPORT_NAMESPACE=your-slug-default # tenant_slug + "-default"
3. Claude Desktop
The fastest path. The engramport package auto-detects when it's spawned by Claude Desktop (no TTY) and runs in stdio mode.
Config file location
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Config entry
{
"mcpServers": {
"engramport": {
"command": "engramport",
"env": {
"ENGRAMPORT_API_URL": "https://api.engramport.com",
"ENGRAMPORT_API_KEY": "ek_live_…",
"ENGRAMPORT_NAMESPACE": "your-slug-default"
}
}
}
}If you have an existing config with other servers, add the engramport entry under the same mcpServers block. Then fully quit Claude Desktop (tray icon → Quit) and reopen.
4. Cursor
Cursor supports MCP servers via its .cursor/mcp.json file. Same env vars as Claude Desktop.
{
"mcpServers": {
"engramport": {
"command": "engramport",
"env": {
"ENGRAMPORT_API_URL": "https://api.engramport.com",
"ENGRAMPORT_API_KEY": "ek_live_…",
"ENGRAMPORT_NAMESPACE": "your-slug-default"
}
}
}
}Reload Cursor after editing. The tools will show up in any chat with MCP enabled.
5. Continue.dev
Continue.dev reads MCP servers from ~/.continue/config.json. Add EngramPort under the mcpServers key:
{
"mcpServers": {
"engramport": {
"command": "engramport",
"env": {
"ENGRAMPORT_API_URL": "https://api.engramport.com",
"ENGRAMPORT_API_KEY": "ek_live_…",
"ENGRAMPORT_NAMESPACE": "your-slug-default"
}
}
}
}6. Custom agent or other MCP client
Any MCP-speaking client can use EngramPort. Spawn engramport as a child process with the three env vars set; it speaks MCP JSON-RPC over stdio. For REST-style access (n8n, Zapier, custom HTTP clients), call the OpenAPI surface directly at api.engramport.com/v2/* with your ek_ key in the X-API-Key header.
See the OpenAPI 3.1 spec for the full surface, or import it into Postman / ChatGPT Custom GPT Actions / your tooling of choice.
7. Tool reference
The MCP client surfaces these as named tools the agent can call directly. Each maps to a REST endpoint at api.engramport.com.
| Tool | REST | What it does |
|---|---|---|
remember | POST /v2/memory | Store a memory in your namespace. Auto-links to similar nodes. |
recall | POST /v2/recall | Semantic search across your namespace. Returns direct matches + graph-connected context. |
chat | POST /v2/chat | Ask a question grounded in your memory. Modes: reflex (fast), deep_think (multi-step). |
groom | POST /v2/brain/groom | Discover edges between recent memories. Adds typed connections; doesn't delete. |
dream | POST /v2/brain/dream | Synthesize insights and principles from clustered memories. |
inspect | GET /v2/brain/stats | Stats and health for a namespace (counts, edges, GQI). |
reflect | POST /v2/brain/dream | Client-side alias of dream with a focus parameter recorded for diagnostics. |
upload | POST /v2/memory/bulk | Ingest a document by chunking it into multiple memories. |
8. Namespaces, scopes, and plans
Every tenant gets a default namespace at signup: <slug>-default. Paid plans (Hobbyist and up) can create additional namespaces for separating contexts (work / personal / a specific project).
API keys are scoped to one or more namespaces. The signup-issued admin key has access to all your namespaces. You can mint additional scoped keys via the dashboard (shipping with the next release).
Plan limits and current usage are visible on your dashboard. See the home page for the full plan ladder.
9. Bring your own LLM
EngramPort routes inference through your own provider key. Anthropic, OpenAI, Google, DeepSeek, and Mistral are all supported. The credential management UI ships with the next dashboard release; in the meantime save your key via:
curl -X POST https://api.engramport.com/v1/llm-credentials/save \
-H "X-API-Key: ek_live_…" \
-H "Content-Type: application/json" \
-d '{"provider": "anthropic", "label": "default", "key": "sk-ant-…"}'Provider keys are encrypted at rest using AES-256-GCM. We use them only to make inference calls on your behalf; never logged, never shared.
10. Troubleshooting
Tools don't appear in Claude Desktop after restart
Make sure you fully quit Desktop (tray icon → Quit, not just close the window) before reopening. Also verify the JSON in your config file parses — a stray comma or missing brace will silently disable the entry.
"EADDRINUSE" or banner garbage at startup
This was a bug in engramport@2.0.0 where the package defaulted to HTTP mode and printed a startup banner to stdout. Fixed in 2.0.1: npm install -g engramport@latest to upgrade.
"401 Unauthorized" on every call
The ENGRAMPORT_API_KEY env var isn't reaching the spawned process. Double-check it in your MCP client config under the env block (not at the top level of the config). The value should start with ek_live_.
"429 Too Many Requests" on signup
IP-based rate limit. Wait an hour or sign up from a different network. If you're hitting this from a corporate or shared network (coffee shop, VPN), email hello@covenantsystems.ai and we'll provision your account manually.
"Daily LLM spend cap reached" mid-session
Pro and Team plans have an internal $/day safety cap to prevent runaway agents from draining margin. Cap resets at UTC midnight. Contact support if you need a higher cap.
"Memory limit reached" on the free plan
Free tier caps at 1,000 stored memories per tenant. Upgrade to Hobbyist (10,000 memories, 5 namespaces) for $9/mo. Existing memories aren't deleted; you just can't add new ones until you either upgrade or delete some.
11. Limits at a glance
| Plan | Engrams | Namespaces | Chats/day | Dreams/day |
|---|---|---|---|---|
| Free | 1,000 | 1 | 10 | 1 |
| Hobbyist | 10,000 | 5 | 100 | 5 |
| Pro | 100,000 | ∞ | ∞ | ∞ |
| Team | 1,000,000 | ∞ | ∞ | ∞ |
Pro and Team enforce an internal $/day LLM spend cap as a safety net (Pro: $5/day, Team: $20/day). Resets at UTC midnight. Designed to bound runaway agent costs without bothering normal users.
12. Got a question
Email hello@covenantsystems.ai and we'll respond same-day or next-business-day. Security reports go to the same address; responsible disclosure appreciated.
For deeper context, read the technical whitepaper or browse the OpenAPI surface at api.engramport.com/openapi.json.