stdio / npm package
The
@memorycrystal/mcp-server npm package. Best for tools like Claude Desktop that launch MCP servers as local processes.Streamable HTTP server
A standalone HTTP server at
http://localhost:3100/mcp. Best for connecting multiple clients or running the server persistently.stdio / npm package
Install
Configure
Set these environment variables before running:| Variable | Required | Description |
|---|---|---|
MEMORY_CRYSTAL_API_KEY | Yes | Your Memory Crystal API key |
MEMORY_CRYSTAL_API_URL | Yes | Your Memory Crystal backend URL, e.g. https://<your-deployment>.convex.site |
Run
Streamable HTTP server
The Streamable HTTP server is a standalone Node.js service that exposes Memory Crystal over MCP’s HTTP transport. Run it once and connect any number of MCP clients to it.Configure
| Variable | Default | Description |
|---|---|---|
MEMORY_CRYSTAL_API_KEY | — | Your Memory Crystal API key. Required unless clients send Authorization: Bearer <key> |
MEMORY_CRYSTAL_API_URL | — | Your Memory Crystal backend URL |
PORT | 3100 | Port the server listens on |
HOST | 0.0.0.0 | Host the server binds to |
Run
From the monorepo root:| Endpoint | Purpose |
|---|---|
http://localhost:3100/mcp | MCP Streamable HTTP endpoint |
http://localhost:3100/health | Health check |
Health check
The Streamable HTTP server is stateless — each request is independent. You can run multiple instances behind a load balancer if needed.
Available tools
Both server variants expose the same set ofcrystal_* tools:
| Tool | What it does |
|---|---|
crystal_wake | Session startup briefing — loads active goals, recent decisions, and pending work |
crystal_remember | Store a memory manually — decisions, facts, lessons, anything worth keeping |
crystal_recall | Semantic search across long-term memory |
crystal_recent | Fetch recent messages for short-term context |
crystal_search_messages | Search verbatim conversation history |
crystal_what_do_i_know | Snapshot of everything known about a topic |
crystal_why_did_we | Decision archaeology — understand why a past decision was made |
crystal_who_owns | Find who owns a file, module, or area |
crystal_explain_connection | Explain the relationship between two concepts |
crystal_dependency_chain | Trace dependency chains between entities |
crystal_preflight | Pre-flight check before risky actions — returns relevant rules and lessons |
crystal_trace | Trace a memory back to its source conversation |
crystal_checkpoint | Save a session checkpoint |
crystal_forget | Archive (soft-delete) a memory |
crystal_stats | Memory and usage statistics |
crystal_list_knowledge_bases | List available knowledge bases |
crystal_query_knowledge_base | Search within a specific knowledge base |
crystal_import_knowledge | Import reference chunks into a knowledge base |
The stdio package also exposes
crystal_edit and crystal_ideas / crystal_idea_action for editing existing memories and managing Organic idea discoveries.