Skip to main content

A token‑friendly local MCP server for DaisyUI component documentation

Project description

🌼 DaisyUI MCP Server

Python MCP License

A token‑friendly local MCP server for DaisyUI component documentation

Give your AI assistant the power to build beautiful UIs with DaisyUI 🚀

FeaturesInstallationUsageConfigurationFAQ

✨ Features

  • Token‑Efficient – Only exposes relevant context via MCP tools, saving precious tokens
  • 60+ Components – Full coverage of DaisyUI’s component library
  • Auto‑Updatable – Fetch the latest docs anytime with one command
  • Customizable – Edit or add your own component docs to fit your project
  • Fast & Lightweight – Built with FastMCP for optimal performance

🛠️ MCP Tools

This server exposes two tools that AI assistants can use:

  • list_components – Lists all available DaisyUI components with short descriptions
  • get_component – Gets full documentation for a specific component (classes, syntax, examples)

💡 The component docs are pulled from daisyui.com/llms.txt and stored locally as markdown files. You can also add your own custom components or edit existing ones to match your project needs.

📦 Installation

1. Clone the repository

git clone https://github.com/birdseyevue/daisyui-mcp.git
cd daisyui-mcp

2. Create a virtual environment (recommended)

python -m venv venv

# Windows
venv\Scripts\activate

# macOS/Linux
source venv/bin/activate

3. Install dependencies

pip install -r requirements.txt

🚀 Usage

First‑time setup

On first run, the MCP server will not have any component docs. Fetch them by running:

python update_components.py

This fetches the latest llms.txt from DaisyUI and generates all the markdown files in /components.

Running the server

python mcp_server.py

Updating component docs

If DaisyUI releases new components or updates their docs, simply run:

python update_components.py

⚙️ Configuration

Add the MCP server to your AI assistant’s configuration.

Generic Configuration
{
  "servers": {
    "daisyui": {
      "command": "<path-to-repo>/venv/Scripts/python.exe",
      "args": ["<path-to-repo>/mcp_server.py"]
    }
  }
}
Windows Example
{
  "servers": {
    "daisyui": {
      "command": "C:/Users/username/Downloads/fastmcp/venv/Scripts/python.exe",
      "args": ["C:/Users/username/Downloads/fastmcp/mcp_server.py"]
    }
  }
}
macOS/Linux Example
{
  "servers": {
    "daisyui": {
      "command": "/home/username/fastmcp/venv/bin/python",
      "args": ["/home/username/fastmcp/mcp_server.py"]
    }
  }
}

📁 Project Structure

fastmcp/
├── mcp_server.py          # The MCP server
├── update_components.py   # Script to fetch/update component docs
├── requirements.txt       # Dependencies (just fastmcp)
└── components/            # Markdown files for each component
    ├── button.md
    ├── card.md
    ├── modal.md
    ├── table.md
    └── ... (60+ components)

❓ 1 most Frequently Asked Question

Why are update_components.py and mcp_server.py separate scripts?

It may seem more efficient to combine them into a single script that automatically fetches docs on startup. However, keeping them separate provides important flexibility:

  • Preserving custom components – If you add or modify component markdown files in /components, running update_components.py would overwrite them with the fresh upstream content. By separating the update step, you can decide when to pull the latest DaisyUI docs without losing your customizations.

  • Control over updates – You might want to run the server with a known‑good set of docs, and only update when you explicitly choose to. This separation lets you keep the server running while you fetch updates independently.

If you don’t need custom components and prefer a one‑step launch, you can create a simple wrapper script (.bat, .sh, or .ps1) that runs both commands sequentially, or modify the server to call the update function on startup. The current design prioritizes flexibility for users who want to keep their own modifications.

❗ Disclaimer

DaisyUI has an official Blueprint MCP ($600 lifetime) with premium features.

This project is not that. It’s a free, DIY alternative using their publicly available documentation.

  • ✅ No competition
  • ✅ Just a personal tool I wanted to share

If you want an official experience with premium features, consider supporting DaisyUI by purchasing their Blueprint MCP!

🤝 Contributing

Contributions are welcome! Feel free to:

  • 🐛 Report bugs
  • 💡 Suggest new features
  • 📝 Improve documentation
  • 🔧 Submit pull requests

📄 License

This project is licensed under the MIT License — see the LICENSE file for details.

Free to use, modify, and distribute! Have fun! 🎉

Made with ❤️ for the DaisyUI community

⭐ Star this repo if you find it useful!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_birdseyevue_daisyui_mcp-0.1.1.tar.gz (22.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_birdseyevue_daisyui_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: iflow_mcp_birdseyevue_daisyui_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 22.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_birdseyevue_daisyui_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7dcf46b8b1be067f8d396bcfc2afe8506b0e0ea6112d41fb935b514b10cd287e
MD5 fbfc25921359b5f7677cfa02a3809e28
BLAKE2b-256 8e0ff940a402dcc73a192ad80e2255fdaf63fb0e4449ed99525ea2a660a94070

See more details on using hashes here.

File details

Details for the file iflow_mcp_birdseyevue_daisyui_mcp-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_birdseyevue_daisyui_mcp-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 42.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_birdseyevue_daisyui_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0fd9258d32041bf6739f01076b0456febe6fe63012e45aa832d8cd42a09095a4
MD5 38f5ac87508783a0525fc510dc0d3414
BLAKE2b-256 0ffb192b8c57df4be0d0f3401e7c22f662fe691b84a956e4b85bbc8b108ec5b9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page