Icon Composer MCP
Демо
Related MCP server: XcodeBuildMCP
Основные возможности
Создание
.iconбандлов программно из PNG или SVG глифовПолная поддержка Liquid Glass: блики, размытие материала, тени, полупрозрачность
Темная тема + варианты оформления со специализацией заливки для каждого режима
Готовность к работе с AI-агентами: 12 инструментов MCP + 3 рабочих промпта со встроенными инструкциями
Установка
claude mcp add icon-composer -- npx -y icon-composer-mcpДобавьте в ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"icon-composer": {
"command": "npx",
"args": ["-y", "icon-composer-mcp"]
}
}
}Добавьте в .cursor/mcp.json в корне вашего проекта (или ~/.cursor/mcp.json для глобальной настройки):
{
"mcpServers": {
"icon-composer": {
"command": "npx",
"args": ["-y", "icon-composer-mcp"]
}
}
}Сервер появится в Cursor Settings > MCP Servers. Перезапуск не требуется.
Добавьте в .vscode/mcp.json в корне вашего проекта (или откройте Command Palette > MCP: Open User Configuration для глобальной настройки):
Примечание: VS Code использует
"servers"(а не"mcpServers") и требует поле"type".
{
"servers": {
"icon-composer": {
"type": "stdio",
"command": "npx",
"args": ["-y", "icon-composer-mcp"]
}
}
}Вы увидите кнопки Start/Stop/Restart прямо в редакторе. При первом запуске потребуется подтверждение доверия.
Сначала включите MCP в Windsurf Settings > Cascade > Model Context Protocol (MCP).
Затем добавьте в ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"icon-composer": {
"command": "npx",
"args": ["-y", "icon-composer-mcp"]
}
}
}Нажмите кнопку обновления в настройках Windsurf, чтобы загрузить сервер.
Сервер использует транспорт stdio. Большинство MCP-клиентов используют этот формат конфигурации:
{
"mcpServers": {
"icon-composer": {
"command": "npx",
"args": ["-y", "icon-composer-mcp"]
}
}
}Или запустите сервер напрямую:
npx -y icon-composer-mcpnpm install -g icon-composer-mcp
icon-composer --helpКак это работает
Предоставьте глиф — любой логотип или изображение в формате PNG или SVG
Создайте
.iconбандл — задайте заливку фона, масштаб слоя и эффекты стеклаictool от Apple отрисовывает Liquid Glass — блики, тени, глубину и полупрозрачность
Экспорт — просмотр PNG, маркетинговая иконка для App Store или
.iconбандл для Xcode
Требования
Node.js 18+
macOS с Icon Composer для рендеринга Liquid Glass
brew install --cask icon-composerПлоские превью, создание/редактирование бандлов и маркетинговый экспорт работают на любой платформе без Icon Composer
Запустите icon-composer doctor для проверки вашей настройки.
Команды CLI
Команда | Описание |
| Создать новый |
| Добавить слой в существующий бандл |
| Удалить слой или группу |
| Прочитать и отобразить содержимое бандла |
| Настроить эффекты Liquid Glass для группы |
| Установить переопределения для темной/тонированной темы |
| Установить заливку фона (сплошная, градиент, автоматическая, нет) |
| Установить масштаб и смещение слоя/группы |
| Включить/выключить все эффекты стекла |
| Экспортировать превью PNG (Liquid Glass или плоское) |
| Отрисовать Liquid Glass с идеальной точностью через ictool |
| Экспортировать плоский PNG 1024x1024 для App Store Connect (без альфа-канала) |
| Проверить настройку системы и зависимости |
Подробности
icon-composer create <foreground_path> <output_dir> --bg-color <hex> [options]Опция | По умолчанию | Описание |
| обязательно | Цвет фона (например, |
|
| Имя бандла (без расширения |
| — | Цвет фона в темной теме |
|
| Масштаб глифа (1.0 = стандарт ~65% области иконки) |
|
| Блик |
|
| Тип тени: |
|
| Непрозрачность тени (0–1) |
| — | Значение размытия материала (0–1) |
|
| Включить градиент полупрозрачности |
|
| Степень полупрозрачности (0–1) |
Вывод: Создает <output_dir>/<bundle_name>.icon/, содержащий манифест icon.json и директорию Assets/.
icon-composer add-layer <bundle_path> <image_path> --name <name> [options]Опция | По умолчанию | Описание |
| обязательно | Имя слоя |
|
| Индекс целевой группы |
|
| Создать новую группу для этого слоя |
|
| Непрозрачность слоя (0–1) |
|
| Масштаб слоя |
|
| Смещение по X в точках |
|
| Смещение по Y в точках |
|
| Режим наложения (например, |
|
| Участие в эффектах Liquid Glass |
Поддерживаемые форматы: .png, .jpg, .jpeg, .svg, .webp, .heic, .heif
icon-composer remove <bundle_path> --target <layer|group> --group-index <n> [--layer-index <n>]icon-composer inspect <bundle_path>Вывод: Печатает полный JSON манифеста и список всех активов с их размерами.
icon-composer glass <bundle_path> [options]Опция | Описание |
| Целевая группа (по умолчанию: |
| Блик |
| Степень размытия (0–1) |
|
|
| Непрозрачность тени (0–1) |
| Переключатель полупрозрачности |
| Степень полупрозрачности (0–1) |
| Непрозрачность группы (0–1) |
| Режим наложения группы |
|
|
icon-composer appearance <bundle_path> --target <fill|group> --appearance <dark|tinted> [options]Опция | Описание |
|
|
|
|
| Цвет фона для этого оформления |
| Блик для этого оформления |
| Тип тени для этого оформления |
| Непрозрачность тени для этого оформления |
icon-composer fill <bundle_path> --type <solid|gradient|automatic|none> [options]Опция | Описание |
|
|
| Основной цвет (для сплошной или нижней части градиента) |
| Вторичный цвет (верхняя часть градиента) |
| Угол градиента в градусах (по умолчанию: |
icon-composer position <bundle_path> [options]Опция | По умолчанию | Описание |
|
|
|
|
| Индекс группы |
| — | Индекс слоя (обязательно для |
| — | Коэффициент масштабирования (0.05–3.0) |
| — | Смещение по X в точках |
| — | Смещение по Y в точках |
icon-composer fx <bundle_path> --enable|--disableВключает или выключает блики, тени, размытие и полупрозрачность для всех групп одновременно.
icon-composer preview <bundle_path> <output_path> [options]Опция | По умолчанию | Описание |
|
| Размер вывода в пикселях |
| — |
|
|
| Принудительный плоский рендеринг (пропустить Liquid Glass) |
| — |
|
| — | Обои Apple: |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ethbak/icon-composer-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server