/ Diretório / Playground / mcp-documentation-server
● Comunidade andrea9293 ⚡ Instantâneo

mcp-documentation-server

por andrea9293 · andrea9293/mcp-documentation-server

Drop PDFs, Markdown, and text docs into a local vector store — then ask your AI questions with hybrid search. No cloud required.

mcp-documentation-server by andrea9293is a local RAG server. Drag-and-drop .txt / .md / .pdf files via a web UI (port 3080), or feed them via tools. Hybrid full-text + vector search with parent-child chunking. Runs fully local with built-in embeddings; Gemini key optional for smarter retrieval.

Por que usar

Principais recursos

Demo ao vivo

Como fica na prática

documentation-server.replay ▶ pronto
0/0

Instalar

Escolha seu cliente

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "documentation-server": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-documentation-server"
      ],
      "_inferred": true
    }
  }
}

Abra Claude Desktop → Settings → Developer → Edit Config. Reinicie após salvar.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "documentation-server": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-documentation-server"
      ],
      "_inferred": true
    }
  }
}

Cursor usa o mesmo esquema mcpServers que o Claude Desktop. Config de projeto vence a global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "documentation-server": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-documentation-server"
      ],
      "_inferred": true
    }
  }
}

Clique no ícone MCP Servers na barra lateral do Cline, depois "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "documentation-server": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-documentation-server"
      ],
      "_inferred": true
    }
  }
}

Mesmo formato do Claude Desktop. Reinicie o Windsurf para aplicar.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "documentation-server",
      "command": "npx",
      "args": [
        "-y",
        "mcp-documentation-server"
      ]
    }
  ]
}

O Continue usa um array de objetos de servidor em vez de um map.

~/.config/zed/settings.json
{
  "context_servers": {
    "documentation-server": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "mcp-documentation-server"
        ]
      }
    }
  }
}

Adicione em context_servers. Zed recarrega automaticamente ao salvar.

claude mcp add documentation-server -- npx -y mcp-documentation-server

Uma linha só. Verifique com claude mcp list. Remova com claude mcp remove.

Casos de uso

Usos do mundo real: mcp-documentation-server

Make a new framework's docs queryable by your AI

👤 Devs adopting a new library ⏱ ~20 min beginner

Quando usar: Official docs are huge; you want Claude to answer with grounded citations.

Pré-requisitos
  • mcp-documentation-server installed — npx -y @andrea9293/mcp-documentation-server
Fluxo
  1. Ingest the docs
    Upload the library's docs .md files to the dashboard at http://localhost:3080.✓ Copiado
    → Files processed into chunks
  2. Ask targeted questions
    search_documents for 'how to configure middleware' — give me the top 3 chunks with source paths.✓ Copiado
    → Cited excerpts
  3. Ask grounded synthesis
    Given those chunks, write the minimum viable config for middleware in this framework.✓ Copiado
    → Working config backed by cited doc lines

Resultado: A personal docs assistant that cites its sources.

Armadilhas
  • PDFs with scanned images aren't OCR'd — Pre-OCR with tools like ocrmypdf before upload
  • Huge doc sets without Gemini give noisy embeddings — Optional GEMINI_API_KEY unlocks higher-quality semantic search
Combine com: filesystem

Turn an internal wiki export into a RAG source

👤 Teams with markdown-export-friendly wikis ⏱ ~25 min beginner

Quando usar: You've exported your Notion/Confluence content as Markdown and want AI access.

Fluxo
  1. Bulk-ingest via process_uploads
    process_uploads on ./wiki-export/ — process every .md.✓ Copiado
    → Document count per folder
  2. Full-scope search
    search_all_documents: 'deployment runbook' — top 5.✓ Copiado
    → Ranked list

Resultado: A local, private, searchable wiki.

Build a personal research-paper library

👤 Researchers, students ⏱ ~30 min beginner

Quando usar: You download papers and want them queryable instead of piled in Downloads/

Fluxo
  1. Drop PDFs in
    Upload all PDFs in ~/Papers/ to the documentation server.✓ Copiado
    → Papers chunked and indexed
  2. Ask across corpus
    search_documents: 'attention variants with lower quadratic cost' — return authors + years.✓ Copiado
    → Cited excerpts

Resultado: A local mini-perplexity over your own paper collection.

Combinações

Combine com outros MCPs para 10× de alavancagem

documentation-server + filesystem

Automate ingest from a watched folder

Every time a new PDF lands in ~/Papers/Inbox, process_uploads it into the documentation server.✓ Copiado
documentation-server + swarmvault

Compare: documentation-server is quick-ingest; swarmvault builds a structured wiki

Ingest my research PDFs into both systems; compare retrieval quality on the same query.✓ Copiado

Ferramentas

O que este MCP expõe

FerramentaEntradasQuando chamarCusto
add_document title, content, metadata? Programmatic ingest free (local embeddings)
list_documents (none) See what's indexed free
get_document id Retrieve a specific doc free
delete_document id Pruning free
search_documents query, top_k? Query within a specific doc set free
search_all_documents query, top_k? Global RAG query free
get_context_window chunk_id Expand a narrow hit into broader context free
search_documents_with_ai query One-shot answer synthesis Gemini call (needs key)
process_uploads path?: str Batch import from the uploads folder free

Custo e limites

O que custa rodar

Cota de API
None if local; Gemini usage if GEMINI_API_KEY set
Tokens por chamada
Search returns 500-3000 tokens depending on top_k
Monetário
Free; Gemini is paid per-call if enabled
Dica
Skip Gemini for exploratory work — local embeddings are good enough for known-item lookups.

Segurança

Permissões, segredos, alcance

Armazenamento de credenciais: GEMINI_API_KEY (optional) in env
Saída de dados: Local only unless Gemini is enabled; dashboard on port 3080

Solução de problemas

Erros comuns e correções

Port 3080 in use

Set WEB_PORT env var to another port.

Verificar: lsof -i :3080
PDF parse error

Password-protected or scanned PDFs fail. Remove password or run OCR first.

Verificar: Try a plain PDF
search returns empty

Check documents ingested: list_documents. If empty, re-run process_uploads.

Verificar: list_documents

Alternativas

mcp-documentation-server vs. outros

AlternativaQuando usarTroca
swarmvaultYou want a structured wiki + knowledge graph, not just searchHeavier; more upfront setup
Cloud RAG (Pinecone, Weaviate)You need team-shared, scalePaid; data leaves your machine
llm-context.pyYou want per-task context, not persistent doc retrievalDifferent problem

Mais

Recursos

📖 Leia o README oficial no GitHub

🐙 Ver issues abertas

🔍 Ver todos os 400+ servidores MCP e Skills