MCP ExplorerExplorer

Marimo Docs Mcp

@StevenBtwon 10 months ago
7 MIT
FreeCommunity
AI Systems
A Model Context Protocol (MCP) server that provides programmatic access to the Marimo Documentation.

Overview

What is Marimo Docs Mcp

marimo-docs-mcp is a Model Context Protocol (MCP) server that provides programmatic access to the Marimo Documentation, allowing users to fetch and search through API documentation for various Marimo components and interfaces.

Use cases

Use cases include fetching API documentation for specific components like buttons or sliders, searching for documentation entries based on keywords, and integrating the server into development tools for enhanced documentation access.

How to use

To use marimo-docs-mcp, install the necessary dependencies, build the server, and configure it with either Claude Desktop or VSCode Cline Extension. You can then access the API documentation and search for specific elements or components.

Key features

Key features include the ‘get_element_api’ tool for retrieving detailed API documentation for specific UI elements, and the ‘search_api’ tool for searching across all Marimo API documentation. It also supports structured access to various documentation sections, including inputs, layouts, media, and core features.

Where to use

marimo-docs-mcp can be used in software development environments where Marimo components are implemented, particularly in applications that require detailed documentation and examples for UI elements and APIs.

Content

Marimo Documenation MCP Server

A Model Context Protocol (MCP) server that provides access to the Marimo Documentation.

This TypeScript-based MCP server lets you fetch and search through Marimo’s API documentation, providing structured access to components, interfaces, and examples across all documentation sections.

Features

Tools

get_element_api

Get detailed API documentation for any Marimo UI element or component.

  • Input: element (string) - Name of the element to get documentation for (e.g., “slider”, “button”)
  • Output: Structured API documentation including:
    • Title and description
    • Parameters with types and defaults
    • Code examples
    • Usage patterns

search_api

Search across all Marimo API documentation.

  • Input: query (string) - Search term to find in documentation
  • Output: Array of matching documentation entries from any section

Documentation Sections

The server provides access to documentation for all Marimo components:

Inputs

  • Form elements (button, checkbox, dropdown, etc.)
  • Data inputs (array, dataframe, dictionary)
  • File handling (file, file_browser)
  • Interactive elements (slider, range_slider, tabs)

Layouts

  • Structural components (accordion, sidebar, tree)
  • Organization tools (callout, carousel)
  • Content management (lazy, routes)

Media

  • Media elements (audio, video, image)
  • File handling (download, pdf)
  • Text display (plain_text)

Core Features

  • Markdown
  • Control Flow
  • Plotting
  • HTML
  • State Management
  • And more…

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Installation

With Claude Desktop

Add to:

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "marimo-docs": {
      "command": "/path/to/marimo-docs/build/index.js"
    }
  }
}

With VSCode Cline Extension

Add to:

  • MacOS: ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
  • Windows: %APPDATA%/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
{
  "mcpServers": {
    "marimo-docs": {
      "command": "node",
      "args": [
        "/path/to/marimo-docs/build/index.js"
      ]
    }
  }
}

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. For development, the server outputs detailed logs to stderr.

You can also use the MCP Inspector:

npm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

Error Handling

The server provides organized error messages that:

  • List all available elements grouped by section
  • Provide clear feedback on invalid requests
  • Include proper HTTP error codes

Implementation Details

  • Uses Cheerio for HTML parsing of documentation pages
  • Implements caching to reduce documentation fetch requests
  • Handles proper URL construction for all documentation sections
  • Supports recursive search across all documentation content

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers