MkDocs Material MCP Server
Enables searching and retrieving documentation from MkDocs Material-powered sites.
README
MkDocs Material MCP Server
Model Context Protocol (MCP) server for documentation sites built with MkDocs Material.
This MCP server provides tools to search and retrieve documentation from any MkDocs Material-powered documentation site. By default, it connects to the MkDocs Material documentation itself.
Features
- Search Documentation: Find relevant pages across the entire documentation site
- Retrieve Pages: Get full page content in markdown format with source URLs
- Multi-site Support: Configure multiple MkDocs Material sites simultaneously
- Dynamic Tool Generation: Automatically creates MCP tools for each configured site
Prerequisites
Installation Requirements
- Install uv from Astral or the GitHub README
- Install Python 3.10 or newer using
uv python install 3.10(or a more recent version)
Installation
Kiro CLI
Configure the MCP server in your MCP client (like Kiro CLI) configuration (~/.kiro/settings/mcp.json):
{
"mcpServers": {
"mkdocs": {
"command": "uvx",
"args": ["mkdocs-mcp@latest"],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR"
},
"disabled": false,
"autoApprove": ["search_mkdocs-material", "get_mkdocs-material_page"]
}
}
}
Custom MkDocs Material Site
To use with your own MkDocs Material-powered documentation:
{
"mcpServers": {
"my-docs": {
"command": "uvx",
"args": ["mkdocs-mcp@latest"],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR",
"MKDOCS_SITES": "mysite=https://your-docs-site.com"
},
"disabled": false,
"autoApprove": ["search_mysite", "get_mysite_page"]
}
}
}
Multiple Sites
Configure multiple MkDocs Material sites:
{
"mcpServers": {
"mkdocs-multi": {
"command": "uvx",
"args": ["mkdocs-mcp@latest"],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR",
"MKDOCS_SITES": "mkdocs-material=https://squidfunk.github.io/mkdocs-material,mysite=https://your-docs-site.com"
},
"disabled": false,
"autoApprove": ["search_mkdocs-material", "get_mkdocs-material_page", "search_mysite", "get_mysite_page"]
}
}
}
Windows Installation
For Windows users, the MCP server configuration format is slightly different:
{
"mcpServers": {
"mkdocs": {
"disabled": false,
"timeout": 60,
"type": "stdio",
"command": "uv",
"args": [
"tool",
"run",
"--from",
"mkdocs-mcp@latest",
"mkdocs-mcp.exe"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR"
}
}
}
}
Environment Variables
| Variable | Description | Default |
|---|---|---|
FASTMCP_LOG_LEVEL |
Logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL) | WARNING |
MKDOCS_SITES |
Comma-separated list of site configurations in format key=url |
mkdocs-material=https://squidfunk.github.io/mkdocs-material |
Performance
Large Documentation Sites: Sites with very large search indexes use async loading with a 1.5-second timeout:
- First search returns a "loading" message if index isn't ready
- The LLM can retry the search (index loads in background)
- Once loaded, the index is cached and searches are instant
Search Capabilities
This MCP server provides basic search functionality:
- Phrase matching: Exact phrase matches are prioritized (highest relevance)
- Word matching: Falls back to matching individual words when exact phrases don't match
- Scoring: Results are ranked by relevance (exact matches first, then by word count)
The LLM interprets search results and provides meaningful answers, making up for the simpler search algorithm with intelligent result processing.
Corporate Network Support
For corporate environments with proxy servers:
{
"env": {
"HTTPS_PROXY": "http://proxy.company.com:8080",
"HTTP_PROXY": "http://proxy.company.com:8080"
}
}
For authenticated proxies:
{
"env": {
"HTTPS_PROXY": "http://username:password@proxy.company.com:8080"
}
}
Basic Usage
Example queries:
- "Search MkDocs Material documentation for admonitions"
- "How do I use code blocks in MkDocs Material?"
- "What are the customization options for MkDocs Material?"
About MkDocs Material
MkDocs Material is a powerful documentation framework built on top of MkDocs. This MCP server works with any documentation site built using MkDocs Material.
Development
From Source
git clone https://github.com/ojacques/mkdocs-mcp.git
cd mkdocs-mcp
pip install -e .
mkdocs-mcp
Running Tests
# Install with dev dependencies
pip install -e ".[dev]"
# Run tests
pytest -v
# Run tests with coverage
pytest --cov=mkdocs_mcp --cov-report=html
Tests are automatically run on push and pull requests via GitHub Actions.
Publishing
This package is automatically published to PyPI when a new release is created on GitHub:
- Update version in
pyproject.toml - Create a new release on GitHub with a tag (e.g.,
v0.1.0) - GitHub Actions will automatically build and publish to PyPI
Note: Requires PyPI trusted publishing to be configured for the repository.
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.