by serverless-dna
Enable AI search on MkDocs sites by converting HTML to markdown and R markdown, leveraging Lunr.js for powerful md forma
Searches and retrieves content from any MkDocs documentation site using the site's existing Lunr.js search index and converts pages to markdown.
MkDocs Search is a community-built MCP server published by serverless-dna that provides AI assistants with tools and capabilities via the Model Context Protocol. Enable AI search on MkDocs sites by converting HTML to markdown and R markdown, leveraging Lunr.js for powerful md forma It is categorized under search web, developer tools. This server exposes 2 tools that AI clients can invoke during conversations and coding sessions.
You can install MkDocs Search in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
MIT
MkDocs Search is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Fetch and extract information from websites automatically
Example
Research competitor pricing, scrape product reviews, monitor news mentions
Automate 5-10 hours/week of manual web research
Track website changes, new content, price updates
Example
Monitor competitor blog for new posts, track stock availability, watch for pricing changes
Stay informed without manual checking, never miss important updates
Extract structured data from multiple websites
Example
Compile product listings from 10 e-commerce sites, aggregate job postings, collect real estate data
Build datasets 100x faster than manual copying
Share your MCP server with the developer community
Useful MCP listing: MkDocs Search is the kind of server we cite when onboarding engineers to host + tool permissions.
We evaluated MkDocs Search against two servers with overlapping tools; this profile had the clearer scope statement.
MkDocs Search is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
Useful MCP listing: MkDocs Search is the kind of server we cite when onboarding engineers to host + tool permissions.
Strong directory entry: MkDocs Search surfaces stars and publisher context so we could sanity-check maintenance before adopting.
We wired MkDocs Search into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
We wired MkDocs Search into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
According to our notes, MkDocs Search benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
Strong directory entry: MkDocs Search surfaces stars and publisher context so we could sanity-check maintenance before adopting.
Strong directory entry: MkDocs Search surfaces stars and publisher context so we could sanity-check maintenance before adopting.
showing 1-10 of 64
A Model Context Protocol (MCP) server that provides search functionality for any MkDocs powered site. This server relies on the existing MkDocs search implementation using the Lunr.Js search engine.
Follow the installation instructions please follow the Model Context Protocol Quickstart For Claude Desktop users. You will need to add a section tothe MCP configuration file as follows:
{
"mcpServers": {
"my-docs": {
"command": "npx",
"args": [
"-y",
"@serverless-dna/mkdocs-mcp",
"https://your-doc-site",
"Describe what you are enabling search for to help your AI Agent"
]
}
}
}
This project implements an MCP server that enables Large Language Models (LLMs) to search through any published mkdocs documentation site. It uses lunr.js for efficient local search capabilities and provides results that can be summarized and presented to users.
# Install dependencies
pnpm install
# Build the project
pnpm build
The server can be run as an MCP server that communicates over stdio:
npx -y @serverless-dna/mkdocs-mcp https://your-doc-site.com
The server provides a searchMkDoc tool with the following parameters:
search: The search query stringversion: Optional version string (only for versioned sites)Sample Response:
{
"query": "logger",
"version": "latest",
"total": 3,
"results": [
{
"title": "Logger",
"url": "https://docs.example.com/latest/core/logger/",
"score": 1.2,
"preview": "Logger utility for structured logging...",
"location": "core/logger/"
},
{
"title": "Configuration",
"url": "https://docs.example.com/latest/core/logger/#config",
"score": 0.8,
"preview": "Configure the logger with custom settings...",
"location": "core/logger/#config",
"parentArticle": {
"title": "Logger",
"location": "core/logger/",
"url": "https://docs.example.com/latest/core/logger/"
}
}
]
}
Features:
The server provides a fetchMkDoc tool that retrieves and converts documentation pages:
url: The URL of the documentation page to fetchSample Response:
{
"title": "Getting Started",
"markdown": "# Getting Started
This guide will help you...
## Installation
```bash
npm install example
```",
"code_examples": [
{
"title": "Installation",
"description": "Install the package using npm",
"code": "```bash
npm install example
```"
},
{
"title": "Basic Usage",
"description": "Import and initialize the library",
"code": "```python
from example import Client
client = Client()
```"
}
],
"url": "https://docs.example.com/getting-started/"
}
The server can be configured using environment variables:
SEARCH_CONFIDENCE_THRESHOLD: Minimum confidence score for search results (default: 0.1)SEARCH_MAX_RESULTS: Maximum number of search results to return (default: 10)CACHE_BASE_PATH: Base directory for cache storage (default: <system-tmp>/mkdocs-mcp-cache)Example:
SEARCH_MAX_RESULTS=20 SEARCH_CONFIDENCE_THRESHOLD=0.2 npx @serverless-dna/mkdocs-mcp https://your-doc-site.com
Cache Location: By default, the server caches search indexes and converted documentation in the system's temporary directory:
/tmp/mkdocs-mcp-cache (or $TMPDIR)%TEMP%\mkdocs-mcp-cacheYou can override this with the CACHE_BASE_PATH environment variable.
pnpm build
pnpm test
During development you can run the MCP Server with Claude Desktop using the following configuration.
The configuration below shows running in windows claude desktop while developing using the Windows Subsystem for Linux (WSL). Mac or Linux environments you can run in a similar way.
The output is a bundled file which enables Node installed in windows to run the MCP server since all dependencies are bundled.
{
"mcpServers": {
"powertools": {
"command": "node",
"args": [
"\\wsl$\Ubuntu\home\walmsles\dev\serverless-dna\mkdocs-mcp\dist\index.js",
"Search online documentation"
]
}
}
}
MIT
Interact with services that don't offer APIs
Example
Check form submissions, validate website functionality, test user flows
Automate interactions with any website, even without API
Prerequisites
Time Estimate
20-40 minutes including configuration and testing
Steps
Troubleshooting
✓ Do
✗ Don't
💡 Pro Tips
Architecture
MCP server handles HTTP requests, HTML parsing, JavaScript rendering (if headless browser), and returns structured data to Claude.
Protocols
Compatibility
✓ Use when
Use for research automation, content monitoring, data aggregation from multiple sources, and when official APIs don't exist. Best for read-only information gathering.
✗ Avoid when
Avoid for sites with APIs (use API instead), sites that explicitly forbid scraping, when data is copyrighted, or for login-required content without proper authorization.