Livewire Flux Mcp

io.github.leMaurPublished by GitHub account leMaurv2.3.6Updated Oct 24, 2026

Flux UI component and layout docs for AI coding agents. Live from fluxui.dev, Pro-tier aware.

Overview

AI-generated overview

A local MCP server that lets an AI assistant fetch, list and search Livewire Flux component, layout and Heroicon documentation from fluxui.dev.

What you can do
Fetch documentation for a specific Flux component or layout, including its reference section with API details and props, for Flux v1 or v2 and with a notice when a component is Pro-tier only. List all available Flux components, optionally filtered by free or pro tier. List all available Flux layouts. Browse and search Heroicons for the flux:icon component, filtered by variant or search term. Responses are cached in memory for 24 hours.
When to use it
Useful when an assistant writes or reviews Laravel Livewire interfaces with Flux UI and needs current component, layout or icon documentation, especially to know which components require a paid Flux Pro license. It complements Laravel Boost by fetching a single scoped page instead of a broad semantic search.
Requirements
Runs locally over stdio, launched with npx, so Node.js and network access to fluxui.dev and the Heroicons GitHub repository are needed. No accounts, API keys or environment variables are declared. An optional installer command writes agent skill and guideline files into a project.
Before you install
The server scrapes the official Flux website and GitHub, so content depends on those sites and on GitHub API rate limits. The optional install command writes and can replace agent skill and guideline files in the project, including Boost's bundled fluxui-development skill; use the dry-run and force options carefully. It is an unaffiliated personal project.

Installation

In SourceWeft

  1. Open Livewire Flux Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Livewire Flux MCP

[Npm] [CodeQL] [License] [Downloads] [Sponsor]

An MCP (Model Context Protocol) server that provides access to Livewire Flux Components and Layouts from Livewire Flux. This server allows AI assistants to fetch and search through Flux component and layout documentation on demand.

⚠️ Disclaimer

This is a personal project and is not affiliated with Livewire Flux.

What it does

This MCP server scrapes and provides structured access to the Livewire Flux documentation, enabling AI assistants to:

  • Fetch documentation for specific Flux components from https://fluxui.dev/components/
  • Fetch documentation for specific Flux layouts from https://fluxui.dev/layouts/
  • Access component and layout reference sections with API details, props, and usage patterns
  • Search through component and layout documentation content
  • List all available Flux components
  • Browse and search all available Heroicons for use with flux:icon component
  • Access up-to-date documentation directly from the official Flux website
  • High-performance caching with 24-hour expiration for optimal response times

Why not just Laravel Boost?

