OpenContracts Turns Legal Document Chaos Into a Forkable Citation Graph
OpenContracts turns a folder of documents into a programmable citation graph, exposing the same substrate to humans, apps, and MCP-compatible agents.
PRO- OpenContracts is a self-hosted document platform that builds a citation graph from your corpus
- Same graph exposed via MCP server, GraphQL, REST, and React UI
- Human annotations act as ground truth; AI agents extend but never replace them
- Corpuses are version-controlled and forkable, like git for documents
- Structured extraction runs natural-language column queries across hundreds of docs
- MIT-licensed, 1.4k stars, Docker Compose install, pluggable parser/embedder pipeline
OpenContracts treats a document repository as a graph rather than a bag of files. Point it at a folder of PDFs, DOCX, or plain text and it builds a navigable citation network you can query from React, GraphQL, REST, or an MCP client. The project is MIT-licensed, self-hosted, and has crossed 1.4k stars on GitHub.
Documents as nodes, citations as edges
Documents are nodes, citations are edges, and annotations are the layer humans and agents build the graph from together, against the same source of truth. Create a corpus, drop in documents, and click Set up. That one click installs the intelligence bundle: agents describe and summarize every document, and the reference web starts weaving, with every statutory citation detected, resolved, and drawn as an edge.
The README walks through the flow with 36 SEC filings. By the end of the setup clip, those filings become a navigable graph wired to the Delaware General Corporation Law, the Securities Act, and the SEC rules they cite, section by section. Law the library doesn't hold yet is tracked as a backlog, automatically, until you ingest it.

Three surfaces on the same substrate
The engine exposes one graph through two interfaces: a GraphQL and REST API for humans and applications, and a Model Context Protocol endpoint for agents. The React UI is another client on top of the same API, which means anything you do in it (annotate, extract, chat) is scriptable.
This story is for Pro members
You've reached the end of the free preview. Upgrade to AlphaSignal Pro to read the full article - and everything else behind the paywall.