
Docs MCP Server by arabold: Setup for Claude, Cursor and Other Apps
Lets Claude, Cursor and other assistants search documentation you index, so they use the right library version instead of guessing.
Docs MCP Server indexes websites, GitHub repos, npm and PyPI packages and local folders into a local database, then lets your assistant search them by library and version. It runs on your machine, and search works without any account or API key. An embedding model is optional and adds search by meaning. Start it read-only if you only want your assistant to search docs you have already indexed.
Good for
- Developers whose assistant keeps using outdated library APIs
- Teams with private or internal docs that an assistant should read
- People who want docs search to stay on their own machine
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install Docs MCP Server (Grounded Docs)
Claude Code
- 1
Copy this prompt.
Add the Docs MCP Server (Grounded Docs) server to Claude Code. Run this command: claude mcp add docs-grounded-docs -- npx -y @arabold/docs-mcp-server Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Node.js.
Built from the package data we hold. Not yet tested by us.
Tools
Searches documentation you have indexed
Looks up passages in one indexed library and version, using keyword search and, if you set up an embedding model, search by meaning. Returns up to 5 matches by default.
Try: “Search the react docs for useEffect cleanup.”
Read ·
search_docsReads a whole indexed page
Returns the full text of one indexed page, in parts of up to 30,000 characters for long pages.
Try: “Read the useEffect page from the react docs.”
Read ·
read_pageLists the pages in an indexed library version
Returns the indexed page paths, with an optional text filter and paging.
Try: “List the pages in the react 18 docs that mention hooks.”
Read ·
list_pagesLists the libraries you have indexed
Shows which libraries are in your local documentation index.
Try: “Which libraries have you indexed?”
Read ·
list_librariesFinds the best matching indexed version
Resolves a version or range such as 18.x to the closest version you have indexed.
Try: “Which react version do you have for 18.x?”
Read ·
find_versionFetches one web address as Markdown without indexing it
Downloads a single page and returns it as Markdown, following redirects by default.
Try: “Fetch https://react.dev/reference/react/useEffect as Markdown.”
Network ·
fetch_urlIndexes a documentation site, repo, package or folder
Starts a background job that crawls a URL, GitHub repo, package or local folder and stores it in your local index, up to 1000 pages and 3 levels deep by default. A job ID comes back to follow progress.
Try: “Index the react docs from https://react.dev/reference/react.”
Write ·
scrape_docsUpdates an indexed version, skipping unchanged pages
Re-crawls an existing version and updates only the pages that changed.
Try: “Refresh the react 18 docs.”
Write ·
refresh_versionLists indexing jobs
Shows queued, running and finished indexing jobs, filtered by status if you like.
Try: “Show running indexing jobs.”
Read ·
list_jobsShows one indexing job
Returns the status and progress of one job by its ID.
Try: “How is job 3 going?”
Read ·
get_job_infoCancels an indexing job
Stops a queued or running job.
Try: “Cancel the running react indexing job.”
Write ·
cancel_jobRemoves an indexed library version
Deletes a library version from your local index, so it can no longer be searched.
Try: “Remove the react 17 docs from the index.”
Delete ·
remove_docs
From the official docs
Permissions
medium risk · 4 things to watch
Medium risk
The assistant can crawl sites and folders into a local index and delete indexed docs. Use read-only mode if you only want it to search.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only modeHow to turn it on
Watch out for
It can index local folders and remove indexed docs
The scrape tool takes local folders and archives as well as web pages, and the remove tool deletes an indexed version. Start it read-only if you only want to search. github.com
Usage data goes to PostHog by default
Telemetry is on in release builds. It sends tool names and some arguments such as library names, not full URLs or query text. Turn it off with the no-telemetry flag or DOCS_MCP_TELEMETRY=false. github.com
Document text goes to your embedding provider
If you turn on vector search, indexed text is sent to the provider you choose. A local one such as Ollama keeps it on your machine. github.com
The web UI port is open on your machine
Running the server in a terminal serves a web UI and the MCP endpoint on port 6280. The embedded stdio setup has no web UI. github.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Turning on read-only | Start the server with --read-only or set DOCS_MCP_READ_ONLY=true. It then registers only the six search and read tools and leaves out indexing and removal. |
|---|---|
| Talks to | Sites and repos you ask it to index. Your embedding provider, if you set one. PostHog, for usage telemetry unless disabled |
| Sign-in and keys | No account. An optional embedding provider key such as OPENAI_API_KEY. |
Questions
Is Docs MCP Server official?
No. It is a community project by arabold, with no connection to the sites or libraries you index.
Does it need an API key?
No. Keyword search works with no key. An embedding provider key, such as OPENAI_API_KEY, is optional and turns on search by meaning.
Can I run it read-only?
Yes. Start it with --read-only or set DOCS_MCP_READ_ONLY=true. Only the six search and read tools are then registered.
Does it run on my computer?
Yes. The index is a local SQLite database. Document text leaves only for the embedding provider you configure.
Does it collect usage data?
Yes by default, through PostHog. It sends tool names and some arguments, not query text or full URLs, and you can turn it off with --no-telemetry or DOCS_MCP_TELEMETRY=false.
What is the local server URL?
http://localhost:6280/mcp when you run the server yourself in a terminal or Docker. The install box uses the stdio setup, where the app starts it for you.
Can it index private docs?
Yes. It reads local folders and archives as well as websites and repos. Keep its index folder private.
How do I add it to Claude Code?
Use the Claude Code tab in the install box above.
Information
updated Nov 2, 2026
- Publisher
- Community
- Package
@arabold/docs-mcp-server- Registry
- npm
- Transport
- stdio, Streamable HTTP
- Auth
- None
- Version
- 3.4.1
- License
- MIT
- Last commit
- Oct 25, 2026
- Open issues
- 52
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 4Hide
- github.com · github.com
- github.com · github.com
- github.com · github.com
- github.com · github.com