rag-graph: graph RAG on plain Postgres

It’s a Python library for graphRAG on plain Postgres. You point it at a directory of documents, it ingests them (the whole lot: chunks, embeddings, entities, relationships, full-text index) and you get back a query API that combines vector similarity, BM25, and graph traversal. All retrieval happens in one round-trip to Postgres. It is also a full toolkit around that library: a CLI , an optional FastAPI server with a web UI and an MCP server for Claude Desktop/Cursor/Zed.
Most graph RAG tools graph-ify everything up front. This one inverts that: start with vector+BM25 and only pay for graph traversal (local/hybrid modes) when the naive retrieval confidence is low or do a cheap 1-hop re-rank (naive_boost) otherwise. It matches what you’d expect analytically: graph structure helps disproportionately on multi-hop/cross-document reasoning and is close to useless on self-contained prose. Their own benchmarks bear this out.
I love the honest benchmark and the comparison with Apache AGE. Plus a forward look at the SQL/PGQ innovation in Postgres v19. It’s a single dev no-star repo but this does not diminish the innovative way of looking at things.
https://github.com/yonk-labs/pg-raggraph