Boost already indexes Flux through its search-docs tool, and for a lot of questions that is enough. Two things it does not do:

  • Scoped answers. search-docs is a semantic search over a 17k-document corpus, so a broad Flux question can come back as a several-thousand-token dump (laravel/boost#290). This server fetches the one component page you asked for, plus its reference section.
  • Pro-tier awareness. Boost's bundled fluxui-development skill carries a hardcoded component list and does not tell your agent which components need a paid Flux license. This server reads the tier live and flags it, so your agent stops writing markup you cannot ship.

If you are on Boost, npx livewire-flux-mcp install wires both together — see AI Guidelines & Skills. The two are complementary: keep Boost for Laravel, Livewire, Pest and the rest; let this server answer Flux.

Set Up Your Agents

The server runs over stdio and is launched with npx, so there is nothing to install globally. Every agent stores that differently — pick yours below.

Cursor

One-click install:

Add flux-docs to Cursor

Or add it by hand to .cursor/mcp.json (this project) or ~/.cursor/mcp.json (every project):

json
{    "mcpServers": {        "flux-docs": {            "command": "npx",            "args": ["-y", "livewire-flux-mcp"]        }    }}

Cursor has no cursor mcp add command — the deeplink and the config file are the two supported routes.

Claude Code
shell
claude mcp add --transport stdio --scope project flux-docs -- npx -y livewire-flux-mcp

Everything after -- is passed to the server verbatim. --scope project writes .mcp.json in the project root so the whole team gets it:

json
{    "mcpServers": {        "flux-docs": {            "command": "npx",            "args": ["-y", "livewire-flux-mcp"]        }    }}

Use --scope local (the default) to keep it to yourself, or --scope user for every project. A project-scoped server needs approving the first time you open the project. On Windows, wrap the command: -- cmd /c npx -y livewire-flux-mcp.

Codex
shell
codex mcp add flux-docs -- npx -y livewire-flux-mcp

This writes to ~/.codex/config.toml:

toml
[mcp_servers.flux-docs]command = "npx"args = ["-y", "livewire-flux-mcp"]

A project-level .codex/config.toml is only read once you have trusted the project. Verify with codex mcp list.

Gemini CLI
shell
gemini mcp add --scope project flux-docs npx -y livewire-flux-mcp

Note there is no -- separator: the command and its arguments follow the server name directly. This writes .gemini/settings.json (use --scope user for ~/.gemini/settings.json):

json
{    "mcpServers": {        "flux-docs": {            "command": "npx",            "args": ["-y", "livewire-flux-mcp"]        }    }}

gemini mcp list reports the server as disconnected until the folder is trusted.

GitHub Copilot (VS Code)

Create .vscode/mcp.json. Copilot uses servers, not mcpServers, and each entry declares its type:

json
{    "servers": {        "flux-docs": {            "type": "stdio",            "command": "npx",            "args": ["-y", "livewire-flux-mcp"]        }    }}

Or run MCP: Add Server from the command palette (Cmd+Shift+P / Ctrl+Shift+P) and choose the Workspace scope. The CLI equivalent writes to your user profile rather than the workspace:

shell
code --add-mcp '{"name":"flux-docs","command":"npx","args":["-y","livewire-flux-mcp"]}'

Requires VS Code 1.102+ with GitHub Copilot Chat enabled.

Junie

Open Settings → Tools → Junie → MCP Settings and add the server, or edit .junie/mcp/mcp.json in the project (~/.junie/mcp/mcp.json for every project) directly:

json
{    "mcpServers": {        "flux-docs": {            "command": "npx",            "args": ["-y", "livewire-flux-mcp"]        }    }}

Junie registers MCP servers by editing JSON — there is no CLI command. Project-level servers are ignored in untrusted projects.

AI Guidelines & Skills

Registering the server tells your agent the tools exist. It does not tell it when to reach for them — and in a Laravel Boost project it actively will not, because Boost ships a fluxui-development skill that sends Flux lookups to its own search-docs tool and carries a hardcoded component list. This package ships guidance that fixes that:

shell
npx livewire-flux-mcp install
FileWhat it is
.ai/skills/fluxui-development/SKILL.mdOn-demand skill: the Flux workflow, driven by this server's tools. Replaces Boost's bundled skill of the same name.
.ai/guidelines/fluxui-{free,pro}/core.blade.phpAlways-loaded guideline establishing that Flux questions are resolved through flux-docs.
.claude/agents/flux-ui-builder.mdA Claude Code subagent that builds Flux interfaces and looks every component up before writing markup.

The installer detects what applies: livewire/flux-pro in composer.json selects the fluxui-pro guideline key, livewire/flux selects fluxui-free, and a .claude/ directory adds the subagent. Restrict it with --boost or --claude, point it elsewhere with --path <dir>, or preview with --dry-run. Afterwards run php artisan boost:update so Boost picks the files up.

On overwriting. The skill is a deliberate replacement — Boost resolves custom skills last and keys them on the frontmatter name, so fluxui-development has to match for the override to land. The guideline is never clobbered: an existing file at that path, or the guideline shipped inside the Flux package itself, is preserved below our block, which is delimited by {{-- livewire-flux-mcp:begin --}} markers so re-running only refreshes that section. Any file the installer did not write is left alone unless you pass --force.

To undo, delete the installed files and run php artisan boost:update — Boost restores its own versions.

Laravel Boost only auto-discovers guidelines and skills from Composer packages, so an npm package cannot register them automatically. This installer writes to the paths Boost documents for custom guidelines and skills, which is why it works and survives boost:update.

Support Me

Hey folks,

Do you like this package? Do you find it useful, and it fits well in your project?

I am glad to help you, and I would be so grateful if you considered supporting my work.

You can even choose 😃:

Available MCP Tools

The server provides four MCP tools:

  1. fetch_flux_docs - Fetches documentation for components or layouts

    • component (optional): Specific component name to fetch docs for
    • layout (optional): Specific layout name to fetch docs for (e.g., "header", "sidebar")
    • version (optional): Flux major version to target — 'v1' or 'v2' (default 'v2')
    • Automatically includes reference sections when available
    • Fetches from https://fluxui.dev/components/{component} or https://fluxui.dev/layouts/{layout} (v2); routes to https://v1.fluxui.dev/components/{component} when version='v1'
    • When the page is a paid Flux component, a [NOTICE] This is a Flux Pro component … line is prepended to the response
  2. list_flux_components - Lists all available Flux components

    • version (optional): 'v1' or 'v2' (default 'v2')
    • tier (optional): 'free', 'pro', or 'all' (default 'all'). On 'all', each component is annotated [Pro] or [Free]. On v1, the tier argument is ignored (v1 has no Pro tier).
    • Provides component names and their documentation paths
  3. list_flux_layouts - Lists all available Flux layouts

    • version (optional): 'v1' or 'v2' (default 'v2'). On v1 the tool returns a brief "layouts are not available in v1" notice without making any HTTP request.
    • Provides layout names and their documentation paths
    • Layout names are read from fluxui.dev/layouts, falling back to the site-wide navigation on fluxui.dev/components when that index is unavailable — the individual /layouts/{name} pages are unaffected either way
  4. list_flux_component_icons - Lists all available Heroicons for flux:icon component

    • variant (optional): Filter by icon variant (outline, solid, mini, micro)
    • search (optional): Search term to filter icon names
    • Fetches actual icon names from Heroicons GitHub repository
    • Provides usage examples, dimensions, and GitHub links for each variant
    • Returns comprehensive list of all available icons with proper Flux syntax

Example Usage

Once the MCP server is running, AI assistants can use it to:

  • Get documentation for a specific component: "Show me the Button component docs"
  • Get documentation for a specific layout: "Show me the header layout docs"
  • List available components: "What Flux components are available?"
  • List available layouts: "What Flux layouts are available?"
  • Browse all available icons: "Show me all Heroicons available for flux:icon"
  • Search for specific icons: "Find all arrow icons in the outline variant"
  • Get icon usage examples: "How do I use the user icon in solid variant?"

The server automatically fetches the latest documentation from fluxui.dev/components, fluxui.dev/layouts, and Heroicons from GitHub, presenting everything in a structured format for easy consumption by AI assistants. When fetching component or layout documentation, it includes both the main content and the reference section with detailed API information.

Versions

Flux ships in two major versions, and the MCP server supports both:

  • v2 (default) — the current host at fluxui.dev. Used when version is omitted or set to 'v2'. Supports components, layouts, and Pro-tier awareness.
  • v1 — the legacy host at v1.fluxui.dev. Used when version='v1'. Components only — Flux v1 has no /layouts route and no Pro tier. list_flux_layouts returns a friendly notice on v1 without making any HTTP request; tier is ignored on list_flux_components for v1.

The version argument is accepted on fetch_flux_docs, list_flux_components, and list_flux_layouts. list_flux_component_icons is version-independent (Heroicons are not part of Flux versioning).

Pro tier awareness

A subset of Flux v2 components is only available with a paid Flux Pro license. The MCP server surfaces this in two ways:

  • Notice on fetch. When fetch_flux_docs retrieves a component that is Pro, the response is prepended with a single [NOTICE] This is a Flux Pro component — requires a paid Flux license. line.
  • Tier filter on listing. list_flux_components accepts tier='free' to hide Pro components, tier='pro' to show only Pro ones, or tier='all' (default) to list everything with [Pro] / [Free] annotations next to each name.

The list of Pro components is derived from fluxui.dev/pricing with a hardcoded fallback baked into the server, so tier filtering still works correctly if the pricing page is unreachable.

Manually Registering the MCP Server

If your editor is not one of the six covered in Set Up Your Agents, register the server manually using the following details:

Commandnpx
Args-y livewire-flux-mcp
json
{    "mcpServers": {        "flux-docs": {            "command": "npx",            "args": ["-y", "livewire-flux-mcp"]        }    }}

-y skips the install confirmation on first launch, which a stdio server cannot answer.

Performance & Caching

The MCP server includes intelligent caching to provide optimal performance:

  • 24-hour cache expiration - Content is cached for 1 day to balance freshness with performance
  • Automatic cache management - Expired entries are automatically cleaned up
  • Intelligent cache keys - Different cache entries for different parameters (component, layout, version, tier, variant)
  • GitHub API rate limit protection - Prevents hitting GitHub API limits when fetching Heroicons
  • Instant responses - Cached requests return in milliseconds instead of seconds

Cache Behavior

  • Documentation requests: Cached per component/layout and version combination
  • Component listings: Cached globally (refreshed daily)
  • Layout listings: Cached globally (refreshed daily)
  • Icon listings: Cached per variant and search combination
  • Cache storage: In-memory (resets when server restarts)

The caching system is particularly beneficial for the list_flux_component_icons tool, which can make up to 4 GitHub API calls per request without caching.

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.

Source: README.md at commit 90f5b81

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v2.3.6LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts