- Home
- MCP servers
- DocsetMCP
DocsetMCP
- python
6
GitHub Stars
python
Language
3 months ago
First Indexed
3 weeks ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"codybrom-docsetmcp": {
"command": "uvx",
"args": [
"docsetmcp"
],
"env": {
"DOCSET_PATH": "YOUR_DOCSET_PATH",
"CHEATSHEET_PATH": "YOUR_CHEATSHEET_PATH"
}
}
}
}DocsetMCP is an MCP server that lets you search and access your local Dash docsets from AI assistants, providing offline, fast, and precise documentation results without leaving the chat. It ties together your Dash docsets with your MCP client so you can quickly look up APIs, commands, and frameworks while you’re coding or exploring concepts.
How to use
You connect DocsetMCP to your MCP client and start querying your local Dash docsets directly from the conversation. Use natural language prompts to search across installed docsets, filter by language, and drill down into frameworks and members. You can also explore related cheatsheets and commands with quick access and smart ranking that favors exact and prefix matches.
How to install
Prerequisites and options are available depending on your setup.
# Prerequisites
- macOS with Dash installed and desired docsets downloaded
- Python 3.10 or higher
- UV package manager (How to Install)
- An MCP client that supports MCP (Claude Desktop, Claude Code CLI, Cursor IDE, etc.)
# No installation required if your MCP client supports uvx
# Use the following configuration in your MCP client
{
"mcpServers": {
"docsetmcp": {
"command": "uvx",
"args": ["docsetmcp"]
}
}
}
# Manual installation
pip install docsetmcp
# Then use the same runtime command in your configuration
Configuration
You can customize where DocsetMCP looks for docsets and cheatsheets. By default it searches Dash’s standard directories for DocSets and Cheat Sheets, but you can override these locations with environment variables or command line arguments.
# Environment variables to override locations
export DOCSET_PATH="/path/to/your/docsets"
export CHEATSHEET_PATH="/path/to/your/cheatsheets"
# Run with custom paths
docsetmcp
Usage examples
Once configured, your MCP client can perform searches like: Look up a function in a specific docset, find a class, or list available docsets by language. Use exact names when possible to improve precision.
Troubleshooting
If you run into issues, check your MCP connection, ensure the docset paths are correct, and verify Python version is 3.10 or newer. Common problems include missing docsets in Dash, incorrect command in your MCP config, or environment variable misconfigurations.
Development and testing
Development steps and tests are available for contributors who want to add docsets or improve the server. Run the test suite and development commands as described in the project’s guidelines to validate configurations and docset structures.
Notes on capabilities
DocsetMCP provides multi-docset search, language filtering, name-based matching, smart ranking, and container guidance for frameworks and classes. It supports quick cheatsheet access and direct database querying for fast results, with in-memory caching to speed up repeated queries.
Available tools
search_docs
Search and extract documentation from any docset using a query, target docset, optional language, and max results.
search_cheatsheet
Search Dash cheatsheets for quick command references with optional category and max results.
list_available_docsets
List all installed Dash docsets with their supported languages.
list_available_cheatsheets
List all available Dash cheatsheets that can be searched.
list_frameworks
List frameworks or types within a specific docset.
list_languages
Discover all programming languages with available documentation.
list_docsets_by_language
Find all docsets that support a specific programming language.
list_types
List all available types (Class, Protocol, Function, etc.) in a docset/language.
list_entries
List entries filtered by type and optional name prefix.
list_cheatsheet_categories
List all categories within a specific cheatsheet.
fetch_cheatsheet
Fetch entire cheatsheet content for comprehensive access.