Skip to content
plugmcp
DirectorySkillsCategoriesBlog
EN/中文
Sign inSign up
Home/Servers/Iconserve

Iconserve

by io.github.asr-aditya

Icons for agentic development: search & fetch 366,000+ open-source icons as SVG/PNG. No API key.

Power your agent

Add this server

The publisher's own URL. Not a PlugMCP endpoint.

Server URL
https://icons-for-agents.site/mcp
Provider
Add in Claude

Claude opens with the name and URL filled in. You still confirm it there.

Claude Code
claude mcp add --transport http io.github.asr-aditya-iconserve https://icons-for-agents.site/mcp

Run in a terminal.

Claude Desktop
{
  "mcpServers": {
    "io.github.asr-aditya-iconserve": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://icons-for-agents.site/mcp"
      ]
    }
  }
}

claude_desktop_config.json

Step-by-step: add this in Claude

Remote URL or a command on your machine? How the two installs differ

Run on PlugMCP

Host a copy with our keys and logs.

A new server you create. It is not this listing's official endpoint. Use the publisher install when you want their URL and their credentials.

Launch

Related MCP

View more
  • Firecrawl🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
  • N
    NotionToken-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.
  • Context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

Related skills

View all
  • reaReverse engineer anything with agents, from app behavior down to native binaries.
  • rea-changelog-updatePrepare or rewrite REA release changelogs and GitHub release notes from pinned Git history, with verified contributor thanks and Release Please synchronization.
  • rea-tool-designDesign or change REA investigation tools, CLI/MCP contracts, provider capabilities, and Evidence semantics.

Questions

How do I install Iconserve?
Copy the http config for Cursor, Claude Desktop, Claude Code, or VS Code on this page. It uses the publisher's install, not a PlugMCP proxy.
Does Iconserve need an API key?
No required environment variable is listed on this record.
What transport does Iconserve use?
Iconserve is reached over HTTP.
When was Iconserve last checked?
Last checked 2026-10-16. Icons for agentic development: search & fetch 366,000+ open-source icons as SVG/PNG. No API key.

Icons for agentic development: search & fetch 366,000+ open-source icons as SVG/PNG. No API key.

IconServe

A free, agent-readable service that aggregates 10,000+ open-source icons — Lucide, Heroicons, Tabler, and Simple Icons — and serves them as SVG or PNG at predictable URLs, with keyword + semantic search, an llms.txt, and an MCP server.

Runs entirely within the Cloudflare free tier (Workers + R2 + Workers AI).

How an agent uses it

NeedDo this
Embed an icon you know the name ofGET /i/{name}.svg (best match) or /icons/{set}/{name}.svg
Find the right iconGET /api/search?q=shopping+cart → names + ready URLs
Read the whole API in one shotGET /llms.txt (or /llms-full.txt)
Native tool callsMCP server at /mcp (search_icons, get_icon, list_sets)
OpenAPIGET /openapi.json

Discoverability surfaces (for crawling/browsing agents)

  • GET /icon/{set}/{name} — crawlable HTML page per icon (preview, usage, JSON-LD ImageObject + breadcrumb). /icon/{name} 302-redirects to the best match.
  • GET /sitemap.xml — every icon page (~10k URLs).
  • GET /robots.txt — explicitly allows AI crawlers (GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot, Google-Extended, …) and points to the sitemap.
  • Landing page carries WebSite+SearchAction and WebAPI JSON-LD and Open Graph tags.
  • IndexNow: key file served at /{INDEXNOW_KEY}.txt; npm run indexnow pings Bing/Yandex to crawl new or changed URLs instantly (pass paths to submit a subset, e.g. npm run indexnow /icon/lucide/house).

Transforms (query params on any icon URL)

  • color= hex / CSS color / currentColor — e.g. ?color=%23e11d48
  • size= 1..2048 px
  • stroke= 0..20 (line icons)
  • style= e.g. solid (Heroicons), filled (Tabler)
  • format= svg | png

Example: /i/shopping-cart.svg?color=crimson&size=48&stroke=1.5

Architecture

Build (offline, on your machine — no Cloudflare cost)
  scripts/ingest.mjs  → data/pack/icons.json  (id → normalized SVG, currentColor-driven)
                        data/pack/catalog.json (names, tags, aliases, license, styles)
                        data/pack/corpus.json  (search text per icon)
  scripts/embed.mjs   → data/pack/embeddings.bin  (10k × 384, bge-small-en-v1.5)
                        data/pack/embed-index.json

Cloudflare
  R2 (ICONS)   holds the 4 packed artifacts; loaded once per isolate into memory
  Workers AI   embeds ONLY the query string at search time (same 384-dim model)
  Worker       routing, color/size/stroke transforms, PNG (resvg-wasm), search, MCP, docs
  Assets       public/index.html landing page

Semantic search = keyword ranking fused (reciprocal-rank fusion) with cosine similarity over the in-memory embeddings. No Vectorize, no per-vector billing, no dimension cap. If embeddings.bin is absent, search gracefully falls back to keyword-only.

Local development

npm install
npm run build:data     # ingest + embed  (embed downloads a ~40MB model once)
npm run upload:r2      # push artifacts into the LOCAL R2 store
npm run dev            # http://localhost:8787

In wrangler dev --local the Workers AI binding is offline, so search runs keyword-only locally. Semantic search activates once deployed (or when running against the remote AI binding).

Deploy (Cloudflare free tier)

wrangler login         # one-time, opens a browser
npm run deploy         # creates the R2 bucket, uploads artifacts, deploys the Worker

npm run deploy runs scripts/deploy.mjs: it creates the iconserve-icons bucket (idempotent), uploads the four artifacts to remote R2, then wrangler deploy.

Adding / updating icon sets

Edit scripts/lib/sets.mjs, then re-run npm run build:data && npm run upload:r2 (local) or npm run deploy (remote). Set priority for /i/{name} best-match is DEFAULT_SET_ORDER in wrangler.toml.

Licensing

Icons are redistributed under their original permissive licenses: Lucide (ISC), Heroicons (MIT), Tabler (MIT), Simple Icons (CC0). Brand marks from Simple Icons are trademarks of their respective owners — use them per each brand's guidelines.

How do I install Iconserve?
Copy the http config for Cursor, Claude Desktop, Claude Code, or VS Code on this page. It uses the publisher's install, not a PlugMCP proxy.
Does Iconserve need an API key?
No required environment variable is listed on this record.
What transport does Iconserve use?
Iconserve is reached over HTTP.
When was Iconserve last checked?
Last checked 2026-10-16. Icons for agentic development: search & fetch 366,000+ open-source icons as SVG/PNG. No API key.

No tool list yet. Remote servers get one after the first health check.

plugmcp

Plug any tool into any agent. MCP servers for people who do not write servers. Gateway for volume, n8n for apps.

  • github.com/TODO
  • x.com/TODO
  • linkedin.com/company/TODO

PlugMCP, 2026

Product
  • Browse
  • Install
  • Host your own
  • Pricing
  • Voice mode
  • Browser
Directory
  • All MCP servers
  • MCP Apps
  • Tools
  • Agent skills
  • Categories
  • New
  • Voice
  • Submit a server
Developers
  • Docs
  • Blog
  • Club
  • Work with us
  • What is MCP
  • What is WebMCP
  • Status
Company
  • About
  • Contact
  • Terms
  • Privacy
  • DPA