Your notes, as a real graph.
Typed Graph is an Obsidian plugin that turns links into typed, signed, labeled edges with properties, lets you query them with openCypher, and draws them as a graph that looks like what it means.
Write edges like you write notes
One line per edge, right where it belongs. Plain type:: [[Target]] lines from Graph Link Types keep working; add a sign and properties when you need them.
---
type: Person
role: research lead
---
knows:: [[Bob]] {since: 2020, label: "met at NeurIPS"}
works_at:: [[Acme]]
-distrusts:: [[Mallory]] {id: "alice-mallory"}
Ask it questions
A graph-query block runs openCypher and shows a graph or a table, live, as the vault changes.
```graph-query
MATCH (p:Person)-[c:contributes]->(proj:Project)
RETURN p.title AS person, proj.title AS project,
c.hours AS hours
ORDER BY hours DESC
```
Screenshots
Rendered by the plugin's own engine and renderer — the same ones you can poke at in the live demo.




Everything a graph needs
From a quick typed link to RAG-ready storage for agents.
Typed, signed edges
type:: [[X]], a - prefix for negative edges, properties in braces, stable or pinned ids.
Typed nodes & schemas
Frontmatter type gives labels; schema notes declare properties, allowed edges, templates and looks.
openCypher
MATCH, OPTIONAL MATCH, WITH, aggregation, variable-length paths — read-only, with clear errors.
Graph view
A full-pane explorer that follows the active note, expands neighbors and explains every style.
Edge property embeds
{{edge: Alice -knows-> Bob . since}} shows a value in prose and warns about unstable references.
LadybugDB mirror
An optional sidecar mirrors the graph into LadybugDB for full Cypher, verified against the built-in engine.
Vector search
Local Ollama embeddings over note chunks and edge sentences; combine hits with graph traversal.
GraphRAG & MCP
Cited retrieval over hits and their neighbors, served to agents through an MCP server.
How it fits together
Markdown stays the only source of truth. Everything else is derived and rebuildable.
core TypeScript
Edge parser, graph model, schemas, styles, openCypher engine, chunking. No Obsidian APIs.
plugin Obsidian
Query blocks, graph view, embeds, diagnostics. Works on desktop and mobile.
sidecar optional
Headless service over a read-only vault: REST, MCP, LadybugDB mirror, vectors.
Install
- From Obsidian (once listed): Settings → Community plugins → Browse → search Typed Graph.
- Before that, with BRAT: install the BRAT plugin, then Add beta plugin →
Volland/obsigraph. - Manually: download
main.js,manifest.jsonandstyles.cssfrom the latest release into<vault>/.obsidian/plugins/typed-graph/and enable it.
For agents
Run the sidecar next to your vault and give your agent the graph:
claude mcp add typed-graph \ -e OBSIGRAPH_VAULT=/path/to/vault \ -e OBSIGRAPH_DATA=/path/to/data \ -- node packages/sidecar/dist/server.mjs --stdio
Tools: cypher_query, vector_search, graphrag_retrieve. See the sidecar docs.
Learn more
Two articles and a vault to explore.
Your vault as a property graph
Typed, signed edges, schema notes, openCypher and styled graphs, in plain Markdown.
Your vault as RAG storage
LadybugDB, vector search over notes and edges, GraphRAG with citations, and MCP for agents.
A vault that teaches itself
A research-lab vault with the plugin preinstalled and a hands-on Cypher course.