SkillAgentSearch skills...

DocsetMCP

Model Context Protocol server for Dash-style docsets

Install / Use

claude mcp add codybrom -- npx -y github:codybrom/DocsetMCP

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

68/100

Supported Platforms

Claude Code
Claude Desktop

Tags

Our assessment of DocsetMCP

DocsetMCP scores 68/100 on our quality scale, 3882nd of 4,639 Development & Engineering skills we index.

Its MCP Server is 20 KB long, well organised into 99 sections with 21 code examples: a thorough specification that gives an agent plenty to work with.

It has 10 GitHub stars, so there is little community track record yet; judge it on its content.

Substance
30/30
Structure
20/20
Description
8/15
Adoption
4/20
Freshness
5/15

Maintenance, license and trust

  • The repository was last updated about 17 months ago. Expect some instructions to reference tool versions or APIs that have since changed.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 80/100, with 2 cautions from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

DocsetMCP compared with similar skills

All 4 of these similar skills score higher than DocsetMCP; compare them before choosing.

SkillScoreStarsUpdatedFormat
DocsetMCP (this skill)by codybrom681017mo agoMCP Server
taste-skillby Leonxlnx100108.3k2d agoCLAUDE.md
Agent-Reachby Panniantong100107.8k1d agoCLAUDE.md
headroomby headroomlabs-ai10078.6ktodayCLAUDE.md
ai-job-searchby ai-job-search-dev10068.9ktodayCLAUDE.md

Frequently asked questions

How do I install DocsetMCP?
Run claude mcp add codybrom -- npx -y github:codybrom/DocsetMCP. The install tabs above show the steps for each supported agent.
Which AI agents does DocsetMCP work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is DocsetMCP safe to use?
It is MIT-licensed and scores 80/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is DocsetMCP still maintained?
The repository was last updated about 17 months ago. Expect some instructions to reference tool versions or APIs that have since changed.

DocsetMCP

PyPI License: MIT Python

Access your local Dash documentation directly from AI assistants 🚀

DocsetMCP is a Model Context Protocol (MCP) server that seamlessly integrates your local Dash docsets with AI assistants like Claude, enabling instant access to offline documentation without leaving your conversation.

📋 Table of Contents

Why DocsetMCP?

  • 📚 Instant Documentation: No switching, no web searches. Get straight to the docs directly in your AI conversation
  • 🔒 Local and Private: Work with docset files on your machine
  • ⚡ Lightning Fast: Optimized caching and direct database queries
  • 🎯 Precise Results: Get exactly what you need with smart filtering

Quick Start

{
  "mcpServers": {
    "docsetmcp": {
      "command": "uvx",
      "args": ["docsetmcp"]
    }
  }
}

Add to your MCP config and restart your MCP client. Then try asking something like "Find me the AppIntent documentation"

✨ Features

Documentation Search

  • Multi-Docset Support: Search across 165+ supported docsets including Apple, NodeJS, Python, and more
  • Language Filtering: Target specific programming languages within docsets
  • Name-Based Search: Only returns entries where search terms match item names for precise results
  • Smart Ranking: Results ranked by match type (exact > prefix > substring) and dynamic type ordering
  • Container Guidance: Framework and class entries show drilldown notes for exploring members

Cheatsheet Access

  • Quick Reference: Instant access to Git, Vim, Docker, and 40+ other cheatsheets
  • Fuzzy Matching: Find cheatsheets even with partial names
  • Category Browsing: Explore commands by category within each cheatsheet
  • Search Within: Query specific commands inside any cheatsheet

Performance & Integration

  • Efficient Caching: In-memory caching for repeated queries
  • Direct Database Access: No intermediate servers or APIs
  • Universal: Works with Claude Desktop, Cursor, VS Code, and any MCP-compatible client
  • Framework Discovery: List all available frameworks/types in any docset
  • Container Guidance: Automatic drilldown notes for frameworks and classes with members

📦 Supported Docsets

DocsetMCP supports 165+ docsets including:

<details> <summary><b>Popular Languages</b></summary>
  • Python (2 & 3)
  • JavaScript / TypeScript
  • Java
  • C / C++
  • Go
  • Rust
  • Ruby
  • Swift / Objective-C
  • PHP
  • Bash
  • And many more...
