xyz-wiki
Provides an optional vision tool that uses YOLOv5 to detect objects in images, enabling text-only models to learn from screenshots, charts, and scans.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@xyz-wikilearn notes.md, then search the wiki for fair value gaps"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
xyz-wiki
A wiki your LLM writes and keeps up to date itself, with a typed ontology, works with any agent that supports MCP.
You give the model your stuff and it turns it into small linked pages, one concept, entity or claim per page, with
typed relations between them (is_a, part_of, contradicts, ...). Its answers get filed back as pages too, so the
wiki keeps growing as you use it, and a lint pass finds what needs fixing. Search is plain keyword search (BM25) plus a
walk over the ontology graph, no embedding model, no vector database, no GPU needed.
The only thing you need is Node 22.13+ (the built-in
node:sqlitewith FTS5), the code is three files.Pages are just markdown files with OKF-style front matter, the index is a cache rebuilt from them, so it all works fine with git.
It stays quick when it gets big, on our PC a 2,000-page wiki answers a search in under 80 ms and reopens in under a tenth of a second, only the files that changed get read again.
The MCP server (stdio) works with DeepSeek Harness, Claude Desktop/Code, OpenClaw, Cursor, anything that supports MCP.
The model does the organizing, the server only stores, indexes and retrieves, and
skills/xyz-wiki/SKILL.mdtells the agent how to ingest, answer and maintain.
Install
git clone https://github.com/xyznq1/xyz-wiki.git && npm install -g ./xyz-wiki # Node.js 22.13+, no dependencies
cd xyz-wiki && npm test # optional: the test suiteRelated MCP server: LLM Wiki MCP Server
Connect your agent
The server takes the wiki folder as its argument (or XYZ_WIKI_DIR) and creates it on first use.
DeepSeek Harness: dsh/xyz-wiki.patch.yml is a ready overlay, it runs the agent on your own OpenAI-compatible model
server (llama.cpp, vLLM, Ollama) with the xyz-wiki MCP server and the skill, telemetry off. Set the endpoint and model
id in the patch, then run:
export XYZ_WIKI_HOME=/path/to/xyz-wiki XYZ_WIKI_DIR=~/xyz-wiki
dsh web --patch $XYZ_WIKI_HOME/dsh/xyz-wiki.patch.yml # or: dsh headless --patch ... "learn notes.md"Claude Desktop, Claude Code and Cursor take this MCP config:
{ "mcpServers": { "xyz-wiki": { "command": "xyz-wiki-mcp", "args": ["/path/to/wiki"] } } }OpenClaw: set mcp.servers.xyz-wiki = { command: "xyz-wiki-mcp", args: ["/path/to/wiki"] }, then allow the tools
(xyz-wiki__wiki_search, ...) in tools.allow.
Then give the agent the skill (or paste its steps into the system prompt) and hand it stuff, "learn this", "what do we know about X", "clean up the wiki".
Tools
tool | what it does |
| BM25 over title, aliases and body: snippets of the best pages, plus pages one ontology hop away |
| one page, front matter and body |
| creates or updates a page. A new body replaces the old one; relations, sources and aliases get merged |
| adds one typed edge to an existing page |
| typed relations and |
| titles, optionally of one type |
| orphans, dangling links, untyped pages, stale pages, near-duplicate titles, totals |
| optional: the objects in an image (YOLOv5) and its text (Tesseract OCR), so a text-only model can learn from screenshots, charts and scans |
Vision (optional)
wiki_see shows up when XYZ_WIKI_PYTHON points at a Python that has yolov5 installed. YOLOv5 is AGPL-3.0, so you
install it yourself, we don't bundle it. Reading text needs the Tesseract binary on PATH (or TESSERACT), and each
half works without the other.
python -m venv ~/xyz-vision && ~/xyz-vision/bin/pip install yolov5
~/xyz-vision/bin/yolo settings sync=False # Ultralytics analytics off
export XYZ_WIKI_PYTHON=~/xyz-vision/bin/python XYZ_VISION_WEIGHTS=yolov5s.pt # fetched on first useXYZ_VISION_CONF sets the detection threshold (default 0.25). To test it, run XYZ_WIKI_TEST_IMAGE=photo.jpg npm test.
A page
---
title: Fair Value Gap
type: concept
status: draft
aliases:
- FVG
sources:
- resource: sources/notes-2026-09.md#fvg
relations:
- is_a: Price Imbalance
- related_to: Order Block
generated: 2026-09-28
updated: 2026-09-28
verified: unverified
---
A three-candle pattern where the first and third wicks do not overlap: price moved faster than orders filled.
See [[Order Block]].type is the only field a reader needs. status (draft/stable/deprecated), sources, verified
(unverified/machine-confirmed/human-reviewed) and stale_after follow the Open Knowledge Format (OKF v0.2).
CLI
xyz-wiki ./wiki stats | lint | list [type] | search <words> | read <title> | reindexWhy it's built like this
No embeddings. A small, well-linked wiki the model wrote itself can be searched by the words it uses, and the ontology covers what keyword search misses (the
relatedblock in every search result), so there's no extra service to run and nothing to re-embed when pages change.The model writes the pages. Searching raw chunks works the same answers out again every time, a wiki that's kept up to date keeps them (the "LLM wiki" pattern). Answers get filed as
type: querypages.Tools return snippets and capped page bodies, never the whole thing, so the context cost stays low.
Credits
What's ours: xyz-wiki itself, the MCP server, the index and the ontology search, the lint, the agent skill, the CLI, the DeepSeek Harness overlay and the vision tool.
What we built on, and credit to the people who made it:
Andrej Karpathy's LLM Wiki idea, the model writing and keeping up its own wiki instead of doing RAG over raw files every time.
Google Cloud's Open Knowledge Format (OKF v0.2), the front matter the pages use.
SQLite's FTS5 for the BM25 search, and YOLOv5 by Ultralytics and Tesseract for the optional vision tool.
License
MIT.
For further questions, DM us on Instagram: @xyz_nq1
Related MCP Connectors
- hiveWikiOAuthai.hivewiki
Shared project wiki for AI agents: read and write pages, next actions, and activity logs over MCP.
Self-hostable team wiki; agents read & write it via MCP; Atlas turns your repo into a cited wiki.
One wiki for all your agents: pages read and written over MCP, a link graph, and broken-link checks.
- FlowdexOAuthdk.flowdex
Read and write your team's shared, AI-readable wiki from any MCP client.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with a persistent knowledge graph backend using MCP tools for reading, searching, and analyzing wiki pages with vector search and graph algorithms.4-
- FlicenseAqualityBmaintenanceProvides a lightweight personal knowledge base MCP server that compiles raw materials into interconnected Wiki pages, with hybrid search (BM25, optional vector, link expansion) and tools for querying, reading, writing, and ingesting content.5-
- AlicenseNot gradedqualityBmaintenanceEnables coding agents to maintain a folder-scoped research wiki for scientific papers by providing MCP tools for full-text search, reading, note creation, tagging, logging, and PDF ingestion, all without requiring its own LLM API key.Apache 2.0
- AlicenseNot gradedqualityAmaintenanceProvides AI agents with a local, private Markdown-based memory vault and SQLite search. Enables agents to search, read, list, and traverse linked knowledge pages via MCP with zero external runtime dependencies.6MIT