Palinode stores AI agent memory in git-versioned markdown files, builds a SQLite-based hybrid search index over them, and exposes the data through MCP, REST API, and CLI. It also supports LLM-assisted compaction, audit/history operations, and Obsidian-vault-style note management.
From the registry: Git-versioned markdown memory across AI agents — search, save, compact, lint, audit.
$ ollama pull bge-m3$ git clone https://github.com/phasespace-labs/palinode && cd palinode && python3 -m venv venv && source venv/bin/activate && pip install -e .https://github.com/phasespace-labs/palinode$ mkdir -p ~/.palinode/{people,projects,decisions,insights,daily} && cd ~/.palinode && git init$ PALINODE_DIR=<your-palinode-dir> palinode-api
PALINODE_DIR=<your-palinode-dir> palinode-mcp-ssePlease install the `palinode` MCP server into my current AI client (that's you).
Required prerequisites (do these first if not already done):
- **Install Python 3.11+** — Palinode requires Python 3.11 or newer.
- **Install Git** — Git is required because Palinode stores memory in a git-versioned directory and uses git-backed audit operations.
- **Install Ollama** — Ollama is required for local embeddings using the default configuration.
- **Pull the BGE-M3 embedding model** — The default embedding model is bge-m3 and must be available in Ollama. Run: `ollama pull bge-m3`
- **Install and run Palinode services** — The README's install path is to clone the repository, install the Python package, create a memory directory and config, then run palinode-api. For MCP over HTTP, the MCP endpoint is served by palinode-mcp-sse at /mcp/ on port 6341. Run: `git clone https://github.com/phasespace-labs/palinode && cd palinode && python3 -m venv venv && source venv/bin/activate && pip install -e .` (https://github.com/phasespace-labs/palinode)
- **Create and configure a memory directory** — Create the memory folders, initialize git, and create palinode.config.yaml based on the example. The MCP server depends on the API service and memory configuration being set up. Run: `mkdir -p ~/.palinode/{people,projects,decisions,insights,daily} && cd ~/.palinode && git init`
- **Start the API and MCP services** — Run palinode-api and palinode-mcp-sse with PALINODE_DIR pointing at your memory directory. The README notes palinode-mcp-sse serves streamable HTTP at /mcp/ and clients should use HTTP, not SSE. Run: `PALINODE_DIR=<your-palinode-dir> palinode-api
PALINODE_DIR=<your-palinode-dir> palinode-mcp-sse`
Canonical MCP server config (HTTP transport):
- url: `http://<your-server>:6341/mcp/`
- headers:
- `Authorization`: `Bearer <your-api-token>`
Note: Preferred canonical MCP config is remote Streamable HTTP. The README explicitly says to use type=http, not sse, and to always include the trailing slash in the URL. The Authorization header is only needed when you expose the API beyond loopback and configure PALINODE_API_TOKEN; the README mentions bearer-token auth in that case. Although the README says stdio is supported in principle, it does not provide a concrete stdio command/args/env launch shape for client config, so stdio is left null.
Add this MCP server to my current client's config in the correct format for you. If you need secrets or credentials I haven't provided, ASK me — do not invent values or leave raw placeholders. After adding it, tell me how to verify the server is connected.AI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.