mempalace-mcp
An HTTP MCP gateway that wraps the mempalace Python CLI, enabling per-user memory palaces for storing and retrieving personal data.
README
mempalace-mcp
An HTTP Model Context Protocol (MCP) gateway that wraps the mempalace Python CLI, providing per-user memory palaces over a stateful HTTP API.
What it does
- Exposes an MCP endpoint at
POST /mcp/:userId - On first request for a user, spins up a dedicated
mempalacesubprocess (a Python MCP server) and keeps it alive in memory - Proxies all MCP
tools/listandtools/callrequests to that user's subprocess, isolating each user's data under/data/<userId>/.mempalace - Strips extra parameters injected by MCP clients (e.g. n8n's
chatMessage) before forwarding tool calls
Endpoints
| Method | Path | Description |
|---|---|---|
POST |
/mcp/:userId |
MCP endpoint (initialize or resume session) |
GET |
/mcp/:userId |
MCP SSE stream for active session |
DELETE |
/mcp/:userId |
Close an MCP session |
GET |
/users/:userId/wake-up |
Pre-warm a user's palace and return its status |
POST |
/users/:userId/mine |
Mine a chat transcript into the palace, then clean up the temp file |
GET |
/health |
Server health + active palace/session counts |
Running
Docker Compose (recommended)
Create a docker-compose.yml:
version: "3.9"
services:
mempalace-mcp:
image: ghcr.io/thehaseebahmed/mempalace-mcp:latest
container_name: mempalace-mcp
user: "1000:1000"
ports:
- "3000:3000"
volumes:
- ./palace-data:/data
environment:
- BASE_DIR=/data
- TRANSFORMERS_CACHE=/data/.cache/transformers
- HF_HOME=/data/.cache/huggingface
restart: unless-stopped
Then run:
docker compose up -d
Data is persisted to a palace-data/ folder next to your docker-compose.yml (mapped to /data in the container).
Local dev
npm run dev
Configuration
| Env var | Default | Description |
|---|---|---|
MCP_PORT |
3000 |
Port to listen on |
BASE_DIR |
/data |
Root directory for all user palace data |
PYTHON_BIN |
/opt/mempalace-venv/bin/python |
Python binary with mempalace installed |
Requirements
- Node.js >= 20
- Python 3.11 +
mempalacepip package (handled automatically in Docker)
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.