LabscoMCP early access ↗
herring101MCP SERVER

Docs MCP with Semantic Search

Point it at a folder of documentation and get grep, semantic search and paginated reading over it — plus importers that pull docs in from GitHub or a website.

by herring101 ↗Framework & SDK Documentation LookupCommunity

LABSCO SUMMARY

Pagination is the feature that keeps it usable.

Documentation servers usually fail on a single enormous reference page: it either blows the context or gets truncated mid-sentence. Handling that with explicit pagination — and telling the caller which page it is on and how many there are — is what lets an assistant work through a long file deliberately. The folder and extension settings double as an access boundary worth setting deliberately.

What it is

A documentation server for a folder you control. It reads whatever sits under a docs/ directory in the project you name and exposes it three ways: a listing, a regex search, and a paginated reader that keeps a large file from arriving all at once. Command-line importers can fill that folder from a GitHub repository or by crawling a documentation site.

What you get

  • list_docs — every document with its description
  • grep_docs — fast full-text search using regular expressions
  • get_doc — a document's contents, with a page parameter; files above the large-file threshold are paginated automatically and the response tells you which page you are on and how to reach the next one
  • semantic_search — meaning-based search using OpenAI embeddings, available once metadata has been generated
  • Importers run outside the server: docs-mcp-import-github pulls a repository or one path within it and detects the default branch, docs-mcp-import-url crawls a site with depth and include/exclude URL patterns, and docs-mcp-generate-metadata builds the index semantic search needs
  • Broad file coverage — Markdown, plain text, reStructuredText and AsciiDoc through to configuration files and source code in most common languages

Requirements

Nothing for the search tools. Semantic search alone needs an OPENAI_API_KEY, and only after docs-mcp-generate-metadata has run. uv is required, and Python 3.12 or higher is managed by it; the package is docs-mcp (version 0.1.2) and the documented client entry runs uvx docs-mcp with DOCS_BASE_DIR set to the project root. DOCS_FOLDERS and DOCS_FILE_EXTENSIONS narrow what is readable, DOCS_MAX_CHARS_PER_PAGE defaults to 10000 and DOCS_LARGE_FILE_THRESHOLD to 15000.

Setup effort

One command — uvx docs-mcp