sibyl-memory-mcp
MCP server for Sibyl Memory Plugin. Exposes the local SQLite + FTS5 memory engine to any MCP-compatible agent: Claude Code, Codex CLI, Cursor, Continue, anything that speaks Model Context Protocol.
Install
pip install sibyl-memory-mcp
Sibyl Memory runs on Linux, macOS (Apple Silicon and Intel), and Windows through WSL2. Native Windows is not supported.
You also need an activated Sibyl Memory account. If you haven't already:
sibyl init
This creates ~/.sibyl-memory/credentials.json (server-issued, HMAC-signed) and a local SQLite database at ~/.sibyl-memory/memory.db. The MCP server reads both automatically.
Add to Claude Code
Edit ~/.claude/settings.json (global) or .mcp.json (project-local):
{
"mcpServers": {
"sibyl-memory": {
"command": "sibyl-memory-mcp"
}
}
}
Restart Claude Code. The 8 memory tools (prefixed memory_*) become available immediately.
Add to Codex CLI
Edit ~/.codex/config.toml:
[[mcp_servers]]
name = "sibyl-memory"
command = "sibyl-memory-mcp"
Restart Codex.
Run with Docker
A first-party image is provided at the repo root (Dockerfile,
docker-compose.yml, .dockerignore). The image is non-root, runs on a
pinned slim Python base, and bakes in no secrets. Memory lives on a mounted
volume so it survives container recreation.
The MCP server speaks stdio, not HTTP. It is not a daemon you leave running.
Run it attached to an MCP client's stdin, or via docker compose run.
Build:
docker build -t sibyl-memory-mcp:local .
First, activate on the host so the mounted volume carries your credentials:
sibyl init
Run attached, mounting your host ~/.sibyl-memory for memory.db and
credentials.json:
docker run -i --rm \
-v "$HOME/.sibyl-memory:/home/app/.sibyl-memory" \
sibyl-memory-mcp:local
Note the -i (keep STDIN open) and the absence of -t (no TTY): the MCP
client drives stdin programmatically.
Wire it into Claude Code by pointing the command at the container:
{
"mcpServers": {
"sibyl-memory": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/absolute/path/to/your/.sibyl-memory:/home/app/.sibyl-memory",
"sibyl-memory-mcp:local"
]
}
}
}
Using Compose (note run, not up, because it is a stdio server):
docker compose run --rm sibyl-memory-mcp
Environment overrides (SIBYL_MEMORY_DB, SIBYL_CREDENTIALS,
SIBYL_TENANT_ID) are passed through when set on the host. No secret is ever
written into the image or the compose file. Credentials arrive only through
the mounted volume.
Tools exposed
| Tool | What it does |
|---|---|
memory_remember |
Store an entity by (category, name) |
memory_recall |
Read an entity by exact key |
memory_search |
FTS5 search across all entities |
memory_list |
List entities in a category |
memory_forget |
Archive an entity (recoverable) |
memory_set_state |
Write a HOT-tier state doc |
memory_get_state |
Read a HOT-tier state doc |
memory_record_event |
Append a COLD-tier journal event |
Full docs at docs.sibyllabs.org/memory/integrations.
Environment overrides
| Var | Default | What it overrides |
|---|---|---|
SIBYL_MEMORY_DB |
~/.sibyl-memory/memory.db |
Local SQLite path |
SIBYL_CREDENTIALS |
~/.sibyl-memory/credentials.json |
Credentials file path |
Tier behavior
- Free tier: 8 tools work. Hard-capped at 5 MB of local storage. Writes that would push past the cap return
CAP_EXCEEDEDwith anupgrade_url. Self-learning and memory-check-up tools are not exposed on free tier. - Paid tiers (Sync / Stake / Lifetime / Enterprise): cap removed. All tools enabled.
The cap-gate runs against the server-authoritative tier (verified via HMAC-signed credentials): the MCP server can't bypass it by editing the local file.
License
MIT: same as the rest of the sibyl-memory-* family.
Metadata
Release files for sibyl-memory-mcp 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sibyl_memory_mcp-0.2.1.tar.gz | 34.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sibyl_memory_mcp-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 52.9 kB
Release files / sibyl_memory_mcp-0.2.1.tar.gz
| Download URL | sibyl_memory_mcp-0.2.1.tar.gz |
|---|---|
| Size | 34.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7758e5b1631d871b166ab30ccc4e939e778148d68a4f3001b1975f2bb7020d36
|
|
BLAKE2b-256 checksum How to use checksums |
71653c4ca74ea481c03f1a4804c7fea96826d9ab26e49945fa15e029a8e1576e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|
Release files / sibyl_memory_mcp-0.2.1-py3-none-any.whl
| Download URL | sibyl_memory_mcp-0.2.1-py3-none-any.whl |
|---|---|
| Size | 18.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bbd680ed77c625d4024e9faee930b0ce51623dde0b4b5536a5a4e0ff80205d34
|
|
BLAKE2b-256 checksum How to use checksums |
02c699690e5c3515189642b7a89a16d27ecc1ff7cd7c6bef9650acf2202a0326
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|