Back to Directory/Developer Tools

io.github.Kapeli/dash-mcp-server

MCP server for Dash, the macOS API documentation browser. Search 200+ docsets.

Developer ToolsPythonv1.1.1

mcp-server-dash

A Model Context Protocol (MCP) server that provides tools to interact with the Dash documentation browser API.

Dash 8 is required. You can download Dash 8 at https://blog.kapeli.com/dash-8.

mcp-name: io.github.Kapeli/dash-mcp-server

Overview

The Dash MCP server provides tools for accessing and searching documentation directly from Dash, the macOS documentation browser. MCP clients can:

  • List installed docsets
  • Search across docsets and code snippets
  • Load documentation pages from search results
  • Enable full-text search for specific docsets

Notice

This is a work in progress. Any suggestions are welcome!

Tools

  1. list_installed_docsets
    • Lists all installed documentation sets in Dash
  2. search_documentation
    • Searches across docsets and snippets
  3. load_documentation_page
    • Loads a documentation page from a load_url returned by search_documentation
  4. enable_docset_fts
    • Enables full-text search for a specific docset

Requirements

  • macOS (required for Dash app)
  • Dash installed
  • Python 3.11.4 or higher
  • uv

Configuration

Using uvx

brew install uv
in claude_desktop_config.json
{
  "mcpServers": {
      "dash-api": {
          "command": "uvx",
          "args": [
              "--from",
              "git+https://github.com/Kapeli/dash-mcp-server.git",
              "dash-mcp-server"
          ]
      }
  }
}
in Claude Code
claude mcp add dash-api -- uvx --from "git+https://github.com/Kapeli/dash-mcp-server.git" "dash-mcp-server"

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx dash-mcp-server

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-kapeli-dash-mcp-server": {
      "command": "uvx",
      "args": [
        "dash-mcp-server"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

dash-mcp-serverpypi

Compatible MCP Clients

io.github.Kapeli/dash-mcp-server works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More