iconmind

mcp
Guvenlik Denetimi
Uyari
Health Uyari
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Uyari
  • process.env — Environment variable access in .github/scripts/auto-changeset.mjs
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

2,437 open-source icons for AI-era software — agents, MCP, RAG, LLMs — with an MCP server so your coding assistant picks real names. React, Vue, Svelte, Solid, Preact, React Native, Astro, Laravel, Flutter. MIT.

README.md

156 IconMind icons taken evenly across the set: agents, models, vector databases, MCP servers, charts, files and arrows

IconMind

Open-source icons for AI-era software.
LLMs, agents, MCP, RAG, and everything around them.

Website · Browse all icons · Collections · Docs · MCP server

MIT license icons cells npm pub.dev


import { Agent, ContextWindow, VectorDatabase } from "@iconmind/react";

<Agent />
<ContextWindow variant="duotone" weight="bold" />
<VectorDatabase size={32} className="text-violet-500" />

2,437 icons · 14,622 drawings · 10 packages · one generated source of truth.

Every icon is a declaration compiled into six cells by a validator that refuses geometry
it cannot draw correctly, and a nightly job rasterises all 14,622 of them and fails if any
two icons render the same. That is how a set this size still reads as one hand, and why
an assistant can be handed an MCP server that returns
real names instead of <AgentBrain />.

Six icons were redrawn last week because that scan caught them, and Bluetooth was dropped
because its rune needs three stroke crossings where the set allows two.
Everything else that was turned away is written down too.

Why this exists

Build a UI for an agent, a RAG pipeline, or an MCP server and you run out of icons
almost immediately. There is no context-window, no reranker, no tool-calling, no
mcp-resource in any mainstream set, so interfaces reach for a generic robot, a generic
database, a generic lightning bolt, and the meaning is lost.

Lucide, Heroicons and Phosphor are excellent, and a thousand domain-specific AI icons
would be scope creep for any of them. IconMind sits next to them, not instead of
them.
The 24px grid and 2px regular stroke match Lucide on purpose, so the two can
share an interface without clashing.

IconMind Generalist sets
Vocabulary AI, agents, MCP, RAG, data, devops General UI
Grid 24px, 2px stroke Usually the same
Variants 6 drawings per concept Usually 1–2
Consistency Machine-enforced geometry Reviewed by eye
For AI assistants Built-in MCP server

The set

2,437 icons · 12 domains · 6 cells each. Two variants, outline and duotone, each
drawn at three weights (1.5 / 2 / 2.5). A weight is a real drawing constraint, not a
stroke-width slider: gap and legibility rules tighten as the stroke grows, and the
validator checks every cell separately.

Duotone is derived, never drawn: every closed body tints at 20% behind the strokes,
and icons made only of open marks (a check, an arrow) get a halo, the same paths echoed
wider behind them, so the whole set answers the variant switch, not just the lucky icons.

Six icons drawn in all six cells: outline and duotone, each at thin, regular and bold

AI & LLM: models, prompts, tokens, embeddings, evaluation, safety Agents: planning, memory, tool use, computer use, multi-agent MCP: servers, clients, resources, tools, transports
RAG & Search: chunking, retrieval, ranking, vectors, grounding Data Engineering: pipelines, warehouses, streaming, quality DevOps: CI/CD, containers, observability, incidents
Cloud: compute, storage, network, edge, cost Security: auth, secrets, policy, AI security Automation: workflows, triggers, conditions, human-in-the-loop
Analytics: charts, metrics, experiments, LLM observability Developer Tools: code, terminal, VCS, API, testing Interface: arrows, actions, states, layout, media

Install

Stack Install
React npm i @iconmind/react
Vue 3 npm i @iconmind/vue
Svelte npm i @iconmind/svelte
Solid npm i @iconmind/solid
Preact npm i @iconmind/preact
React Native npm i @iconmind/react-native react-native-svg
Astro npm i @iconmind/astro
Flutter flutter pub add iconmind_flutter
Laravel Blade composer require iconmind/blade-iconmind
Plain SVG / sprite npm i @iconmind/icons

One API, everywhere

Every framework package exposes the same component names and the same props, generated
from one source so they cannot drift:

Prop Default What it does
size 24 Width and height
color currentColor Stroke colour
variant "outline" "outline" or "duotone"
weight "regular" "thin", "regular" or "bold", each its own drawing
strokeWidth per weight Fine adjustment; picking a weight redraws instead
absoluteStrokeWidth false Keeps stroke thickness constant as size changes

The same icon in four stacks:

// React / Preact / Solid — also Vue and Svelte with template syntax
<VectorDatabase variant="duotone" weight="bold" size={32} />
// Flutter — real strokes on a CustomPaint, not an icon font,
// so duotone and the weights survive intact
IconMind(IconMindIcons.vectorDatabase,
    variant: IconMindVariant.duotone, weight: IconMindWeight.bold, size: 32)
{{-- Laravel — server-rendered, zero JavaScript --}}
<x-im-vector-database-duotone-bold class="w-8 h-8" />
---
import { VectorDatabase } from "@iconmind/astro";
---
<VectorDatabase variant="duotone" weight="bold" size={32} />

Tree shaking, measured

Importing three icons costs ~660 bytes gzipped, not the whole library, and that is a
test that fails in CI if it stops being true rather than a promise. Every icon is also its own
entry point (@iconmind/react/icons/agent). In Flutter, icons are compile-time
constants: the AOT compiler drops every one you never mention.

Download

Every icon page has a Download menu with SVG, PNG at 16 to 512 px, WebP, a favicon .ico, JPEG and Copy PNG, rendered in your browser from the exact variant, weight and colour on screen. The whole set ships as two archives on every GitHub Release: iconmind-svg.zip (all 14,622 cells) and iconmind-png.zip (one 512 px PNG per icon). It is also an Iconify collection (iconmind:agent) and one jsDelivr URL away with no install.

For AI assistants

There is an MCP server, so an assistant writing your UI can search the real set instead
of guessing icon names that do not exist:

claude mcp add iconmind -- npx -y @iconmind/mcp

It runs offline, bundles the icon data, and starts in well under a second. The site also
serves llms.txt and a full machine-readable
inventory, so assistants without tool access can still pick real names.

No build step at all

@iconmind/icons ships every cell as a file on disk
(icons/<category>/<slug>/<variant>-<weight>.svg), a sprite.svg of <symbol>
elements, and the metadata database on its own subpath, so importing it is a decision
rather than an accident:

<svg width="24" height="24"><use href="sprite.svg#im-agent" /></svg>
import { getIcon, iconsIn } from "@iconmind/icons/metadata"; // tools only: ~180 KB gz
import { version } from "@iconmind/icons";                    // a few hundred bytes

Design system

Icons here are written, not drawn: each one is a TypeScript declaration compiled
into its six cells, and every rule a machine can hold is held by a machine. An illegal
drawing cannot reach a file, because the shape constructors throw before it does:

24 × 24 canvas  ·  0.5 grid  ·  angles 0 / 45 / 90 only  ·  live area 2..22
round caps      ·  ≤ 2 stroke crossings  ·  ink centred within 2 units
longer side 18–22 across the whole set  ·  duotone tint 20%, halo = weight + 3

The vocabulary does the rest: a family shares one body and differs only in the mark
inside it, so siblings are byte-identical where they agree.

Body Meaning Example
Open ring An agent, acting on its own agent, agent-check
Chamfered box A machine; the chamfer is MCP's mark model, mcp-server
Two-pronged plug A capability an agent can pick up tool-calling, mcp-tool
Page with a fold A document mcp-resource, policy
Squared shield Protection shield-check, encryption
Square loop Anything that goes round refresh, retry, sync
Cylinder Stored data database, backup

So you can usually guess the next icon in a family before you see it. The full
reasoning, with the measurements behind each rule, is in the
design guidelines.

Measured, not just validated

Beyond the validator, three tools keep the set honest at scale. All three grew out of
real audits that redrew more than sixty icons:

pnpm icons:audit                  # size, ink density and centred-ness outliers, with named exceptions
pnpm icons:twins                  # renders all 2,437 icons and pixel-compares every pair for lookalikes
pnpm icons:duplicates --perceptual # the nightly scan: 14,622 cells, fails on two that render alike

Don't take my word for it

Every claim on this page is a command you can run after cloning:

pnpm icons:validate                # every rule, all 14,622 cells
pnpm icons:twins                   # pixel-compare every pair at 24px
pnpm icons:duplicates --perceptual # the nightly scan for lookalikes
pnpm test                          # including the bundle-size tripwires

Versioning & releases

All npm packages share one version (currently in lock-step with iconmind_flutter on
pub.dev), and releases are fully automatic: every merged change steps the patch version,
publishes all packages, tags, cuts a GitHub Release and redeploys the site. What you
see on npm is never ahead of or behind the repo.

FAQ

Why is there no CommonJS build? Providing one would provide a path that does not
tree-shake well, and some bundlers would silently choose it. ESM only.

Why only 0/45/90° angles? It is the constraint that makes 2,437 icons read as one
hand. Some pictures are refused rather than drawn badly: a warning triangle at 45° is
a tent, so warning is a circle. The rest of the refusals are
listed here.

Can I request an icon? Yes, and it takes a minute and is the most useful contribution
there is: request an icon.

Brand icons? No. Concepts age better than logos, and logos carry trademark weight
this set does not want.

Is there a Figma library? No, and none is planned. It would be a second source of
truth beside the compiler. The set is an Iconify collection
(iconmind:agent), which Iconify's own Figma plugin reads, and every icon page copies
or downloads its SVG.

How do I pick between IconMind and Lucide/Tabler/Heroicons? There are
comparison pages with the counts, licences and
trade-offs written out.

Contributing

Icons are TypeScript declarations in scripts/draw/icons/. The compiler and validator
give you feedback in seconds, and a contact sheet renders any subset at 88/24/16px:

pnpm install
pnpm icons:build       # draw every icon from source
pnpm icons:validate    # every rule, all 14,622 cells
pnpm icons:audit       # the consistency measures

See the contributing guide for naming rules, originality policy and
the pull-request checklist.

Ten icons are described down to their body and mark slot
if you want one to start from. The drawing is the fun part; the rules are the tools' job.

Support the project

If this set saves you from mapping reranker to a generic sort icon, a ⭐ helps other
people building AI interfaces find it.

License

MIT, code and icons alike. Free for commercial use, no attribution
required, no conditions. Forever.

Yorumlar (0)

Sonuc bulunamadi