palinode

MCP.Pizza Chef: phasespace-labs

Palinode lets you store your AI assistant's memory as readable, version-controlled markdown files that include evidence and belief status. It indexes and searches this memory with keyword and semantic search, working seamlessly across apps like Claude Desktop, Cursor, and VS Code. You can edit memory directly, track changes with Git, and consolidate knowledge regularly. Setup requires installing Python, Git, and Ollama, making it suitable for developer users.

Files/PDF
Other
Writing

Use This MCP server To

Keep an auditable, versioned memory for my AI assistant Search AI memory with keyword and semantic queries Edit AI memory as markdown files in my editor Review and revert changes to AI memory when needed Use the same AI memory across multiple apps Compact and consolidate AI memory weekly with AI help Integrate AI memory into Claude Desktop or VS Code

README

┌─ palinode ─┐
│ ░░░░░░░░░░ │
│ ▓▓▓▓▓▓▓▓▓▓ │
│ ██████████ │
└────────────┘

Audit-grade memory for AI agents. Every stored claim can carry an explicit epistemic status (fact / inference / open_question / unverified), typed links to the evidence that backs or contradicts it, and a verifiable quote-level citation to its source. MCP-first, so one memory works in every editor.

Agent memory is becoming a commodity. Auditable agent memory is not: Palinode is the memory layer where a remembered fact says how strongly it is believed and what evidence backs it — and where every fact is a line in a git-versioned markdown file, readable, diffable, attributable to the commit that recorded it, and revertible when it's wrong. An unmarked memory is unmarked, never silently promoted to fact. No black-box vector store you have to trust.

Your agent's memory is a folder of markdown files. Palinode indexes them with hybrid search, compacts them with an LLM, and serves them through MCP — so the same memory works in Claude Code, Cursor, Windsurf, Zed, VS Code (Continue/Cline), and any other MCP-compatible editor. Bring your own Obsidian vault, or use Palinode as one: palinode init --obsidian /path/to/vault scaffolds a full vault with graph defaults, daily-notes wiring, and an LLM-maintained wiki contract. Enterprises can govern AI memory the same way they govern code. If every service crashes, cat still works.

A palinode is a poem that retracts what was said before and says it better. That's what memory compaction does.

Built by Paul Kyle at phasespace-labs. See AUTHORS.


Supported Platforms

Platform Session Skill Path MCP Config
Claude Code CLI ~/.claude/skills/ ~/.claude.json
Claude Desktop ~/.claude/skills/ claude_desktop_config.json
Cursor .cursor/skills/ .cursor/mcp.json
VS Code + Claude (Continue / Cline) ~/.claude/skills/ see MCP-INSTALL-RECIPES.md
JetBrains + Claude ~/.claude/skills/ ~/.claude.json
Antigravity IDE .agent/skills/ native 3-dot MCP menu
Codex CLI N/A (no skills) ~/.codex/config.toml
Pi N/A (native extension) plugins/pi/ — per-turn recall via lifecycle hooks

All platforms share the same MCP server — install once on your server, connect from any IDE. docs/HARNESSES.md is the cross-harness map: what each harness gets (native hooks vs. plugin vs. MCP), how the tiers stack, and where to start. Per-client config snippets: docs/MCP-SETUP.md and docs/MCP-INSTALL-RECIPES.md.


The Idea

Most agent memory is a black box. You can't read it, you can't diff it, you can't grep it when the vector DB is down. Palinode bets on plain files as the source of truth and builds everything else as a derived index.

Files (markdown + YAML frontmatter)
  ↓ watched
Index (SQLite-vec vectors + FTS5 keywords, single .db file)
  ↓ queried by
Interfaces (MCP server, REST API, CLI, OpenClaw plugin)
  ↓ compacted by
Consolidation (structured operations → validation and application → git commits)

That's the whole architecture. One directory of .md files, one SQLite database, one API server. No Postgres, no Redis, no cloud dependency.


palinode FAQ

Can I use Palinode to keep an auditable memory for my AI assistant?
Yes — Palinode stores and indexes your AI's memory as readable markdown files with evidence and version history, usable in several AI apps.
Does Palinode work with Claude Desktop and VS Code?
Yes — it supports Claude Desktop, Cursor, VS Code (Continue/Cline), and other MCP-compatible editors.
Do I need an API key or account to use Palinode?
No — Palinode runs as a local or server process requiring Python 3.11+, Git, and Ollama for semantic search, but no external accounts.
How hard is it to set up Palinode?
It requires developer-level setup including installing dependencies and configuring the server.
Can I search my AI's memory semantically with Palinode?
Yes — with Ollama's bge-m3 embedder, Palinode provides hybrid keyword and semantic search.
Can I edit the AI's memory files directly?
Yes — the memory is stored as plain markdown files you can read and edit in editors like Obsidian or VS Code.
What happens if I make a mistake in memory?
Palinode uses Git versioning so you can view history, blame, diff, and rollback changes easily.