io.github.ubaumann/mkdocs-mcp MCP Server
io.github.ubaumann/mkdocs-mcp
Serve MkDocs documentation as MCP resources for AI agents to access and query.
What is the io.github.ubaumann/mkdocs-mcp MCP server?
The mkdocs-mcp MCP server integrates MCP into the MkDocs workflow, exposing your MkDocs documentation as resources that AI agents can access. It provides a script to build your MkDocs project and launch an MCP server, with configurable options for how documentation pages are named and aggregated.
mkdocs-mcp is an experimental plugin that bridges MkDocs and the Model Context Protocol. Instead of using the standard `mkdocs serve` command, it provides a `mkdocs_mcp` script that builds your documentation and exposes it as MCP resources. This allows Claude and other AI agents to query and interact with your MkDocs documentation directly. It supports multiple naming styles, markdown/HTML output, and page aggregation options.
How to install io.github.ubaumann/mkdocs-mcp
Copy-paste configuration for popular MCP clients.
MKDOCS_PROJECT_PATHrequiredPath to the MkDocs project
Tools & capabilities
Tools this server exposes to the agent.
MkDocs Resource Server— Exposes MkDocs documentation pages as MCP resources that can be queried by AI agentsDocumentation Build and Serve— Builds MkDocs projects and serves them via MCP with configurable naming and aggregation options
Use cases
- Query your MkDocs documentation directly from Claude or other AI agents
- Aggregate documentation pages into combined files for easier AI processing
- Access documentation in markdown or HTML format depending on your needs
- Serve project documentation as MCP resources for automated documentation analysis
- Enable AI agents to search and reference your MkDocs content in real-time
io.github.ubaumann/mkdocs-mcp MCP server FAQ
mkdocs-mcp is an MCP server that exposes your MkDocs documentation as resources. It builds your MkDocs project and launches an MCP server, allowing AI agents like Claude to access and query your documentation.
Install it via PyPI using `pip install mkdocs-mcp` or `uv pip install mkdocs-mcp`. The project uses `uv` for dependency management.
Run `uv run mkdocs-mcp -mt stdio` in your MkDocs project directory. Use `--mkdocs-project-path` to specify a different project location, or set the `MKDOCS_PROJECT_PATH` environment variable.
Add the `mcp` plugin to your `mkdocs.yml` file with options like `naming_style` (src_file, dst_url, or title), `prefer_markdown` (True/False), and aggregation options (`combine_all_pages`, `combine_by_folder`).
Yes. Configure it in your `claude_desktop_config.json` by specifying the command and arguments to run the `mkdocs-mcp` script. WSL users can use `wsl.exe` as the command.
No, it is currently in early proof-of-concept stage. The project welcomes feedback and contributions for improvement.
README (reference)
Source of truth, from the repository.
mkdocs-mcp
MkDocs Plugin to Serve MCP
A proof-of-concept — feedback welcome!
mkdocs-mcp is an experimental plugin designed to integrate an MCP server into the MkDocs workflow. Due to limitations in MkDocs, the native mkdocs serve command cannot be overridden.
Instead, this project provides the mkdocs_mcp script to handle the build process and launch the MCP server.
Quick Start
Requirements
This project uses uv for dependency management and virtual environments.
Running the MCP Server
To start the MCP server:
uv run mkdocs-mcp -mt stdio
Use the --mkdocs-project-path option to specify the path to your MkDocs project if it's not in the current directory. The environment variable MKDOCS_PROJECT_PATH can also be set for this purpose.
MkDocs Configuration
Make sure to include mcp in your mkdocs.yml plugin list:
plugins:
- mcp:
naming_style: src_file # "src_file"(default), "dst_url" or "title"
prefer_markdown: True # By default the source markdown is used, set to False to convert the output HTML to markdown
combine_all_pages: False # Aggregate all pages into one file
combine_by_folder: False # Aggregate each folder
Using Claude Desktop with WSL
If you're working with Claude Desktop and WSL, configure your claude_desktop_config.json as follows (adjust paths as needed):
{
"mcpServers": {
"mkdocs": {
"command": "wsl.exe",
"args": [
"bash",
"-c",
"/home/urs/.cargo/bin/uv run --directory /home/urs/projects/mkdocs-mcp mkdocs-mcp -mt stdio"
]
}
}
}
Inspecting the MCP Server
For development and debugging, you can directly inspect the MCP server:
uv run mcp dev src/mkdocs_mcp/__main__.py
Notes
- This project is still in the early proof-of-concept stage.
- Contributions and feedback are highly encouraged!
Thanks for checking out mkdocs-mcp!
GitHub MCP Registry mcp-name: io.github.ubaumann/mkdocs-mcp
Related MCP servers
Route options, fare estimates, ETA, and ride deeplinks via the KLO Mobility A2A agent.
Search AU enterprise AI patterns, benchmarks, incidents, and regulatory changes.

Regulated-industry AI compliance: EU AI Act, APRA, NIST AI RMF, ISO 42001, AU AI Safety.

uCoz
Manage uCoz sites from an AI assistant: templates, content, shop, users, and files.

Fail-closed approval layer that freezes destructive agent actions and routes them to a remote inbox for human sign-off.