</details> <details> <summary><b>Web Frameworks</b></summary>
  • React / Angular / Vue
  • Node.js / Express
  • Django / Flask
  • Ruby on Rails
  • Bootstrap
  • jQuery
  • And many more...
</details> <details> <summary><b>Developer Tools</b></summary>
  • Git (cheatsheet)
  • Docker (cheatsheet)
  • Vim (cheatsheet)
  • MySQL / PostgreSQL
  • MongoDB / Redis
  • nginx / Apache
  • And many more...
</details>

Use list_available_docsets to see all docsets installed on your system.

Prerequisites

  • macOS (Dash is Mac-only)
  • Dash with desired docsets downloaded
  • Python 3.10 or higher
  • UV package manager (How to Install)
  • An AI assistant that supports MCP (Claude Desktop, Claude Code CLI, Cursor IDE, etc.)

Configuration

Custom Docset Locations

By default, DocsetMCP looks for docsets in Dash's standard directories:

  • Docsets: ~/Library/Application Support/Dash/DocSets
  • Cheatsheets: ~/Library/Application Support/Dash/Cheat Sheets

You can customize these locations using:

Environment Variables

# Set custom docset directory
export DOCSET_PATH="/path/to/your/docsets"

# Set custom cheatsheet directory  
export CHEATSHEET_PATH="/path/to/your/cheatsheets"

# Run with custom paths
docsetmcp

Command Line Arguments

# Test with custom docset path
docsetmcp --docset-path "/path/to/your/docsets" --list-docsets

# Test with custom cheatsheet path
docsetmcp --cheatsheet-path "/path/to/your/cheatsheets" --test-connection

# Use both custom paths
docsetmcp --docset-path "/custom/docsets" --cheatsheet-path "/custom/cheatsheets"

# Use additional search paths (searches multiple locations)
docsetmcp --additional-docset-paths "/extra/docsets" "/more/docsets"
docsetmcp --additional-cheatsheet-paths "/extra/cheatsheets" "/more/cheatsheets"

Priority Order:

  1. CLI arguments (highest priority)
  2. Environment variables
  3. Default Dash locations (lowest priority)

Additional Search Paths:

The --additional-docset-paths and --additional-cheatsheet-paths options allow DocsetMCP to search in multiple locations beyond the primary path. This is useful when:

  • You have docsets in multiple directories
  • You want to include third-party or custom docsets
  • You're sharing docsets across different tools

DocsetMCP will automatically discover and configure docsets found in these additional paths.

MCP Client Setup

Choose your MCP client below for specific setup instructions:

<details> <summary><b>🤖 Claude Desktop</b></summary>

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "docsetmcp": {
      "command": "uvx",
      "args": ["docsetmcp"]
    }
  }
}

For custom docset locations:

{
  "mcpServers": {
    "docsetmcp": {
      "command": "uvx",
      "args": ["docsetmcp"],
      "env": {
        "DOCSET_PATH": "/path/to/your/docsets",
        "CHEATSHEET_PATH": "/path/to/your/cheatsheets"
      }
    }
  }
}
</details> <details> <summary><b>⌨️ Claude Code CLI</b></summary>
# For current project
claude mcp add docsetmcp "uvx docsetmcp"

# For all projects
claude mcp add --scope user docsetmcp "uvx docsetmcp"
</details> <details> <summary><b>📝 Cursor, VS Code, Windsurf and other MCP-compatible clients</b></summary>

