< Back
2026·On GithubMCPRAG

Vue Docs MCP: Live Vue ecosystem documentation for AI assistants

AI assistants hallucinate APIs. They suggest Vue 2 patterns in Vue 3 projects, invent options that do not exist, and confidently reference deprecated features. The root cause is simple: their training data has a cutoff, and the Vue ecosystem moves faster than the cutoff.

Vue Docs MCP is a source-available MCP server that gives AI assistants direct, searchable access to the official documentation of 8 Vue ecosystem frameworks. Every answer is grounded in live docs from vuejs.org and friends, re-indexed every 24 hours. No API keys, no login, free to use.

The problem

When you ask an AI assistant about defineModel or Nuxt's useFetch, the answer you get depends on what was in the training corpus. If the docs changed since the cutoff, the AI does not know. It fills the gap with plausible-sounding but incorrect information. General-purpose documentation tools exist, but they treat all docs the same: fixed-size token windows, no understanding of Vue-specific patterns like the Options API vs. Composition API split, and no entity awareness for API surfaces.

I built a purpose-built solution: a documentation server that understands the structure of Vue ecosystem docs and retrieves precisely what the AI needs.

How it works

Connect your AI assistant to mcp.vue-mcp.org/mcp and start coding. For Claude Code:

claude mcp add vue-mcp --transport streamable-http https://mcp.vue-mcp.org/mcp

The server exposes three types of MCP tools per framework: docs_search for semantic search scoped to specific topics, api_lookup for instant fuzzy-matched API reference, and get_related for discovering connected APIs and documentation. When an AI assistant needs to answer a Vue question, it calls these tools instead of relying on its training data.

Supported frameworks

Eight frameworks are indexed today, each with its own dedicated tools and resources:

  • Vue.js — 4.82/5 answer quality, 98.7% API recall
  • Vue Router — 4.78/5, 88.8% API recall
  • VueUse — 4.89/5, 100% API recall
  • Vite — 4.94/5, 87.8% API recall
  • Vitest, Nuxt, Pinia, Vue DevTools

These scores come from an evaluation suite that tests hundreds of questions per framework and compares against competitors using an LLM judge. Against Context7, the closest general-purpose alternative, Vue Docs MCP scores 4.82/5 vs. 2.41/5 on Vue.js questions.

Architecture

The system splits into two pipelines: offline ingestion and online retrieval.

Ingestion pipeline

Every 24 hours, the ingestion pipeline clones the latest documentation sources, parses them into structured chunks, and indexes them. The parsing is structure-aware: it chunks at heading boundaries rather than fixed token windows, keeping code blocks together with their explanations. Each framework has a SourceAdapter that handles framework-specific quirks (stripping Options API blocks from Vue docs, generating TypeDoc references for Vue Router, parsing frontmatter-based sorting in VueUse).

After parsing, the pipeline extracts API entities deterministically (no LLM involved), generates contextual prefixes for ambiguous chunks using Gemini, creates synthetic developer questions (HyPE — Hypothetical Previous Embeddings) for key sections, and embeds everything with Jina AI into Qdrant alongside BM25 sparse vectors. PostgreSQL stores entities, synonyms, page metadata, and index state.

Query pipeline

When an AI assistant calls a tool, the query goes through a 6-step deterministic pipeline:

  1. Embed and detect — Generate dense (Jina) and sparse (BM25) vectors, extract mentioned entities with fuzzy matching via rapidfuzz
  2. Hybrid search — Query Qdrant with reciprocal rank fusion combining dense and sparse results, boosted by entity matches
  3. Resolve HyPE — Map any hits on synthetic questions back to their parent documentation chunks
  4. Expand — Follow cross-references at three priority levels to pull in related context
  5. Rerank — Score candidates with Jina Reranker, discard anything below threshold
  6. Reconstruct — Reassemble results in documentation reading order, merging adjacent chunks into coherent sections

No LLM is called at query time. This keeps latency low, costs near zero (~$0.0005 per query), and eliminates the risk of compounding hallucinations.

MCP resources and prompts

Beyond search tools, the server exposes MCP resources that let AI assistants browse documentation proactively: full tables of contents, raw markdown pages, complete API indices, and per-entity detail views. It also registers structured prompts for common workflows like debugging issues, comparing APIs, and planning migrations. These give the AI a systematic approach rather than ad-hoc searching.

Adapter-driven extensibility

Adding a new framework means implementing a SourceAdapter with hooks for cloning, file discovery, content cleaning, entity dictionary construction, and sort-key generation. The adapter pattern isolates framework-specific logic (Vue's Options/Composition API split, Nuxt's auto-imports, VueUse's function-per-page structure) from the shared parsing, embedding, and retrieval infrastructure. The core codebase is ~3,000 lines of Python.

Deployment

The production stack runs on an Infomaniak OpenStack VM with Docker Compose: FastMCP server, PostgreSQL 17, Qdrant 1.17, and Traefik for TLS and rate limiting. The ingestion container self-schedules every 24 hours and uses content hashing for incremental updates. The server polls PostgreSQL every 60 seconds for hot-reload, so new documentation appears without downtime. CI/CD via GitHub Actions handles automated builds, encrypted backups, and deployment.

The entire stack is source-available under the FSL-1.1-ALv2 license (converting to Apache 2.0 after two years).

Repository: github.com/joelbarmettlerUZH/vue-mcp

Documentation: vue-mcp.org

What is Vue Docs MCP?

Vue Docs MCP is an open-source MCP server that gives AI assistants direct access to live Vue ecosystem documentation. It covers 8 frameworks (Vue.js, Vue Router, VueUse, Vite, Vitest, Nuxt, Pinia, Vue DevTools) and uses hybrid semantic and keyword search to ground every answer in official docs.

How does Vue Docs MCP compare to general documentation tools?

Vue Docs MCP scores 4.82/5 on Vue.js questions with 98.7% API recall, compared to Context7's 2.41/5 score. It achieves this through structure-aware chunking, hybrid retrieval (dense + BM25), entity boosting, and deterministic query processing that avoids LLM calls at query time.

What frameworks does Vue Docs MCP support?

Currently 8 frameworks: Vue.js, Vue Router, VueUse, Vite, Vitest, Nuxt, Pinia, and Vue DevTools. The adapter-driven architecture makes adding new frameworks straightforward. Each framework gets its own search tool, API lookup, and documentation resources.

How does the hybrid search work?

Queries are processed through a 6-step pipeline: embed the query with Jina AI and generate BM25 sparse vectors, run hybrid search in Qdrant with reciprocal rank fusion, resolve HyPE (synthetic question) matches back to parent chunks, expand via cross-references, rerank with Jina Reranker, and reconstruct results in documentation reading order.

Can I self-host Vue Docs MCP?

Yes. The project is fully open source with Docker Compose configurations for local and production deployment. It requires PostgreSQL, Qdrant, and API keys for Jina AI embeddings. The ingestion pipeline runs every 24 hours to keep documentation current.


< Back

.

Copyright 2026 - Joel P. Barmettler