Search 24px outline icons by name, tag, or category and get SVG or framework code.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Get one icon as SVG, JSX, a framework component snippet, a data URI, CSS mask, Tailwind class, CDN URL, sprite, font, Iconify id, or shadcn command. Unknown names return the closest real names.
Icon name from search_icons, such as "arrow-right" (PascalCase also works).
Width and height in pixels (default 24).
Stroke color (default currentColor).
Output format (default "svg"). Framework ids return an import snippet.
Stroke width (default 2).
Keep the stroke width constant when resizing.
Get one icon as SVG, JSX, a framework component snippet, a data URI, CSS mask, Tailwind class, CDN URL, sprite, font, Iconify id, or shadcn command. Unknown names return the closest real names.
| Argument | Type | Description |
|---|---|---|
| name* | string | Icon name from search_icons, such as "arrow-right" (PascalCase also works). |
| size | number | Width and height in pixels (default 24). |
| color | string | Stroke color (default currentColor). |
| format | string | Output format (default "svg"). Framework ids return an import snippet. |
| strokeWidth | number | Stroke width (default 2). |
| absoluteStrokeWidth | boolean | Keep the stroke width constant when resizing. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 100,
"description": "Icon name from search_icons, such as \"arrow-right\" (PascalCase also works)."
},
"size": {
"type": "number",
"maximum": 1024,
"description": "Width and height in pixels (default 24).",
"exclusiveMinimum": 0
},
"color": {
"type": "string",
"maxLength": 64,
"description": "Stroke color (default currentColor)."
},
"format": {
"enum": [
"svg",
"jsx",
"react",
"react-native",
"vue",
"svelte",
"solid",
"preact",
"astro",
"angular",
"data-uri",
"base64",
"css-mask",
"tailwind",
"cdn",
"sprite",
"font",
"iconify",
"shadcn"
],
"type": "string",
"description": "Output format (default \"svg\"). Framework ids return an import snippet."
},
"strokeWidth": {
"type": "number",
"maximum": 24,
"description": "Stroke width (default 2).",
"exclusiveMinimum": 0
},
"absoluteStrokeWidth": {
"type": "boolean",
"description": "Keep the stroke width constant when resizing."
}
}
}Install command, import example, dynamic icon API, and docs link for a framework package, or "core" for raw SVG and JavaScript.
| Argument | Type | Description |
|---|---|---|
| framework* | string | Framework id, or "core" for the vadivam SVG package. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"framework"
],
"properties": {
"framework": {
"enum": [
"core",
"react",
"react-native",
"vue",
"svelte",
"solid",
"preact",
"astro",
"angular"
],
"type": "string",
"description": "Framework id, or \"core\" for the vadivam SVG package."
}
}
}List every icon category with its id, title, description, and icon count. Pass an id to search_icons as category.
No arguments.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}Find Vadivam icons by name, synonym tag, or category. Ranked: exact name, then name prefix or word, then tag, then category. Call this before get_icon; never guess icon names.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum results (default 20, max 100). |
| query* | string | Words to match, such as "arrow right", "delete", or "weather". May be empty when category is set. |
| category | string | Category id or title from list_categories, such as "arrows". |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Maximum results (default 20, max 100)."
},
"query": {
"type": "string",
"maxLength": 200,
"description": "Words to match, such as \"arrow right\", \"delete\", or \"weather\". May be empty when category is set."
},
"category": {
"type": "string",
"maxLength": 100,
"description": "Category id or title from list_categories, such as \"arrows\"."
}
}
}Suggest icons for each thing a UI description mentions, such as "settings sidebar with search, profile, and logout". Splits on commas and words like "and" or "with", then ranks icons per concept. Pick one per concept, then call get_icon.
| Argument | Type | Description |
|---|---|---|
| perConcept | integer | Candidates per concept (default 3, max 10). |
| description* | string | A short description of the screen, feature, or list of actions that need icons. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"description"
],
"properties": {
"perConcept": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Candidates per concept (default 3, max 10)."
},
"description": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "A short description of the screen, feature, or list of actions that need icons."
}
}
}