ANCHOR¶
ANything Can Have Order and Reason
Agent-First Knowledge Canvas with Source-Grounded Provenance
ANCHOR is a tool that lets you and your agent work with engineering documents.
Drop a PDF onto a canvas. The agent reads it and pulls the values you need into a spec table. Every value links back to the page and bounding box it came from, so you can click and see the source.
Drop FMU simulation models onto the same canvas and wire the extracted values into their parameters.
It runs on your laptop. Data lives under ~/anchor-data. Agents talk to it over MCP, so it works with Claude Code, Cursor, or any MCP client. There's an HTTP API and a CLI too.
Get started¶
Then open http://127.0.0.1:8002 in your browser.
Requires Python 3.12+. CI tests Linux and runs CLI smoke checks on macOS and Windows; verify browser and PDF workflows on your target platform.
Five-minute tutorial Architecture overview
What's in this documentation¶
- Tutorial - first day, from install to "agent fills in my engineering specs"
- Install - paths for end users and contributors, plus optional extras
- Usage - ingest documents, create canvases, and connect an agent
- Architecture - the hexagonal monolith, ports + adapters
- Data and events - workspace state model, event log, real-time sync
- On-disk substrate - what every folder under
~/anchor-data/means - Canvas - node types, edges, sub-canvases
- Many interfaces - HTTP, MCP, CLI, and the parity rule
- Extensions and OIP - how third-party producers plug in
- Agent setup - connect MCP clients and optional local models
- Agent configuration - configure Claude Code, Codex, Cursor, OpenCode, and generic stdio clients
- Reference - CLI, MCP tool families, and configuration
- Citation and acknowledgments - citing ANCHOR and project funding
Designed for both humans and agents¶
ANCHOR is agent-native: every operation reaches HTTP, MCP, and CLI in parity. An agent driving the canvas through MCP and a human clicking in a browser end up at the same workspace, see each other's edits in real time, and share the same source-grounded view of the data.
The point is to kill the manual loop: open a datasheet, find a number, paste it into a spreadsheet or simulation, hope you got the right one. The agent does the lookup; the source link makes every answer checkable.