{"server":"com.svgicons/mcp","count":12,"tools":[{"name":"add_icons_to_collection","title":"Add icons to Icon Collection","description":"Add catalog icons to an existing Icon Collection as plain entries (idempotent). Requires a Pro API token with collections:write and mcp:use scopes.","input_schema":{"type":"object","required":["collectionId","iconIds"],"properties":{"iconIds":{"type":"array","items":{"type":"integer","description":"A catalog icon ID."},"maxItems":200,"description":"Catalog icon IDs to add as plain entries; up to 200 per call, existing entries skipped."},"collectionId":{"type":["integer","string"],"description":"Numeric ID of the collection (integer or numeric string)."}}},"output_schema":null,"annotations":{"readOnlyHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"create_icon_kit","title":"Create Icon Collection","description":"Create a persistent Pro Icon Collection and optionally add icon IDs. Requires Pro API token with collections:write and mcp:use scopes.","input_schema":{"type":"object","required":["name"],"properties":{"name":{"type":"string","description":"Collection name, up to 120 characters."},"iconIds":{"type":"array","items":{"type":"integer","description":"A catalog icon ID."},"description":"Catalog icon IDs to add at creation; up to 200, duplicates ignored."},"framework":{"enum":["svg","react-ts","vue","sprite"],"type":"string","description":"Default export framework stored on the collection. Default svg."},"colorPolicy":{"enum":["currentColor","preserve","strip"],"type":"string","description":"Stored color policy: currentColor rewrites fills, preserve keeps them, strip removes them. Default currentColor."},"description":{"type":"string","description":"Optional collection description, up to 600 characters."},"namingPolicy":{"enum":["kebab","pascal","camel"],"type":"string","description":"File and component naming: kebab (default), pascal, or camel."}}},"output_schema":null,"annotations":{"readOnlyHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"export_icon_collection","title":"Export Icon Collection","description":"Queue a Pro Icon Collection export, including optional PNG packs. Requires an MCP token with exports:create.","input_schema":{"type":"object","required":["collectionId"],"properties":{"png":{"type":"object","description":"PNG pack options: sizes (up to 6 allowed pixel values, default [512]), densities (1-3, default [1]), backgroundType and backgroundColor, iconColorMode and iconColor, padding 0-256 pixels (default 48)."},"formats":{"type":"array","items":{"enum":["svg-folder","svg-sprite","json-manifest","license-manifest","react-ts","vue","svelte","solid","blade","storybook","npm-package","png-pack","iconify-json","png"],"type":"string","description":"An export format identifier; png is shorthand for png-pack."},"description":"Formats to build. Defaults to the basic set: SVG folder, SVG sprite, JSON manifest, license manifest."},"sizeProps":{"type":"boolean","description":"Emit size props on framework components. Default true."},"titleProp":{"type":"boolean","description":"Include an accessible title prop on components. Default true."},"decorative":{"type":"boolean","description":"Mark components decorative (aria-hidden) by default. Default true."},"typescript":{"type":"boolean","description":"Emit TypeScript where the format supports it. Default true."},"colorPolicy":{"enum":["currentColor","preserve","strip"],"type":"string","description":"currentColor rewrites fills, preserve keeps them, strip removes them. When omitted, collections carrying styling (applied style or custom icons) default to preserve; plain collections use the collection's stored policy (currentColor unless changed)."},"defaultSize":{"type":"integer","maximum":1024,"minimum":1,"description":"Default component render size in pixels, 1-1024. Default 24."},"packageName":{"type":"string","pattern":"^(?:@[a-z0-9][a-z0-9._-]*/[a-z0-9][a-z0-9._-]*|[a-z0-9][a-z0-9._-]*)$","maxLength":214,"description":"npm package name for npm-package exports, lowercase, optionally scoped."},"collectionId":{"type":["integer","string"],"description":"Numeric ID of the collection (integer or numeric string)."},"namingPolicy":{"enum":["kebab","pascal","camel"],"type":"string","description":"File and component naming: kebab, pascal, or camel. When omitted, uses the collection's stored policy (kebab unless changed)."},"packageVersion":{"type":"string","pattern":"^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?(?:\\+[0-9A-Za-z.-]+)?$","maxLength":64,"description":"Semver version for npm-package exports, such as 1.0.0. Default 0.1.0."},"componentSuffix":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9]{0,31}$","description":"Component name suffix, 1-32 letters or digits starting with a letter. Default Icon."}}},"output_schema":null,"annotations":{"readOnlyHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"export_icon_png","title":"Export icon as PNG","description":"Render one icon as PNG or a ZIP of PNG variants. Requires the Pro Plan and an MCP token with icons:read and exports:create scopes.","input_schema":{"type":"object","required":["id","iconName"],"properties":{"id":{"type":"integer","minimum":1,"description":"The catalog icon ID."},"zip":{"type":"boolean","description":"Return a ZIP of all size and density variants instead of a single PNG. Default false."},"sizes":{"type":"array","items":{"enum":[16,24,32,48,96,128,256,512,1024],"type":"integer","description":"Square canvas size in pixels."},"maxItems":4,"description":"Canvas sizes to render, up to 4 of the allowed pixel values. Default [512]."},"padding":{"type":"integer","maximum":256,"minimum":0,"description":"Padding around the icon in pixels, 0-256. Default 48."},"filename":{"type":"string","description":"Base filename for the generated file. Defaults to the icon name."},"iconName":{"type":"string","description":"The icon slug/name from the URL. Required to prevent ID-only bulk export."},"densities":{"type":"array","items":{"enum":[1,2,3,4],"type":"integer","description":"Device-pixel-ratio multiplier."},"maxItems":2,"description":"Density multipliers to render, up to 2. Default [1]."},"iconColor":{"type":"string","description":"Hex icon color used when iconColorMode is custom. Default #000000."},"iconColorMode":{"enum":["preserve","black","white","custom"],"type":"string","description":"preserve (default) keeps source colors; black, white, or custom recolor the icon."},"backgroundType":{"enum":["transparent","solid"],"type":"string","description":"Background fill. Default transparent."},"backgroundColor":{"type":"string","description":"Hex background color used when backgroundType is solid. Default #ffffff."}}},"output_schema":null,"annotations":{"readOnlyHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"generate_icon_kit_for_project","title":"Generate Icon Collection for project","description":"Recommend and persist an Icon Collection for a project brief. Requires Pro API token with collections:write and mcp:use scopes.","input_schema":{"type":"object","required":["projectDescription"],"properties":{"screens":{"type":"array","items":{"type":"string","description":"A screen or page name, such as Billing settings."},"description":"Optional screen or page names that contribute extra concepts."},"category":{"type":"string","description":"Optional icon set category filter, including New."},"maxIcons":{"type":"integer","maximum":64,"minimum":1,"description":"Maximum icons in the generated collection, 1-64. Default 16."},"framework":{"enum":["svg","react-ts","vue","sprite"],"type":"string","description":"Default export framework stored on the collection. Default svg."},"colorPolicy":{"enum":["currentColor","preserve","strip"],"type":"string","description":"Stored color policy: currentColor rewrites fills, preserve keeps them, strip removes them. Default currentColor."},"projectName":{"type":"string","description":"Optional collection name; derived from the description when omitted."},"namingPolicy":{"enum":["kebab","pascal","camel"],"type":"string","description":"File and component naming: kebab (default), pascal, or camel."},"requiredConcepts":{"type":"array","items":{"type":"string","description":"One concept keyword."},"description":"Concepts that must be searched, merged with concepts extracted from the brief."},"projectDescription":{"type":"string","description":"Project brief used to extract icon concepts, up to 1500 characters."}}},"output_schema":null,"annotations":{"readOnlyHint":false,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"get_icon","title":"Get icon metadata or SVG","description":"Return one icon by ID. Metadata is public; raw SVG requires a Pro API token with icons:read and mcp:use scopes.","input_schema":{"type":"object","required":["id"],"properties":{"id":{"type":"integer","minimum":1,"description":"The catalog icon ID, as shown in search results and icon page URLs."},"format":{"enum":["metadata","svg"],"type":"string","description":"svg is an alias for includeSvg=true; metadata (default) returns metadata only."},"includeSvg":{"type":"boolean","description":"Include the raw body and wrapped SVG markup. Requires a Pro token with icons:read. Default false."}}},"output_schema":null,"annotations":{"readOnlyHint":true},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"get_icon_collection","title":"Get Icon Collection","description":"Read one Icon Collection with its paginated entries. Custom-icon entries include entryId, customEditId, customName, and their customized SVG snapshot as the body. Requires a Pro API token with collections:read and mcp:use scopes.","input_schema":{"type":"object","required":["collectionId"],"properties":{"page":{"type":"integer","minimum":1,"description":"One-based page number. Default 1."},"perPage":{"type":"integer","maximum":100,"minimum":1,"description":"Entries per page, 1-100. Default 50."},"collectionId":{"type":["integer","string"],"description":"Numeric ID of the collection (integer or numeric string)."}}},"output_schema":null,"annotations":{"readOnlyHint":true},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"list_icon_collections","title":"List Icon Collections","description":"List your persistent Icon Collections with icon counts. Requires a Pro API token with collections:read and mcp:use scopes.","input_schema":{"type":"object","properties":{"page":{"type":"integer","minimum":1,"description":"One-based page number. Default 1."},"limit":{"type":"integer","maximum":50,"minimum":1,"description":"Collections per page, 1-50. Default 20."},"query":{"type":"string","description":"Optional name or slug filter."}}},"output_schema":null,"annotations":{"readOnlyHint":true},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"recommend_icons_for_ui","title":"Recommend icons for UI","description":"Recommend icon candidates for a UI description using svgicons.com search metadata.","input_schema":{"type":"object","required":["uiDescription"],"properties":{"limit":{"type":"integer","maximum":30,"minimum":1,"description":"Max recommendations, 1-30 with a Pro token (1-10 otherwise). Default 8."},"category":{"type":"string","description":"Optional icon set category filter, including New."},"concepts":{"type":"array","items":{"type":"string","description":"One concept keyword, such as settings or invoice."},"description":"Optional explicit concept keywords, merged with concepts extracted from the description."},"uiDescription":{"type":"string","description":"Product UI, screen, or feature description."}}},"output_schema":null,"annotations":{"readOnlyHint":true},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"remove_icon_from_collection","title":"Remove icon from Icon Collection","description":"Remove an icon from an Icon Collection. Entry-precise by default: only the plain entry is removed and custom variants survive; set allVariants true to remove every entry of the icon. Requires a Pro API token with collections:write and mcp:use scopes.","input_schema":{"type":"object","required":["collectionId","iconId"],"properties":{"iconId":{"type":"integer","minimum":1,"description":"Numeric ID of the catalog icon whose entry should be removed."},"allVariants":{"type":"boolean","default":false,"description":"true removes every entry of the icon, including custom variants. Default false: entry-precise, only the plain entry is removed and custom variants survive."},"collectionId":{"type":["integer","string"],"description":"Numeric ID of the collection (integer or numeric string)."}}},"output_schema":null,"annotations":{"readOnlyHint":false,"destructiveHint":true},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"search_icons","title":"Search SVG icons","description":"Search svgicons.com icons and return icon metadata. Raw SVG requires a Pro API token with icons:read and mcp:use scopes.","input_schema":{"type":"object","required":["query"],"properties":{"limit":{"type":"integer","maximum":50,"minimum":1,"description":"Max results, 1-50. Default 10 (20 with a Pro token); capped at 10 anonymous, 20 member, 50 Pro."},"query":{"type":"string","description":"Icon search query, such as \"arrow left\", \"settings\", or \"github\"."},"offset":{"type":"integer","minimum":0,"description":"Zero-based result offset for pagination. Default 0."},"category":{"type":"string","description":"Optional icon set category, including New."},"includeSvg":{"type":"boolean","description":"Include wrapped SVG markup. Requires Pro token icons:read."},"iconSetPrefix":{"type":"string","description":"Optional icon set prefix to limit the search."}}},"output_schema":null,"annotations":{"readOnlyHint":true},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"},{"name":"search_icon_sets","title":"Search SVG icon sets","description":"Search icon sets by name, prefix, author, category, or description.","input_schema":{"type":"object","properties":{"page":{"type":"integer","minimum":1,"description":"One-based page number. Default 1."},"limit":{"type":"integer","maximum":50,"minimum":1,"description":"Icon sets per page, 1-50. Default 20."},"query":{"type":"string","description":"Search text matched against icon set name, prefix, author, category, and description."},"category":{"type":"string","description":"Optional category, including New."}}},"output_schema":null,"annotations":{"readOnlyHint":true},"source":"probe","observed_at":"2026-10-19T09:16:53.114Z"}],"next_cursor":null,"next_actions":[{"action":"get_connection","description":"Connection block to call these tools","href":"/v1/servers/com.svgicons%2Fmcp/connection?target=mcpServers","arguments":{"name":"com.svgicons/mcp","target":"mcpServers"}},{"action":"get_server","description":"Full descriptor with trust and connectability","href":"/v1/servers/com.svgicons%2Fmcp","arguments":{"name":"com.svgicons/mcp"}}]}