Labsco
MCP SERVER

Aegntic MCP Servers

by aegntic

Turn an Obsidian vault into a queryable knowledge graph — semantic search plus entities and relationships, not just vector similarity.

Vector Stores & RAG Retrieval
Summary
Entities and relationships, which is what plain vector search over notes cannot give you.

The reason to accept two databases instead of one is the graph: "what depends on this" and "what else did this person touch" are traversals, not similarity queries. The cost is real — Neo4j and Qdrant both have to be running, and ingestion needs an OpenAI key — so this suits a vault you query often, not one you dip into occasionally.

What it is

A retrieval system for Obsidian vaults that layers several kinds of context: vector similarity, a Graphiti-backed knowledge graph in Neo4j, link traversal over the vault's own wiki-links, recency, and domain specialisation. Notes become entities with typed relationships rather than a flat pile of embeddings.

What you get
  • `ingest_vault` reads the Markdown files from a vault path
  • `query_rag` answers a question using the layered retrieval, with a query type such as technical or research
  • `search_knowledge_graph` finds entities in the graph; `get_entity_context` returns rich context for one
  • `get_related_entities` follows the relationships out from an entity
  • `get_system_status` reports database connections and system health
  • The graph carries 27+ entity types (concepts, people, organisations, technologies, methodologies) and 40+ relationship types (implements, uses, depends_on, extends, similar_to)
  • A command-line interface mirrors the same operations for ingest, query and graph search
Requirements

Python 3.9+, Docker and Docker Compose, and an `OPENAI_API_KEY` for the embeddings. Two databases are needed and the setup scripts start both: Qdrant on port 6333 and Neo4j on 7474 and 7687, configured through `NEO4J_URI`, `NEO4J_USER`, `NEO4J_PASSWORD`, `QDRANT_HOST` and `QDRANT_PORT`. The README's install line names `obsidian-elite-rag-mcp`, which PyPI does not have. Installed from source, the CLI's setup, start-databases, ingest and server steps run in that order.