Search and discover UI icons (names, tags, glyphs, platform usage) via @hugeicons/mcp-server (npx)
When building UIs, agents need to find the right icon for a concept (e.g. "arrow", "notification", "settings"). Hugeicons is a large icon library (4,000+ icons across 9 styles). This MCP server lets you search icons by name/tags, retrieve unicode glyphs for font-based rendering, and get platform-specific integration code. No API key needed.
Recipe: Search and discover UI icons via @hugeicons/mcp-server
Server: npx -y @hugeicons/mcp-server (stdio, no auth) Tools: 5 — list_icons, search_icons, get_platform_usage, get_icon_glyphs, get_icon_glyph_by_style Verified: 2026-06-11, 2 runs (searchicons + geticon_glyphs)
What it does
Hugeicons is a 4,000+ icon library with 9 visual styles (stroke-rounded, solid-sharp, duotone-rounded, etc.). This MCP server exposes the full icon catalog for search, glyph lookup, and platform-specific integration docs.
Tool overview
| Tool | Input | Returns | ||||||
|---|---|---|---|---|---|---|---|---|
search_icons | query (string, comma-separated) | Array of {id, name, tags[], category, featured, version} | ||||||
get_icon_glyphs | icon_name (e.g. "arrow-up-01") | All unicode glyphs across 9 styles | ||||||
get_icon_glyph_by_style | icon_name + style enum | Single glyph for one style | ||||||
get_platform_usage | platform (react\ | vue\ | angular\ | svelte\ | react-native\ | flutter\ | html) | Integration guide with install commands and code |
list_icons | — | Full icon catalog |
Typical agent workflow
search_icons(query: "notification, bell")→ find matching icon namesget_icon_glyphs(icon_name: "notification-02")→ get unicode values for font renderingget_platform_usage(platform: "react")→ getnpm install+ component usage code
Gotchas
- Startup emits
[Agnost Analytics INFO]telemetry lines on stderr — not errors, safe to ignore. list_iconsreturns the entire 4,000+ icon catalog — usesearch_iconsto narrow first.- The
idparameter returned in the tool description says"id"is required forgetApiOverview— but here iconidvalues are numeric strings (e.g. "226"), not slugs.
{ "server": "npx -y @hugeicons/mcp-server", "transport": "stdio", "protocol_version": "2024-11-05", "tools_found": 5, "tool_names": ["list_icons", "search_icons", "get_platform_usage", "get_icon_glyphs", "get_icon_glyph_by_style"], "trace": [ { "step": "search_icons", "request": { "name": "search_icons", "arguments": { "query": "arrow" } }, "response_sample": [ { "id": "198", "name": "arrow-left-01", "tags": ["left-arrow", "back-arrow", "arrow", "chevron"], "category": "arrows", "featured": false, "version": "1.0.0" }, { "id": "226", "name": "arrow-up-01", "tags": ["up arrow", "arrow", "increase arrow", "chevron"], "category": "arrows", "featured": true, "version": "1.0.0" }, { "id": "182", "name": "arrow-down-01", "tags": ["down-arrow", "arrow", "decrease arrow", "drop down"], "category": "arrows", "featured": false, "version": "1.0.0" } ] }, { "step": "get_icon_glyphs", "request": { "name": "get_icon_glyphs", "arguments": { "icon_name": "arrow-up-01" } }, "response_sample": [ { "icon_name": "arrow-up-01", "style": "stroke-rounded", "unicode": "󱘲", "unicode_decimal": 988722 }, { "icon_name": "arrow-up-01", "style": "solid-rounded", "unicode": "󱘲", "unicode_decimal": 988722 }, { "icon_name": "arrow-up-01", "style": "bulk-rounded", "unicode": "󱘲", "unicode_decimal": 988722 } ] } ] }