OPYT User Commands
NAME

opyt — a local-first knowledge base, served entirely through an MCP server

Track the people you trust. Query everything they publish.

Opyt pulls a person's full public archive — X, GitHub, Substack, blogs, papers — into one local SQLite store your AI client can search, open, and reason over. No new app. No account. No outbound calls.

$ git clone https://github.com/maimond123/opyt && cd opyt && bash scripts/setup.sh
OPERATIONS7 tools

Seven verbs, one store.

Every tab is a real session shape — the full surface of the product, one exchange each.

~/.opyt/opyt.dbmcp session

you › What's the strongest argument I've saved for stablecoin settlement replacing correspondent banking?

⚙ search("stablecoin settlement vs correspondent banking") 4 hits · top score 0.81 · @hypersoren · 2026-03-02 ⚙ open("x/1893…") full text + source_url

claude › The sharpest case in your store is Soren's March thread: the cost of correspondent banking isn't the wire fee, it's the capital parked in nostro accounts while messages reconcile. Programmatic escrow removes the float, not the fee… [x.com/hypersoren/status/1893…]

search · open — retrieval is LLM-free. The tools return ranked hits and full documents; your client's own model does the reasoning.

DESCRIPTION
MCP-first

No new app

There is no chat UI, dashboard, or account. Your existing client — Claude Code, Cursor, Claude Desktop, Windsurf — queries the store and does the reasoning, on the subscription you already pay for. The moat is the data and the retrieval, not a hand-built UI.

Local-first

One file on disk

The whole store is a single SQLite database in ~/.opyt. Copy the file and your library moves with you; back it up like any other file.

Fail-safe

No daemon

Background rails that refresh your sources run inside the MCP server session and stop when it stops. Each is independently gated — a stalled rail never blocks a tool call.

FILES

~/.opyt/opyt.db — everything below lives in this one file.

atomsone row per post, repo, essay, or paper — the unit of stored content
chunks · chunks_ftspassage text, its embeddings, and the full-text index behind search
entities · oracleswho wrote what, and which people you chose to track
kb_metathe store describes itself — embedder, dimensions, versions
PRIVACY

"The local Opyt server makes no outbound call of its own."

  • The sharing service stores day-grained counts — never query text, never addresses, never which documents a reader opened. TELEMETRY.md is generated from the live schema and pinned by a test.
  • Everything the service has ever served, as public totals. api.useopyt.com/stats
  • Installs are counted by PyPI and GitHub statistics, not by phoning home.
  • MIT licensed, end to end. LICENSE
INSTALLATION

Mac or Linux, Python 3.10+. Five minutes.

git clone https://github.com/maimond123/opyt cd opyt bash scripts/setup.sh # venv, deps, .env template # register the MCP server — pick your client: claude mcp add opyt -- $PWD/venv/bin/opyt-mcp # Claude Code venv/bin/opyt-install-client --all # Cursor · Claude Desktop · Windsurf

Restart your client and call onboard. It walks you through keys in your browser — a tab opens, you click Approve. Nothing is ever pasted into chat. Then call oracle to pick who to track.

SEE ALSO
github.com/maimond123/opytsource, issues, MIT license
api.useopyt.com/statswhat the sharing service has served, as public totals
Opyt · 2026 · MIT makes no outbound call of its own