Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,528Letters: 13Defects: 1,322counted 1 min ago
teppi

Server definition

Hash
sha256:b456c1795870fde01cdad32a33a69192cc947ffa66b5fc48d32515e4c818d48d
What it is
What a remote MCP server returned when asked what it offers: 5 tools

The blob, as servednamed by its sha256

{ "instructions": "Use search_icons as the main tool when a user asks for icons. If the user did not name a library, search all libraries. Never infer si from the Supericons server or app name. If you choose a library yourself, use prefer mode so relevant alternatives can be found elsewhere. Use strict mode only when the user explicitly requires that library. The library key si means Supericons. The library key simpleicons means Simple Icons. Use recommend_icons first for two or more named UI slots. When search_icons returns markdown_image, include it in the final answer so the user can see the result set. The suggested_response_markdown field is safe to use as a compact answer, or it can be rewritten without changing the icon names and refs. If search_icons returns no_icons_found, do not invent an icon. Follow next_step or explain the honest no-result. Use recommend_icons for a coherent set of up to 20 named UI slots. When a tool returns error, code, and next_step, explain the plain-language reason and follow next_step instead of repeating the same rejected call. Use preview_icons only to refine a result set or preview known icon refs. Use get_icon only with an exact returned ref. Do not guess icon IDs. When visual comparison matters, include preview_url as a visible fallback even when an inline image was requested.", "tools": [ { "description": "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.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "id": { "description": "Exact icon ID without the library prefix, for example \"database\", \"user-circle\", \"brain-circuit\", or \"arrow-down\".", "type": "string" }, "library": { "description": "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 (Simple Icons brand logos), and mingcute.", "type": "string" }, "style": { "default": "any", "description": "Optional style preference. Material Symbols supports outline and solid. Other hosted libraries report their verified styles in list_libraries.", "enum": [ "any", "outline", "solid" ], "type": "string" } }, "required": [ "id", "library" ], "type": "object" }, "name": "get_icon", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "code": { "description": "Stable error code when the exact icon is unavailable.", "type": "string" }, "error": { "description": "Recoverable error message when no exact icon is found.", "type": "string" }, "hint": { "description": "Plain-language explanation of how to recover.", "type": "string" }, "icon": { "additionalProperties": false, "description": "Exact matching icon when found.", "properties": { "icon_preview_url": { "description": "Browser URL for visual inspection of this icon.", "type": [ "string", "null" ] }, "icon_ref": { "description": "Stable icon reference in library:id format.", "type": "string" }, "id": { "description": "Icon ID without the library prefix.", "type": "string" }, "library": { "description": "Source icon library key.", "type": "string" }, "libraryName": { "description": "Legacy camelCase public source library name.", "type": "string" }, "library_key": { "description": "Source icon library key repeated for explicit agent display.", "type": "string" }, "library_label": { "description": "Public source library label, for example Supericons (si).", "type": "string" }, "library_name": { "description": "Public source library name, for example Supericons or Simple Icons.", "type": "string" }, "name": { "description": "Human-readable icon name.", "type": "string" }, "search_preview_url": { "description": "Browser URL for visual inspection of the source search results.", "type": [ "string", "null" ] }, "semantic": { "anyOf": [ { "additionalProperties": {}, "type": "object" }, { "type": "null" } ], "description": "Public semantic guidance for search and agent selection." }, "style": { "description": "Icon style such as outline or solid.", "type": "string" }, "svg": { "description": "Inline SVG markup for the icon.", "type": "string" }, "type": { "description": "Icon asset type, normally svg.", "type": "string" } }, "required": [ "id", "name", "library", "library_key", "library_name", "library_label", "icon_ref", "icon_preview_url", "type", "style", "svg" ], "type": "object" }, "next_step": { "description": "Recommended next tool action.", "type": "string" }, "retryable": { "description": "Whether repeating the same exact lookup may succeed.", "type": "boolean" } }, "type": "object" } }, { "description": "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.", "inputSchema": { "properties": {}, "type": "object" }, "name": "list_libraries", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "libraries": { "description": "Free icon libraries available through this hosted MCP server.", "items": { "additionalProperties": false, "properties": { "count": { "description": "Number of icons in the library.", "type": "number" }, "description": { "description": "Brief public description of the icon library.", "type": "string" }, "id": { "description": "Library key used in tool calls.", "type": "string" }, "label": { "description": "Human-readable library label with key, for example Supericons (si).", "type": "string" }, "name": { "description": "Human-readable library name.", "type": "string" }, "outlineCount": { "description": "Number of outline icons served by the hosted MCP server.", "type": "number" }, "solidCount": { "description": "Number of solid icons served by the hosted MCP server.", "type": "number" }, "supportedStyles": { "description": "Styles verified on the hosted serving path.", "items": { "enum": [ "outline", "solid" ], "type": "string" }, "type": "array" } }, "required": [ "id", "name", "description", "count", "outlineCount", "solidCount", "supportedStyles" ], "type": "object" }, "type": "array" }, "publicRecordCount": { "description": "Number of public semantic icon records searchable through the hosted MCP server.", "type": "number" } }, "required": [ "libraries", "publicRecordCount" ], "type": "object" } }, { "description": "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.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "icon_refs": { "description": "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. Larger lists are safely truncated with a warning.", "items": { "type": "string" }, "minItems": 1, "type": "array" }, "include_image": { "default": true, "description": "When true, include a PNG contact sheet as MCP image content. Boolean strings are accepted. A preview_url is always returned.", "type": "boolean" }, "library": { "$ref": "#/properties/query", "description": "Optional library key. Supported values include si (Supericons AI and developer tool logos), lucide, tabler, phosphor, heroicons, bootstrap, iconoir, ionicons, material, simpleicons (Simple Icons brand logos), and mingcute." }, "limit": { "default": 12, "description": "Requested inline icon count. Values outside 1 to 12 are safely clamped with a warning. Numeric strings are accepted.", "type": [ "number", "string" ] }, "locale": { "$ref": "#/properties/query", "description": "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": { "description": "Optional search query to preview visually, for example \"license plate recognition camera scan car\".", "type": "string" }, "style": { "$ref": "#/properties/query", "default": "any", "description": "Optional style preference. Unsupported values are ignored with a warning." } }, "type": "object" }, "name": "preview_icons", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "browser_preview_count": { "description": "Number of accepted icon refs available at preview_url.", "type": "number" }, "client_display_note": { "description": "Plain-language note for clients that do not render images inline.", "type": "string" }, "error": { "description": "Recoverable error message when preview inputs are missing or invalid.", "type": "string" }, "image_included": { "description": "Whether this response includes MCP image content.", "type": "boolean" }, "image_url": { "description": "Direct PNG URL for clients or Markdown renderers that can show remote images.", "type": [ "string", "null" ] }, "markdown_image": { "description": "Ready-made Markdown image snippet for final answers in clients that render remote Markdown images.", "type": [ "string", "null" ] }, "next_step": { "description": "Useful next action for the caller.", "type": "string" }, "preview_url": { "description": "Browser URL for visual inspection.", "type": "string" }, "query": { "description": "Search query used for the visual preview, if any.", "type": [ "string", "null" ] }, "rendered_count": { "description": "Number of icons rendered in the inline preview.", "type": "number" }, "results": { "description": "Icons included in the visual preview.", "items": { "additionalProperties": false, "properties": { "icon_preview_url": { "description": "Browser URL for visual inspection of this icon.", "type": [ "string", "null" ] }, "icon_ref": { "description": "Stable icon reference in library:id format.", "type": "string" }, "id": { "description": "Icon ID without the library prefix.", "type": "string" }, "library": { "description": "Source icon library key.", "type": "string" }, "library_key": { "description": "Source icon library key repeated for explicit agent display.", "type": "string" }, "library_label": { "description": "Public source library label, for example Supericons (si).", "type": "string" }, "library_name": { "description": "Public source library name, for example Supericons or Simple Icons.", "type": "string" }, "name": { "description": "Human-readable icon name.", "type": "string" }, "semantic": { "anyOf": [ { "additionalProperties": {}, "type": "object" }, { "type": "null" } ], "description": "Public semantic guidance for search and agent selection." }, "style": { "description": "Icon style such as outline or solid.", "type": "string" } }, "required": [ "id", "name", "library", "library_key", "icon_ref" ], "type": "object" }, "type": "array" }, "suggested_response_markdown": { "description": "Ready-to-use answer with the image, refs, and browser fallback link.", "type": "string" }, "truncated_from": { "description": "Original icon ref count when the input was truncated.", "type": "number" }, "warnings": { "description": "Unsupported optional inputs that were safely ignored.", "items": { "type": "string" }, "type": "array" } }, "required": [ "preview_url", "image_included", "rendered_count", "browser_preview_count", "next_step", "client_display_note", "results" ], "type": "object" } }, { "description": "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.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "include_query_frame": { "default": false, "description": "Optional public-safe diagnostics for query understanding. Boolean strings are accepted. Leave false for normal compact responses.", "type": "boolean" }, "library": { "$ref": "#/properties/task", "description": "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, ionicons, material, simpleicons (Simple Icons brand logos), and mingcute." }, "limit_per_slot": { "default": 3, "description": "Number of choices per slot. Values outside 1 to 5 are clamped with a warning. Numeric strings are accepted.", "type": [ "number", "string" ] }, "locale": { "$ref": "#/properties/task", "description": "Optional locale for multilingual slot labels. Unsupported values are ignored with a warning." }, "response_mode": { "$ref": "#/properties/task", "default": "plan", "description": "Response size mode: plan, assets, or full. Unsupported values use plan with a warning." }, "slots": { "default": [], "description": "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.", "items": { "type": "string" }, "type": "array" }, "style": { "$ref": "#/properties/task", "default": "any", "description": "Optional style preference. Unsupported values are ignored with a warning." }, "task": { "default": "", "description": "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.", "type": "string" } }, "type": "object" }, "name": "recommend_icons", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "all_slots_resolved": { "description": "Whether every requested slot received a recommendation without clarification.", "type": "boolean" }, "clarification_slots": { "description": "Slots that need the caller to choose an interpretation.", "items": { "type": "string" }, "type": "array" }, "code": { "description": "Stable error code for programmatic recovery.", "type": "string" }, "details": { "additionalProperties": {}, "description": "Structured limits or failure details.", "type": "object" }, "error": { "description": "Plain-language reason the recommendation did not complete.", "type": "string" }, "fallback_recommended": { "description": "Whether the caller should consider direct search or clarification.", "type": "boolean" }, "hint": { "description": "Plain-language recovery instruction.", "type": "string" }, "library": { "description": "Library filter used for recommendations, if provided.", "type": "string" }, "low_confidence_slots": { "description": "Slots whose result is missing or has low confidence.", "items": { "type": "string" }, "type": "array" }, "needs_clarification": { "description": "Whether one or more ambiguous slots require more context.", "type": "boolean" }, "next_step": { "description": "Useful next action for the caller.", "type": "string" }, "preview_url": { "description": "Browser URL for visual inspection of the recommended icon set.", "type": "string" }, "query_frame": { "additionalProperties": {}, "description": "Optional public-safe query understanding diagnostics for the task.", "type": "object" }, "response_mode": { "description": "Response size mode used for this recommendation.", "enum": [ "plan", "assets", "full" ], "type": "string" }, "results": { "description": "Recommended icon choices grouped by requested UI slot.", "items": { "additionalProperties": {}, "type": "object" }, "type": "array" }, "retry_after_seconds": { "description": "Seconds to wait before retrying a rate-limited recommendation.", "type": "number" }, "retryable": { "description": "Whether a corrected or later request may succeed.", "type": "boolean" }, "search_runtime": { "additionalProperties": false, "description": "Search execution path used for this recommendation.", "properties": { "fallback_used": { "type": "boolean" }, "hosted_search_calls": { "type": "number" }, "index_generated_at": { "type": "string" }, "local_failure_code": { "type": [ "string", "null" ] }, "mode": { "enum": [ "local_first", "hosted_fallback", "hosted" ], "type": "string" } }, "required": [ "mode", "fallback_used", "hosted_search_calls", "local_failure_code", "index_generated_at" ], "type": "object" }, "slot_count": { "description": "Number of UI slots requested.", "type": "number" }, "status": { "description": "HTTP status from a hosted dependency failure.", "type": "number" }, "style": { "description": "Style preference used for recommendations.", "type": "string" }, "suggested_response_markdown": { "description": "Plain-language explanation suitable for the agent response.", "type": "string" }, "task": { "description": "Original UI task.", "type": "string" }, "warnings": { "description": "Unsupported optional inputs that were safely ignored or clamped.", "items": { "type": "string" }, "type": "array" } }, "required": [ "task", "response_mode", "slot_count", "all_slots_resolved", "needs_clarification", "clarification_slots", "low_confidence_slots", "fallback_recommended", "results" ], "type": "object" } }, { "description": "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. If you choose a library yourself, use prefer. Use strict only when the user explicitly requires that library. Library key si means Supericons, not Simple Icons.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "include_query_frame": { "default": false, "description": "Optional public-safe diagnostics for query understanding. Boolean strings are accepted. Leave false for normal compact responses.", "type": "boolean" }, "library": { "description": "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, tabler, phosphor, heroicons, bootstrap, iconoir, ionicons, material, simpleicons (Simple Icons brand logos), and mingcute.", "type": "string" }, "library_mode": { "$ref": "#/properties/library", "description": "Optional library behavior. Omit a self-chosen library and search all, or use prefer with that library. Use strict only when the user explicitly requires the named library. All searches every eligible library. Unsupported or incomplete combinations are safely normalized with a warning." }, "limit": { "default": 10, "description": "Maximum number of icons from 1 to 50. Numeric strings are accepted.", "maximum": 50, "minimum": 1, "type": "number" }, "locale": { "$ref": "#/properties/library", "description": "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": { "description": "Icon concept or search phrase, for example \"database\", \"user profile\", \"chill\", \"trash\", \"upload cloud\", \"AI model\", or \"beautiful\".", "minLength": 1, "type": "string" }, "style": { "$ref": "#/properties/library", "default": "any", "description": "Optional style preference. Unsupported values are ignored with a warning." } }, "required": [ "query" ], "type": "object" }, "name": "search_icons", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "code": { "description": "Stable code for a structured no-result.", "type": "string" }, "details": { "additionalProperties": {}, "description": "Structured rate-limit or upstream failure details.", "type": "object" }, "error": { "description": "Plain-language error for a structured no-result.", "type": "string" }, "hint": { "description": "Plain-language recovery hint for a structured no-result.", "type": "string" }, "image_url": { "description": "Direct PNG URL when usable icons exist.", "type": "string" }, "library_mode": { "description": "Library behavior used for this search.", "enum": [ "strict", "prefer", "all" ], "type": "string" }, "limit_scope": { "description": "Allowance scope reported by a rate limit.", "type": "string" }, "markdown_image": { "description": "Ready-made Markdown image when usable icons exist.", "type": "string" }, "next_step": { "description": "Useful next action for the caller.", "type": "string" }, "outcome_type": { "description": "Whether this response contains results, an honest no-match, or a tool failure.", "enum": [ "results", "no_match", "tool_error" ], "type": "string" }, "preview_url": { "description": "Browser URL for visual inspection of this search result set.", "type": "string" }, "query_frame": { "additionalProperties": {}, "description": "Optional public-safe query understanding diagnostics.", "type": "object" }, "requested_library": { "description": "Preferred or required library, when supplied.", "type": [ "string", "null" ] }, "result_count": { "description": "Number of verified icons returned by this search.", "type": "number" }, "result_interpretation": { "description": "Plain-language guidance for interpreting this result count and outcome.", "type": "string" }, "results": { "description": "Matching icons with SVG code and semantic guidance.", "items": { "additionalProperties": false, "properties": { "icon_preview_url": { "description": "Browser URL for visual inspection of this icon.", "type": [ "string", "null" ] }, "icon_ref": { "description": "Stable icon reference in library:id format.", "type": "string" }, "id": { "description": "Icon ID without the library prefix.", "type": "string" }, "library": { "description": "Source icon library key.", "type": "string" }, "libraryName": { "description": "Legacy camelCase public source library name.", "type": "string" }, "library_key": { "description": "Source icon library key repeated for explicit agent display.", "type": "string" }, "library_label": { "description": "Public source library label, for example Supericons (si).", "type": "string" }, "library_name": { "description": "Public source library name, for example Supericons or Simple Icons.", "type": "string" }, "name": { "description": "Human-readable icon name.", "type": "string" }, "search_preview_url": { "description": "Browser URL for visual inspection of the source search results.", "type": [ "string", "null" ] }, "semantic": { "anyOf": [ { "additionalProperties": {}, "type": "object" }, { "type": "null" } ], "description": "Public semantic guidance for search and agent selection." }, "style": { "description": "Icon style such as outline or solid.", "type": "string" }, "svg": { "description": "Inline SVG markup for the icon.", "type": "string" }, "type": { "description": "Icon asset type, normally svg.", "type": "string" } }, "required": [ "id", "name", "library", "library_key", "library_name", "library_label", "icon_ref", "icon_preview_url", "type", "style", "svg" ], "type": "object" }, "type": "array" }, "retry_after_seconds": { "description": "Seconds to wait before retrying a rate-limited search.", "type": "number" }, "retryable": { "description": "Whether changing the query or filters may produce a result.", "type": "boolean" }, "search_runtime": { "additionalProperties": false, "description": "Search execution path used for this request.", "properties": { "degraded": { "type": "boolean" }, "fallback_used": { "type": "boolean" }, "hosted_circuit_state": { "anyOf": [ { "enum": [ "closed", "open", "half_open_ready" ], "type": "string" }, { "type": "null" } ] }, "hosted_failure_code": { "type": [ "string", "null" ] }, "hosted_failure_status": { "type": [ "number", "null" ] }, "hosted_result_count": { "type": "number" }, "hosted_search_calls": { "type": "number" }, "index_generated_at": { "type": "string" }, "local_attempt_count": { "type": "number" }, "local_failure_code": { "type": [ "string", "null" ] }, "local_fusion_used": { "type": "boolean" }, "local_result_count": { "type": "number" }, "local_retry_recovered": { "type": "boolean" }, "local_retry_used": { "type": "boolean" }, "mode": { "enum": [ "local_first", "local_fallback", "hosted_fallback", "hosted", "hosted_fused" ], "type": "string" } }, "required": [ "mode", "fallback_used", "hosted_search_calls", "local_failure_code", "index_generated_at" ], "type": "object" }, "status": { "description": "HTTP status from an upstream search failure.", "type": "number" }, "suggested_response_markdown": { "description": "Compact answer that accurately reflects this response.", "type": "string" }, "top_result_ref": { "description": "Top ordered icon ref when results exist.", "type": [ "string", "null" ] }, "warnings": { "description": "Unsupported optional inputs that were safely ignored.", "items": { "type": "string" }, "type": "array" } }, "required": [ "results", "library_mode", "requested_library", "suggested_response_markdown", "next_step" ], "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:b456c1795870fde01cdad32a33a69192cc947ffa66b5fc48d32515e4c818d48d | sha256sum