Most of the hallucination problem with framework APIs is version mixing, and the crawler config is where you fix it — excluding the versioned archive paths means the local copy only contains the version you actually use. Everything is served from disk after that, so search is fast and works offline, at the cost of a crawl you re-run when the docs move on.
A Node MCP server that serves framework documentation you have crawled into local JSON files. A bundled multi-threaded crawler fetches the official docs site; the server then answers search and detail queries from that local copy.
- `search_docs` — keyword search across the loaded documentation, optionally scoped to one source, with a result limit
- `get_doc_detail` — the full content of one page by its id, optionally scoped to a source
- A crawler configured per documentation site, with include and exclude patterns so you take the component pages and skip the version archives
- Automatic detection of the JSON files in the docs directory at startup, and a reload triggered from inside a search
- Several documentation sources side by side, each addressable by name
Node and npm. Write a source config listing each docs site with its include and exclude patterns, run the crawl, then point your client's command at the server file by absolute path. The crawler drives a browser through Puppeteer — set `PUPPETEER_SKIP_DOWNLOAD` if you already have Chrome installed and would rather it used yours.
Build from source — clone the repository and build it, then point your client at the binary
