Skip to main content
Glama

MUI MCP Server

A Model Context Protocol (MCP) server that dynamically fetches and provides real-time information for Material-UI (MUI) components from official documentation.

Features

  • πŸ” Search MUI Components: Find components by keywords

  • πŸ“š Component Information: Get detailed props, examples, and usage from live MUI docs

  • 🎨 Code Generation: Generate MUI components with custom props

  • πŸ“‹ Component Listing: Browse all 42+ available MUI components

  • ⚑ Dynamic Fetching: Always up-to-date with official MUI documentation

  • πŸ₯ Health Check: Monitor fetch latency and component availability

Related MCP server: material-web-mcp

Installation

This project uses uv for Python package management.

Prerequisites

  • Python 3.10 or higher

  • uv package manager

Setup

  1. Install uv if you haven't already:

pip install uv
  1. Install dependencies:

uv sync

Available Tools

The MCP server provides the following tools:

1. get_mui_component

Get detailed information about a specific MUI component.

Parameters:

  • component_name (string): Name of the MUI component (e.g., Button, TextField, Card)

Example:

{
  "component_name": "Button"
}

2. search_mui_components

Search for MUI components by keyword.

Parameters:

  • query (string): Search query (e.g., 'input', 'button', 'layout')

Example:

{
  "query": "input"
}

3. list_all_components

List all available MUI components (fetched dynamically from MUI docs).

Parameters: None

4. mui_health

Health check that fetches components live and reports count and latency.

Parameters: None

5. generate_mui_component

Generate a complete MUI component with specified props.

Parameters:

  • component_name (string): The MUI component to generate

  • props (object, optional): Props to apply to the component

  • children (string, optional): Content/children for the component

Example:

{
  "component_name": "Button",
  "props": {
    "variant": "contained",
    "color": "primary"
  },
  "children": "Click Me"
}

Available Components

The server dynamically fetches information for 42+ MUI components including:

  • Inputs: Button, TextField, Checkbox, Radio, Switch, Slider, Select, Autocomplete

  • Data Display: Typography, Avatar, Badge, Chip, List, Table, Tooltip

  • Feedback: Alert, Dialog, Snackbar, Progress (Circular/Linear), Skeleton

  • Surfaces: Card, Paper, Accordion, AppBar

  • Navigation: Drawer, Menu, Breadcrumbs, Link, Tabs, Pagination, Stepper

  • Layout: Box, Container, Grid, Stack, ImageList

  • Utils: Popover, Backdrop, SpeedDial, ToggleButton, Rating

All components are fetched live from mui.com with latest props, examples, and documentation.

Usage with Claude Desktop

To use this MCP server with Claude Desktop, add it to your Claude configuration:

Windows

Edit %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "mui-mcp-server": {
      "command": "uv",
      "args": [
        "--directory",
        "C:\\Users\\TejasBorate\\Desktop\\MUI-MCP-SERVER",
        "run",
        "mui-mcp-server"
      ]
    }
  }
}

macOS

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "mui-mcp-server": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/MUI-MCP-SERVER",
        "run",
        "mui-mcp-server"
      ]
    }
  }
}

Running the Server

Standalone

uv run mui-mcp-server

For Development

cd src/mui_mcp_server
uv run python server.py

Example Queries

Once connected to Claude, you can ask:

  • "Show me how to use a MUI Button component"

  • "Generate a TextField component with email validation"

  • "List all available MUI components"

  • "Search for layout components in MUI"

  • "Create a Card component with a header and actions"

Project Structure

MUI-MCP-SERVER/
β”œβ”€β”€ src/
β”‚   └── mui_mcp_server/
β”‚       β”œβ”€β”€ __init__.py
β”‚       β”œβ”€β”€ server.py          # Main MCP server implementation
β”‚       └── mui_fetcher.py     # Dynamic MUI docs scraper
β”œβ”€β”€ pyproject.toml             # Project dependencies
β”œβ”€β”€ README.md                  # This file
└── QUICKSTART.md              # Quick setup guide

How It Works

This server uses dynamic fetching to scrape component information directly from MUI's official documentation:

  1. On each request, it fetches the latest component data from mui.com

  2. Parses descriptions, props, and code examples from the docs

  3. Returns formatted, ready-to-use component information

  4. No static data or cache - always current with MUI releases

To add more components, edit COMPONENT_URLS in src/mui_mcp_server/mui_fetcher.py:

COMPONENT_URLS = {
    "YourComponent": "/material-ui/react-your-component/",
}

License

MIT

Contributing

Feel free to add more MUI components or improve the existing tool functionality!

Available Tools

5 tools
generate_mui_componentC

Generate a complete MUI component with specified props and customization

Inputs: component_name (required), props, children.

get_mui_componentC

Get detailed information about a specific MUI component including props, examples, and usage

Inputs: component_name (required).

list_all_componentsB

List all available MUI components in the database

Inputs: no named parameters.

mui_healthB

Health check: fetch components live and report count + latency

Inputs: no named parameters.

search_mui_componentsB

Search for MUI components by keyword or category

Inputs: query (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 5 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no overlap: generate creates new components, get retrieves details, list enumerates all components, health performs monitoring, and search filters components. An agent can easily distinguish between these operations.

    Naming Consistency4/5

    Four tools follow a consistent verb_noun pattern (generate_mui_component, get_mui_component, list_all_components, search_mui_components), but 'mui_health' deviates by placing the noun first. This minor inconsistency slightly reduces predictability.

    Tool Count5/5

    With 5 tools, this server is well-scoped for its MUI component management domain. Each tool earns its place by covering key operations: generation, retrieval, listing, health checks, and searching, without being overly sparse or bloated.

    Completeness4/5

    The tool surface covers core CRUD-like operations for MUI components (generate, get, list, search) and includes a health check, but lacks update or delete functionality. This minor gap is workable for agents focused on component discovery and creation.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      C
      maintenance
      Provides AI assistants with comprehensive access to Material UI documentation, component details, and setup guides for building React applications. It enables searching through 50+ components and provides structured information on imports, customization, and best practices.
      2
      -
    • A
      license
      A
      quality
      D
      maintenance
      Provides programmatic access to Material Web documentation and components for AI agents, enabling documentation search, template generation, and HTML validation.
      7
      18 npm
      1
      MIT
    • F
      license
      Not graded
      quality
      Not graded
      maintenance
      Provides AI assistants with access to HeroUI component library documentation, enabling them to list components, retrieve detailed API references, and explore customization options for building React applications.
      2
      -