arabold/docs-mcp-server

Grounded Docs MCP Server: Open-Source Alternative to Context7, Nia, and Ref.Tools

What is Docs MCP Server?

Grounded Docs MCP Server is an open‑source tool that builds a searchable, version‑specific index of documentation for any code library or framework you use. It pulls the latest docs from official sites, GitHub repos, npm / PyPI packages, local folders or zip archives, converts them to plain text/markdown, and (optionally) stores vector embeddings so a language model can retrieve the exact passage it needs. The server runs locally, exposing a simple MCP (Message‑Stream‑Endpoint) API that AI coding assistants such as Claude, Cline, Copilot, Gemini‑CLI, etc., can query.


Why it matters

  • Reduces hallucinations – the LLM answers from the real, up‑to‑date docs instead of guessing.
  • Version‑aware – you can index the exact version of a library that your project depends on.
  • Private & local – all processing stays on your machine; no code or docs leave your network.
  • Broad format support – PDFs, Office files, markdown, Jupyter notebooks, and >90 source‑code languages are parsed automatically.
  • Plug‑and‑play for existing AI tools – works with any MCP‑compatible client (Claude, Cline, VS Code extensions, etc.).

Core features (as described in the README)

Feature Description
CLI‑first workflow scrape, search, fetch-url commands let scripts or agents index docs, run semantic search, and retrieve raw pages.
Web UI Accessible at http://localhost:6280; lets you add docs, view the index, and manage settings through a browser.
MCP server Long‑running SSE endpoint (/sse) that AI clients can point to in their configuration files.
Embedding support Optional vector embeddings (OpenAI, Ollama, Gemini, Azure, etc.) improve semantic search quality.
Docker image Official container (ghcr.io/arabold/docs-mcp-server:latest) for isolated deployment.
Hash‑routed SPA handling --preserve-hashes flag (or UI checkbox) tells the scraper to keep URL fragments and, when needed, fall back to Playwright for client‑side rendering.
Markdown‑first crawling Sends Accept: text/markdown header; if the site can serve markdown directly the scraper skips HTML‑to‑markdown conversion.
Extensive format list PDFs, Word/Excel/PowerPoint, OpenDocument, RTF, EPUB, Jupyter notebooks, archives, HTML, markdown variants, many programming languages, config files, data formats, etc.
Authentication & security Docs mention OAuth2/OIDC support and hardening guides for production deployments.

Quick‑start guide (from the README)

  1. Install / run – No permanent install needed; use npx (Node 22+):
    npx @arabold/docs-mcp-server@latest          # starts the server & UI
    
    Or run the Docker container:
    docker run --rm -v docs-mcp-data:/data -v docs-mcp-config:/config \
      -p 6280:6280 ghcr.io/arabold/docs-mcp-server:latest \
      --protocol http --host 0.0.0.0 --port 6280
    
  2. Index a doc source (CLI example):
    npx @arabold/docs-mcp-server@latest scrape react https://react.dev/reference/react
    
    Add --preserve-hashes for hash‑based SPA docs.
  3. Search the index:
    npx @arabold/docs-mcp-server@latest search react "useEffect cleanup" --output yaml
    
  4. Connect an AI client – add the server to the client’s MCP config, e.g. for Claude Desktop:
    {
      "mcpServers": {
        "docs-mcp-server": { "type": "sse", "url": "http://localhost:6280/sse" }
      }
    }
    
  5. (Optional) Enable embeddings – set OPENAI_API_KEY (or other provider env vars) before starting the server to get semantic search.

Who might use it?

  • Developers building AI‑assisted coding tools that need reliable reference material.
  • Teams that want a private, version‑locked knowledge base for internal libraries.
  • Researchers experimenting with retrieval‑augmented generation (RAG) pipelines.
  • Tool makers who need a drop‑in MCP endpoint for Claude, Cline, Copilot, Gemini‑CLI, etc.

Where to find more information

  • Installation & setupdocs/setup/installation.md
  • Connecting clientsdocs/guides/mcp-clients.md
  • Embedding model configurationdocs/guides/embedding-models.md
  • Supported formats listdocs/concepts/supported-formats.md
  • Architecture overviewARCHITECTURE.md
  • Contribution guideCONTRIBUTING.md

License

MIT – free to use, modify, and redistribute.

Related

  • Project
  • Project
  • Project
  • Project
  • Project