# Postgram

A self-hosted knowledge and memory backend for AI agents, with tasks, documents, graph links, and hybrid retrieval.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed · ★ 10
- Author: ivo-toby
- License: AGPL-3.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/ivo-toby/postgram
- Updated: 2026-10-14
- HTML: https://affpapa.org/en/nevibecode/mcp/postgram

## What it does

Postgram stores typed records such as `memory`, `person`, `project`, `task`, `interaction`, and `document`. Agents can use the same corpus through MCP, the REST API, or the `pgm` CLI, while people use its browser UI and command line. Retrieval combines keyword matching with vectors, and a knowledge graph connects entities through directed relationships.

The service is deployed with Docker Compose. Embeddings can come from Ollama using `bge-m3` or from OpenAI via `OPENAI_API_KEY`; relationship extraction through an LLM starts disabled. Node.js 22+ is only needed for local development or installing the CLI, while `gpg` is used for encrypted CLI backups.

This is a local or single-VM deployment for one person or a small trusted team, not a hosted multi-tenant SaaS service. If the embedding provider cannot be reached, writes still work, but enrichment and search do not.

## Requirements
- Needs: Docker
- Environment variables: `DATABASE_URL`, `OPENAI_API_KEY`, `EMBEDDING_PROVIDER`, `EMBEDDING_BASE_URL`, `ADMIN_MFA_SECRET_KEY`, `ADMIN_SETTINGS_ENCRYPTION_KEY` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Install**
- The MCP registry has no launch command for it: see the repository README

## When to use it
- store durable agent memory
- search notes and documents with hybrid retrieval
- connect projects, people, and tasks in a knowledge graph
- sync local Markdown repositories
- keep session context separate from durable memory

## Example prompts
- Save this decision to Postgram as durable memory.
- Search Postgram for tasks and documents related to this project.
- Create a personal task in Postgram and tag it `quickstart`.

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 392262
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33989
- [World Monitor](https://affpapa.org/en/nevibecode/mcp/world-monitor.md) — MCP server · ★ 89609
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81163
- [Front-End Checklist](https://affpapa.org/en/nevibecode/mcp/front-end-checklist.md) — MCP server · ★ 74569
- [Scrapling MCP Server](https://affpapa.org/en/nevibecode/mcp/scrapling-mcp-server.md) — MCP server · ★ 89899

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
