关于 Icon MCP
Icon MCP 是供 AI 助手和项目开发者查找、调整 Lucide 图标样式的离线服务。它可为单个图标或批量图标生成风格一致的 SVG,无需 API 密钥或网络连接。
主要功能
- 01按关键词搜索 Lucide 图标
- 02生成带样式的 SVG 标记
- 03设置线条宽度、颜色和尺寸
- 04批量导出风格统一的图标
- 05支持名称或普通词语查询
适用场景
- 01为项目界面查找图标
- 02创建风格统一的导航图标集
- 03将样式化 SVG 保存到项目中
MCP 相关
向兼容 MCP 的助手提供 `search_icons` 和 `generate_icons` 工具。内置的 Lucide 图标可离线使用,无需 API 密钥。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
2收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | |
| query | string | 是 |
详细介绍
icon-mcp
mcp-name: io.github.pratham-jain33/icon-mcp
为任意 AI 助手添加自定义图标按钮。无需表情符号,也不需要设计师。
非官方社区项目。 本项目并非由 Lucide 制作、认可,也与其无关。Lucide 图标集(采用 ISC 许可证)已随软件包一同提供,因此所有功能均可离线使用。
为什么选择它
当 UI 需要图标时,AI 助手往往会使用表情符号,因为绘制优质图标是真正的设计工作。本 MCP 服务可接入任何兼容 MCP 的助手(Claude Desktop、Claude Code、Cursor 等),让其能够按关键词搜索 2,000 多个 Lucide 图标并调整样式(描边宽度、颜色、大小),还可以一次调用生成一整套风格一致的图标,让页面上的每个图标看起来都协调统一。SVG 会以标记语言的形式返回,由助手直接保存到项目中。无需 API 密钥、无需账户,也无需联网。
工具
| 工具 | 描述 |
|---|---|
search_icons | 按关键词搜索图标名称和标签。不知道确切图标名称时使用。 |
generate_icons | 将单个图标或一整套风格一致的图标渲染为样式化的 SVG 标记语言。接受图标名称或普通词语查询,并支持共享的 stroke_width、color、size 参数。 |
快速开始
安装
无需克隆:
uvx icon-mcp
或使用 pip:
pip install icon-mcp
也可以从源代码安装:
git clone https://github.com/pratham-jain33/icon-mcp
cd icon-mcp
python -m venv .venv
.venv/bin/pip install -e .
连接助手
Claude Desktop 配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"icon-mcp": {
"command": "uvx",
"args": ["icon-mcp"]
}
}
}
无需环境变量或密钥。从源代码运行时,改为指向本地检出目录:
{
"mcpServers": {
"icon-mcp": {
"command": "/absolute/path/to/icon-mcp/.venv/bin/python",
"args": ["-m", "icon_mcp.server"]
}
}
}
重启 Claude Desktop,然后尝试:“帮我找一个设置图标和一个垃圾桶图标,二者的描边宽度都为 1.5px,颜色为 #2f6bff,大小为 32px,并以 SVG 格式提供。”
配置
无需配置。没有任何需要设置的内容:无需 API 密钥、账户或网络访问权限。图标集随软件包一同提供。
工作原理
- 你用普通词语向助手描述所需图标。
- 助手调用
search_icons查找合适的名称,或将关键词直接传给generate_icons。 - MCP 服务将每个查询解析为软件包内置的 Lucide SVG,并改写其中的四个属性:
width、height、stroke-width、stroke。仅操作 XML,不进行渲染,也没有原生依赖项。 - 一次调用中的所有图标都采用完全相同的样式,因此生成的整套图标天然保持视觉一致。
- MCP 服务会返回 JSON,其中包含每个图标的 SVG 标记语言;助手会将其保存为项目中的
.svg文件。
示例会话
You: I need icons for my landing page nav: home, features, pricing,
contact. Make them all match: thin 1.5 stroke, blue #2f6bff.
Claude: [calls generate_icons with ["home", "features", "pricing",
"contact"], stroke_width=1.5, color="#2f6bff"]
Done. Four SVGs, all 1.5px stroke in #2f6bff, saved to icons/.
"features" resolved to the "sparkles" icon, "contact" to "mail".
为什么选择 icon-mcp 而不是 Unicon
Unicon 是最接近的现有工具:它是一个通过托管图标 API 提供服务的 MCP 服务,涵盖 9 个图标库中的 19,000 多个图标。icon-mcp 则选择了另一条路线:
- 完全离线。 整套图标集都随软件包一同提供。无需托管 API,乘飞机时也能使用。
- 无需账户,也没有等级限制。 永久免费,无需注册。
- 原生支持 Python。 使用
uvx/pip安装;无需 Node 或 npx。 - 一次调用生成风格一致的图标集。 传入图标列表和一种样式,每个 SVG 都会以统一样式返回。样式参数(描边宽度、颜色、大小)是核心功能,而非事后补充。
- 更精简、更专注。 两个工具、一个图标库、零配置。
取舍是:只支持一个图标库(Lucide),而不是九个;使用关键词搜索,而非语义搜索。若要为页面提供一套风格一致的图标,这就是全部所需。
参数
generate_icons 接受以下参数:
| 参数 | 默认值 | 规则 |
|---|---|---|
icons | (必填) | 1-50 个名称或关键词查询,例如 ["home", "trash can"] |
stroke_width | 2.0 | 0.5 到 4(2 是 Lucide 的默认值) |
color | "currentColor" | currentColor、十六进制值(#2f6bff)或 CSS 颜色名称(red) |
size | 24 | 1 到 1024 像素 |
无法匹配的查询会列在 unresolved 列表中,而不会导致整个调用失败。
路线图
- v0.1 — 内置 Lucide 图标集(v1.50.0)、关键词搜索、参数化 SVG 样式设置、一次调用生成一组图标
- 网站:粘贴提示词,下载样式化图标集
- 更多图标库(Tabler、Heroicons),作为可选捆绑包提供
贡献
欢迎提交问题和拉取请求。如果你添加工具,请用向聪明但从未见过该工具的朋友解释它的方式来撰写描述——助手会读取这段文字来判断何时使用该工具。若要将图标包更新到较新的 Lucide 版本,请在 scripts/fetch_lucide.py 中更新 LUCIDE_VERSION,然后运行该脚本。
许可证
MIT © Pratham Jain。详见 LICENSE。
致谢
本项目基于 Lucide 图标集(采用 ISC 许可证,详见 icon_mcp/LUCIDE_LICENSE)和 Model Context Protocol 构建。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。