Add to your MCP configuration (Cursor: .mcp/mcp.json in your project root:

{
  "mcpServers": {
    "docsetmcp": {
      "command": "uvx",
      "args": ["docsetmcp"]
    }
  }
}

Note: Restart your client and check your MCP settings for connection status.

</details>

Installation

No Installation Required (Recommended)

If your MCP client supports uvx, no installation is needed! The package will be automatically downloaded and run when needed. See the Quick Start or Configuration sections.

Manual Installation

If you prefer to install locally or your MCP client doesn't support uvx:

pip install docsetmcp

Then use docsetmcp instead of uvx docsetmcp in your configuration.

Development Installation

  1. Clone and install:

    git clone https://github.com/codybrom/docsetmcp.git
    cd docsetmcp
    pip install -e .
    
  2. Run tests (optional):

    # Install test dependencies
    pip install pytest pytest-cov pytest-xdist
    
    # Run basic tests
    pytest tests/test_docsets.py::TestDocsets::test_yaml_structure -v
    
    # Run quick tests (structure + existence checks)
    pytest tests/ -k "yaml_structure or test_docset_exists" -v
    
    # Run full test suite (all docsets)
    pytest tests/ -v
    
    # Run with coverage
    pytest tests/ --cov=docsetmcp --cov-report=html -v
    
    # Validate all local cheatsheets work (integration test)
    python scripts/validate_cheatsheets.py
    

Usage Examples

Once configured, you can ask your AI assistant to search documentation naturally:

🍎 iOS/macOS Development

"Search for URLSession documentation"
"Show me how to use AppIntent in SwiftUI"
"Find CarPlay framework documentation"  # Returns framework + related entries with drilldown notes
"Search for CPListTemplate class"       # Returns specific CarPlay class
"Find NSPredicate examples"

🌐 Web Development

"Look up Express.js middleware documentation"
"Search React hooks in the React docset"
"Find CSS flexbox properties"

🛠️ DevOps & Terminal

"Search git rebase commands in the Git cheatsheet"
"Show Docker compose syntax from the cheatsheet"
"Find bash array manipulation commands"

📊 Data Science

"Search pandas DataFrame methods"
"Look up NumPy array broadcasting"
"Find matplotlib pyplot functions"

Advanced Usage

# Search specific docset with language filter
"Use search_docs for 'URLSession' in the apple_api_reference docset with Swift language"

# Explore framework members using drilldown guidance
"Search for 'SwiftData' then follow the drilldown note to see all members"

# List all available tools
"What frameworks are available in the nodejs docset?"

# Browse cheatsheet categories
"Show all categories in the vim cheatsheet"

Discovery Workflow

DocsetMCP is designed for name-based searches, not keyword searching. Follow this workflow:

1. Start with Discovery Tools

# Find what languages are available
"List all available programming languages"

# Find docsets for your language
"Show me all Python docsets"

# See what types are available in a docset
"List all types in the apple_api_reference docset for Swift"

# Browse entries by type with letter filters
"Show me all Classes starting with 'UI' in apple_api_reference for Swift"

2. Then Search by Exact Names

# Once you know exact names, search for them
"Search for UIViewController in apple_api_reference with Swift"
"Find readFile documentation in nodejs docset"
"Show me the CarPlay framework documentation"

3. Use Drilldown Notes

When you find container types (frameworks, classes), follow the drilldown guidance:

# Container entry will show: "contains 42 additional members - use search_docs('ContainerName', max_results=50)"
"Search for SwiftData in apple_api_reference with max_results=50"

How It Works

  1. Multi-Format Support: Handles both Apple cache format and tarix compression
  2. Direct Database Access: Queries Dash's SQLite databases for fast lookups
  3. Name-Based Matching: Only returns entries where search terms match item names (no false positives)
  4. Smart Ranking: Prioritizes exact matches, then prefix matches, then substring matches
  5. Dynamic Type Ordering: Uses docset configuration files for intelligent result prioritization
  6. Container Detection: Automatically detects frameworks/classes with members and provides exploration guidance
  7. Smart Extraction: Decompresses Apple's DocC JSON or extracts HTML from tarix archives
  8. Markdown Formatting: Converts documentation to readable Markdown

Available Tools

DocsetMCP provides eleven powerful tools for accessing your documentation:

🔍 search_docs

Search and extract documentation from any docset.

| Parameter | Type | Description | Default | |-----------|------|-------------|---------| | query | string | Exact name to search (not keywords) | required | | docset | string | Target docset (e.g., 'nodejs', 'python_3') | required | | language | string | Programming language filter | docset default | | max_results | int | Number of results (1-10) | 3 |

📋 search_cheatsheet

Search Dash cheatsheets for quick command reference.

| Parameter | Type | Description | Default | |-----------|------|-------------|---------| | cheatsheet | string | Cheatsh

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars10
CategoryDevelopment
Updated1y ago
Forks3

Languages

Python

Trust signals

80/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

1 medium1 low1 info