devdocs-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@devdocs-mcpfind documentation for async/await in JavaScript"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
devdocs-mcp
KnowledgeBase MCP server for Developer Documentation
Installation
Quick Start with uvx (Recommended)
Run directly from GitHub with ML dependencies (required for semantic search):
uvx --from "devdocs-mcp[ml] @ git+https://github.com/HellButcher/devdocs-mcp.git" devdocs-mcpMCP Server Configuration
Add to your MCP client configuration (e.g., Claude Desktop, Cline):
{
"mcpServers": {
"devdocs": {
"command": "uvx",
"args": [
"--from",
"devdocs-mcp[ml] @ git+https://github.com/HellButcher/devdocs-mcp.git",
"devdocs-mcp"
]
}
}
}Development Setup
Clone and install with ML dependencies:
git clone https://github.com/HellButcher/devdocs-mcp.git
cd devdocs-mcp
uv sync --extra ml
uv run devdocs-mcpInstall with locked dependency versions
uvx/uv tool install resolve dependencies fresh and don't use the repo's uv.lock. If you want the exact, tested dependency versions instead, clone the repo and use the provided install script, which exports uv.lock and installs the tool constrained to it:
git clone https://github.com/HellButcher/devdocs-mcp.git
cd devdocs-mcp
./install.sh # with ML dependencies (semantic search)
./install.sh --no-ml # without ML dependencies
# then just call devdocs-mcp to run it
devdocs-mcpRelated MCP server: DevDocs MCP Server
Features
Access to 819+ documentation sources from devdocs.io
Semantic search with vector embeddings (requires ML dependencies)
Custom local documentation sources
Efficient caching and incremental updates
10 MCP tools for documentation queries
Configuration
Configuration is stored at XDG paths:
Config:
~/.config/devdocs-mcp/config.jsonCache:
~/.cache/devdocs-mcp/(docs + embeddings)
Environment variables:
DEVD_EMBEDDING_MODEL- Override the default embedding model
Available Tools
9 toolsadd_local_sourceA
Add a local directory as a documentation source.
The directory should contain HTML files that will be indexed for search.
Args: path: Absolute filesystem path to the docs directory slug: Unique identifier for this local source
Inputs: path (required), slug (required). Returns: result
add_web_sourceA
Fetch documentation from a web URL (or re-download existing source).
If url is not provided, re-downloads an existing web source by slug.
By default, only fetches URLs in the same directory or below the initial URL. For example, fetching https://example.com/docs/api/index.html will only fetch files under https://example.com/docs/api/ and not https://example.com/docs/other/.
Only HTML files (.html, .htm, or no extension) are fetched and followed. Non-HTML files (CSS, JS, images, fonts, etc.) are automatically skipped.
Args: slug: Unique identifier for this web source url: Base URL to fetch from (optional for re-download) name: Display name (defaults to slug) max_depth: Recursion depth for crawling (default: 2) pattern: Regex pattern for URLs to fetch (default: .*.html?$) url_prefix: Optional URL prefix to restrict crawling (default: directory of initial URL)
Inputs: slug (required), url, name, pattern, +2 more. Returns: result
doc_infoB
Get detailed information about a specific documentation.
Args: slug: Documentation slug (e.g. 'javascript', 'async')
Inputs: slug (required). Returns: result
download_docA
Download one or more documentation bundles from devdocs.io.
Args: slugs: Single slug string or list of documentation slugs (e.g. 'javascript' or ['javascript', 'python', 'react']) version: Optional version specifier for single slug (ignored for multiple slugs, uses latest)
Inputs: slugs (required), version. Returns: result
get_documentA
Get full document content by document ID from search results.
Use this to retrieve the complete content of a document after finding it via search_docs. The doc_id can be found in search results (typically shown in the path or title).
Args: doc_id: Document ID from search results (e.g. "python~3.13/library/functions#print")
Inputs: doc_id (required). Returns: result
list_docsA
List all available documentation sources with optional filtering.
Args: source_type: Filter by 'devdocs', 'local', or None for all include_large: Include docs larger than 50 MB (default: False = exclude large) downloaded_only: only include downloaded docs (default: True = only show downloaded docs) query: Optional fuzzy text filter on doc metadata (slug, name, type, release, alias) Case-insensitive substring match. Does NOT search document content.
Inputs: query, source_type, include_large, downloaded_only. Returns: result
rebuild_indexA
Rebuild the embedding index from downloaded documentation.
By default, only indexes newly downloaded documentation that hasn't been indexed yet. Use clean=True to rebuild everything from scratch.
Args: clean: If True, rebuild entire index from scratch. If False (default), only index missing documents. slugs: Optional list of specific doc slugs to re-index (e.g., ['vulkan', 'python']). If provided, only these docs will be processed. Ignores already-indexed status and re-indexes them.
Inputs: clean, slugs. Returns: result
remove_docA
Remove documentation by slug, regardless of source type.
Works for downloaded devdocs.io bundles, local sources, and web sources.
Args: slug: Documentation slug to remove (e.g. 'async')
Inputs: slug (required). Returns: result
search_docsA
Search documentation using semantic similarity.
Args: query: Natural language search query (e.g. "how to make HTTP requests") top_k: Number of results to return (default: 10) min_score: Minimum vector-similarity score 0.0-1.0 (default: 0.3). Applies to the semantic/vector search leg only — keyword/BM25 matches (e.g. exact title matches for bare-word queries) can still surface in results even with low semantic similarity. slugs: Optional list of doc slugs to filter by (e.g. ['javascript', 'python']) source_type: Optional source type filter ('devdocs' or 'local')
Inputs: query (required), slugs, top_k, min_score, +1 more. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
TDQS
Scored across 9 tools
Each tool targets a distinct operation: listing, metadata, semantic search, content retrieval, download, index rebuild, removal, and adding local/web sources. There is no ambiguity or overlap between any two tools.
Most tools follow a verb_noun pattern (list_docs, search_docs, get_document, download_doc, remove_doc, rebuild_index), but 'doc_info' (noun_noun) and the add_local_source/add_web_source pair (verb_adj_noun) deviate slightly. Overall, the naming is still predictable and readable.
Nine tools is well-scoped for a documentation management server. Each tool earns its place, covering source management, search, retrieval, and maintenance without redundancy.
The tool set covers the full lifecycle: adding local/web sources, downloading docs, listing/inspecting, searching, retrieving content, removing, and rebuilding the index. There are no obvious gaps or dead ends.
Maintenance
Related MCP Connectors
Versioned documentation registry and semantic search for AI tools and coding assistants.
Search and read Rust documentation for the standard library and any crate on crates.io
Semantic search over Handsontable and HyperFormula docs, API reference, release notes, and issues.
Search and read Vector Panda docs: API operations, pricing, storage tiers, measured benchmarks.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides instant access to 700+ programming documentation sources and creates isolated Docker containers for safe code testing and experimentation. Combines comprehensive documentation lookup with containerized development environments for enhanced development workflows.AGPL 3.0
- AlicenseAqualityDmaintenanceProvides access to 600+ documentation libraries from DevDocs.io including Python, JavaScript, React, Django, and more. Enables searching, browsing, and retrieving documentation content directly through Claude Desktop.55MIT
- FlicenseAqualityDmaintenanceProvides AI models with direct access to documentation for over 600 technologies from DevDocs.io, including popular languages, frameworks, and tools. It enables comprehensive searching, content retrieval, and offline access via an intelligent local caching system.122-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants like Claude to search and retrieve technical documentation from a local DevDocs instance for hundreds of programming languages and frameworks.1MIT