Newcontext-mode—Save 98% of your AI coding agent's context windowLearn more
MCP Directory
ServersClientsBlog

context-mode

Save 98% of your AI coding agent's context window. Works with Claude Code, Cursor, Copilot, Codex, and more.

Try context-mode
MCP Directory

Model Context Protocol Directory

MKSF LTD
Suite 8805 5 Brayford Square
London, E1 0SG

MCP Directory

  • About
  • Blog
  • Documentation
  • Contact

Menu

  • Servers
  • Clients

© 2026 model-context-protocol.com

The Model Context Protocol (MCP) is an open standard for AI model communication.
Powered by Mert KoseogluSoftware Forge
  1. Home
  2. Servers
  3. mdn

mdn

GitHub

Offline-first MDN Web Docs RAG-MCP server ready for semantic search with hybrid vector and full‑text retrieval

1
0

Offline-first MDN Web Docs RAG-MCP server ready for semantic search with hybrid vector (1024-d) and full‑text (BM25) retrieval.

Example

example screenshot

Content

The dataset covers the core MDN documentation sections, including:

  • Web API
  • JavaScript
  • HTML
  • CSS
  • SVG
  • HTTP

See dataset repo on HuggigFace for more details.

Usage

1. Download dataset and embedding model

npx -y @deepsweet/mdn@latest download

Both dataset (~260 MB) and the embedding model GGUF file (~438 MB) will be downloaded directly from HugginFace and stored in its default cache location (typically ~/.cache/huggingface/), just like the hf download command does.

2. Setup RAG-MCP server

{
  "mcpServers": {
    "mdn": {
      "command": "npx",
      "args": [
        "-y",
        "@deepsweet/mdn@latest",
        "server"
      ],
      "env": {}
    }
  }
}

[!TIP]
Remove @latest for a full offline experience, but keep in mind that this will cache a fixed version without auto-updating.

The stdio server will spawn llama.cpp under the hood, load the embedding model (~655 MB RAM/VRAM), and query the dataset – all on demand.

Settings

Env variableDefault valueDescription
MDN_DATASET_PATHHuggingFace cacheCustom dataset directory path
MDN_MODEL_PATHHuggingFace cacheCustom model file path
MDN_MODEL_TTL1800For how long llama.cpp with embedding model should be kept loaded in memory, in seconds; 0 to prevent unloading
MDN_QUERY_DESCRIPTIONNatural language query for hybrid vector and full-text searchCustom search query description in case your LLM does a poor job asking the MCP tool
MDN_SEARCH_RESULTS_LIMIT3Total search results limit
HF_TOKENOptional HuggingFace access token, helps with occasional "HTTP 429 Too Many Requests"

To do

  • automatically update and upload the dataset artifacts monthly with GitHub Actions
  • automatically prune old dataset revisions like hf cache prune
  • figure out a better query description so that LLM doesn't over-generate keywords

Articles

  • Парсим MDN и пишем оффлайн RAG-MCP (in Russian)

License

The RAG-MCP server itself and the processing scripts are available under MIT.

Repository

DE
deepsweet

deepsweet/mdn

Created

March 31, 2026

Updated

April 13, 2026

Language

TypeScript

Category

Search & Knowledge