# Supericons (remote · mcp.supericons.dev)

Multilingual semantic SVG icon search with previews for AI coding agents. 20,000+ icons.

- Trust score: 70/100 (medium)
- Change this week: +6
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `mcp.supericons.dev`: 70/100 (this document), [markdown](https://verifymcp.io/servers/curlymolelabs-supericons/mcp.md), [page](https://verifymcp.io/servers/curlymolelabs-supericons/mcp)
- npm · `@supericons/mcp`: 61/100, [markdown](https://verifymcp.io/servers/curlymolelabs-supericons/supericons-mcp-2.md), [page](https://verifymcp.io/servers/curlymolelabs-supericons/supericons-mcp-2)

## Channel facts

- Endpoint: `https://mcp.supericons.dev/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.4.22`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 74/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 59/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1589 tokens (~317/item across 5 items; 5 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http curlymolelabs-supericons https://mcp.supericons.dev/mcp
```

### Codex

```toml
[mcp_servers.curlymolelabs-supericons]
url = "https://mcp.supericons.dev/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "curlymolelabs-supericons": {
      "type": "remote",
      "url": "https://mcp.supericons.dev/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add curlymolelabs-supericons --url https://mcp.supericons.dev/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  curlymolelabs-supericons:
    url: "https://mcp.supericons.dev/mcp"
```

### Other

```json
{
  "mcpServers": {
    "curlymolelabs-supericons": {
      "type": "http",
      "url": "https://mcp.supericons.dev/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 70, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-08-01 (score 69, 0)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “get_icon” rewrote its description, which is the text the model reads
- [security] Tool “preview_icons” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: 288 → 317
- [cosmetic] “search_icons” reworded the description of “library_mode”
- [cosmetic] “search_icons” reworded the description of “library”

### 2026-07-31 (score 69, +3)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 66, 0)

- [functional] Server version: 0.4.24 → 0.4.26

### 2026-07-29 (score 66, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-28 (score 65, +1)

- [functional] Server version: 0.4.22 → 0.4.24

### 2026-07-27 (score 64, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-26 (score 64)

First indexed and scored.

## MCP tools (5)

### `search_icons` (~391 tokens)

Search Icons

Use this as the main icon tool. Search 20,000+ curated SVG icons across 11 libraries by meaning, label, visual description, tags, and synonyms. When matches exist, the response includes a paste-ready suggested answer, a direct preview image, and Markdown that can show the image in the final reply. When no supported match exists, it returns an honest structured no-result with a next step and no fabricated icon. Library key si means Supericons, not Simple Icons.

Input parameters:

- `include_query_frame` (boolean): Optional public-safe diagnostics for query understanding. Boolean strings are accepted. Leave false for normal compact responses.
- `library` (string): Optional library key only when the user named a library. Omit it to search all libraries. Do not use all as a library key. Supported values include si (Supericons AI and developer tool logos), lucide…
- `library_mode`: Optional library behavior. Omit it to use all when no library is named and strict when a library is named. Prefer requires a named library. All searches every eligible library. Unsupported or incompl…
- `limit` (number): Maximum number of icons from 1 to 50. Numeric strings are accepted.
- `locale`: Optional locale for multilingual search terms. Supported values: zh-Hans, zh-Hant, ja, ko, es, de, pt, ar, hi, vi, th. Unsupported values are ignored with a warning.
- `query` (string, required): Icon concept or search phrase, for example "database", "user profile", "chill", "trash", "upload cloud", "AI model", or "beautiful".
- `style`: Optional style preference. Unsupported values are ignored with a warning.

Output parameters:

- `code` (string): Stable code for a structured no-result.
- `details` (object): Structured rate-limit or upstream failure details.
- `error` (string): Plain-language error for a structured no-result.
- `hint` (string): Plain-language recovery hint for a structured no-result.
- `image_url` (string): Direct PNG URL when usable icons exist.
- `library_mode` (string): Library behavior used for this search.
- `limit_scope` (string): Allowance scope reported by a rate limit.
- `markdown_image` (string): Ready-made Markdown image when usable icons exist.
- `next_step` (string): Useful next action for the caller.
- `outcome_type` (string): Whether this response contains results, an honest no-match, or a tool failure.
- `preview_url` (string): Browser URL for visual inspection of this search result set.
- `query_frame` (object): Optional public-safe query understanding diagnostics.
- `requested_library` (string|null): Preferred or required library, when supplied.
- `result_count` (number): Number of verified icons returned by this search.
- `result_interpretation` (string): Plain-language guidance for interpreting this result count and outcome.
- `results` (array): Matching icons with SVG code and semantic guidance.
- `retry_after_seconds` (number): Seconds to wait before retrying a rate-limited search.
- `retryable` (boolean): Whether changing the query or filters may produce a result.
- `search_runtime` (object): Search execution path used for this request.
- `status` (number): HTTP status from an upstream search failure.
- `suggested_response_markdown` (string): Compact answer that accurately reflects this response.
- `top_result_ref` (string|null): Top ordered icon ref when results exist.
- `warnings` (array): Unsupported optional inputs that were safely ignored.

### `recommend_icons` (~380 tokens)

Recommend Icons

Recommend a coherent icon set for up to 20 named UI slots in one call. Uses task context to narrow ambiguous meanings. When context is insufficient, returns needs_clarification with labeled interpretation options instead of guessing. Invalid inputs and service failures return a plain-language reason and a next step instead of a bare protocol error. Returns one recommendation and optional alternatives for each resolved slot, with explicit public library labels and visual preview URLs where available. Library key si means Supericons, not Simple Icons.

Input parameters:

- `include_query_frame` (boolean): Optional public-safe diagnostics for query understanding. Boolean strings are accepted. Leave false for normal compact responses.
- `library`: Optional library key when the user wants a consistent icon family. Supported values include si (Supericons AI and developer tool logos), lucide, tabler, phosphor, heroicons, bootstrap, iconoir, ionic…
- `limit_per_slot` (number|string): Number of choices per slot. Values outside 1 to 5 are clamped with a warning. Numeric strings are accepted.
- `locale`: Optional locale for multilingual slot labels. Unsupported values are ignored with a warning.
- `response_mode`: Response size mode: plan, assets, or full. Unsupported values use plan with a warning.
- `slots` (array): List of 1 to 20 UI slots to fill, for example ["model", "prompt", "dataset", "evaluation"]. A single string is accepted as one slot. Larger lists return a structured split instruction.
- `style`: Optional style preference. Unsupported values are ignored with a warning.
- `task` (string): Overall UI task, for example "choose icons for an AI dashboard sidebar" or "select bottom navigation icons for a finance app". Missing task text returns a structured recovery message.

Output parameters:

- `all_slots_resolved` (boolean): Whether every requested slot received a recommendation without clarification.
- `clarification_slots` (array): Slots that need the caller to choose an interpretation.
- `code` (string): Stable error code for programmatic recovery.
- `details` (object): Structured limits or failure details.
- `error` (string): Plain-language reason the recommendation did not complete.
- `fallback_recommended` (boolean): Whether the caller should consider direct search or clarification.
- `hint` (string): Plain-language recovery instruction.
- `library` (string): Library filter used for recommendations, if provided.
- `low_confidence_slots` (array): Slots whose result is missing or has low confidence.
- `needs_clarification` (boolean): Whether one or more ambiguous slots require more context.
- `next_step` (string): Useful next action for the caller.
- `preview_url` (string): Browser URL for visual inspection of the recommended icon set.
- `query_frame` (object): Optional public-safe query understanding diagnostics for the task.
- `response_mode` (string): Response size mode used for this recommendation.
- `results` (array): Recommended icon choices grouped by requested UI slot.
- `retry_after_seconds` (number): Seconds to wait before retrying a rate-limited recommendation.
- `retryable` (boolean): Whether a corrected or later request may succeed.
- `search_runtime` (object): Search execution path used for this recommendation.
- `slot_count` (number): Number of UI slots requested.
- `status` (number): HTTP status from a hosted dependency failure.
- `style` (string): Style preference used for recommendations.
- `suggested_response_markdown` (string): Plain-language explanation suitable for the agent response.
- `task` (string): Original UI task.
- `warnings` (array): Unsupported optional inputs that were safely ignored or clamped.

### `get_icon` (~192 tokens)

Get Icon

Retrieve one exact SVG icon using an exact ref returned by search_icons, recommend_icons, or preview_icons. Do not guess icon IDs. Use search_icons first if the user only described a concept. Returns SVG code, explicit public library labels, visual preview URL, and public semantic guidance for the exact icon.

Input parameters:

- `id` (string, required): Exact icon ID without the library prefix, for example "database", "user-circle", "brain-circuit", or "arrow-down".
- `library` (string, required): Required library key for the exact icon. Supported values include si (Supericons AI and developer tool logos), lucide, tabler, phosphor, heroicons, bootstrap, iconoir, ionicons, material, simpleicons…
- `style` (string): Optional style preference. Material Symbols supports outline and solid. Other hosted libraries report their verified styles in list_libraries.

Output parameters:

- `code` (string): Stable error code when the exact icon is unavailable.
- `error` (string): Recoverable error message when no exact icon is found.
- `hint` (string): Plain-language explanation of how to recover.
- `icon` (object): Exact matching icon when found.
- `next_step` (string): Recommended next tool action.
- `retryable` (boolean): Whether repeating the same exact lookup may succeed.

### `preview_icons` (~341 tokens)

Preview Icons

Refine an icon result set or preview known icon refs returned by another Supericons tool. Use search_icons first for normal icon requests. Long icon lists are accepted and safely truncated to 12. Returns ready-to-use Markdown, a hosted preview fallback, a direct PNG image URL, and, when requested, an MCP image contact sheet.

Input parameters:

- `icon_refs` (array): Optional fixed icon refs in library:id format. Arrays, a single ref, and comma-separated refs are accepted. Up to 100 are accepted, 24 appear on the browser preview, and 12 are rendered inline. Large…
- `include_image` (boolean): When true, include a PNG contact sheet as MCP image content. Boolean strings are accepted. A preview_url is always returned.
- `library`: Optional library key. Supported values include si (Supericons AI and developer tool logos), lucide, tabler, phosphor, heroicons, bootstrap, iconoir, ionicons, material, simpleicons (Simple Icons bran…
- `limit` (number|string): Requested inline icon count. Values outside 1 to 12 are safely clamped with a warning. Numeric strings are accepted.
- `locale`: Optional locale for multilingual search terms. Supported values: zh-Hans, zh-Hant, ja, ko, es, de, pt, ar, hi, vi, th. Unsupported values are ignored with a warning.
- `query` (string): Optional search query to preview visually, for example "license plate recognition camera scan car".
- `style`: Optional style preference. Unsupported values are ignored with a warning.

Output parameters:

- `browser_preview_count` (number): Number of accepted icon refs available at preview_url.
- `client_display_note` (string): Plain-language note for clients that do not render images inline.
- `error` (string): Recoverable error message when preview inputs are missing or invalid.
- `image_included` (boolean): Whether this response includes MCP image content.
- `image_url` (string|null): Direct PNG URL for clients or Markdown renderers that can show remote images.
- `markdown_image` (string|null): Ready-made Markdown image snippet for final answers in clients that render remote Markdown images.
- `next_step` (string): Useful next action for the caller.
- `preview_url` (string): Browser URL for visual inspection.
- `query` (string|null): Search query used for the visual preview, if any.
- `rendered_count` (number): Number of icons rendered in the inline preview.
- `results` (array): Icons included in the visual preview.
- `suggested_response_markdown` (string): Ready-to-use answer with the image, refs, and browser fallback link.
- `truncated_from` (number): Original icon ref count when the input was truncated.
- `warnings` (array): Unsupported optional inputs that were safely ignored.

### `list_libraries` (~40 tokens)

List Libraries

List the free icon libraries available through the hosted Supericons MCP server. Use this before filtering by library or when a user asks which icon libraries are supported.

Output parameters:

- `libraries` (array): Free icon libraries available through this hosted MCP server.
- `publicRecordCount` (number): Number of public semantic icon records searchable through the hosted MCP server.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/curlymolelabs-supericons/mcp#diagnostics

## Score history

- 2026-08-03: 70
- 2026-08-02: 70
- 2026-08-01: 69
- 2026-07-31: 69
- 2026-07-30: 66
- 2026-07-29: 66
- 2026-07-28: 65
- 2026-07-27: 64
- 2026-07-26: 64

## Links

- Remote endpoint: https://mcp.supericons.dev/mcp
- Repository: https://github.com/curlymolelabs/supericons
- Changelog RSS feed: https://verifymcp.io/servers/curlymolelabs-supericons/mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/curlymolelabs-supericons/mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/curlymolelabs-supericons/mcp
