mockit-mcp
Что он делает
Спросите Claude Code (или любого MCP-клиента):
Разработай домашний дашборд для фитнес-трекера. Три концентрических кольца активности, еженедельная гистограмма, список недавних тренировок, премиальная темная тема с неоновыми акцентами.
mockit-mcp возвращает настоящий PNG-макет (размером 390×844 при масштабе устройства 2x, вьюпорт класса iPhone) и исходный код HTML/Tailwind — чтобы вы могли визуально итерировать и перенести его в SwiftUI, когда будете готовы к разработке.
Это не статический движок шаблонов и не низкокачественная ИИ-поделка. Системный промпт вручную настроен на премиальную эстетику iOS: реальный контент, SVG-иконки (без эмодзи), стильные градиенты вместо стоковых фото, типографика по HIG (Human Interface Guidelines) и тональная многослойность вместо тяжелых теней.
Related MCP server: Playwright MCP for macOS
Основные возможности
Два бэкенда, одни и те же инструменты. Используйте локальный CLI
claude(подписка, без доплат) или API Anthropic (ключ + оплата за вызов). Переключайтесь одной переменной окружения.Реальный вывод в PNG. Безголовый Chromium через Playwright. Вьюпорт по умолчанию — 390×844 @2x (класс iPhone); любой пользовательский размер задается одной переменной окружения.
Итеративное уточнение.
iterate_screenпринимает ID экрана + обратную связь ("сделай карточку героя меньше") и создает новую версию, отслеживая связь родитель/потомок.Библиотека на диске. Каждая генерация сохраняет HTML + PNG + JSON-метаданные. Просматривайте, фильтруйте, экспортируйте повторно.
Стандарт MCP. Работает с Claude Code, Claude Desktop, Cursor, Windsurf или любым другим MCP-клиентом.
Транспорты Stdio + HTTP. Запускайте локально для разработки или как сетевой сервис для общего/контейнеризированного использования.
Инструменты
Инструмент | Описание |
| Текстовое задание → PNG + HTML. Опциональные поля |
| Берет предыдущий |
| Список экранов, опционально с фильтрацией по проекту. |
| Получить метаданные (или полный HTML) для конкретного экрана. |
Установка
Предварительные требования
Node.js 20+
Либо авторизованный CLI
claude(cliбэкенд, по умолчанию), либо API-ключ Anthropic (apiбэкенд)Загрузка Chromium для Playwright (~170 МБ, единоразово)
Быстрый старт (CLI бэкенд, рекомендуется для локальной разработки)
git clone https://github.com/karyaboyraz/mockit-mcp.git
cd mockit-mcp
npm install
npx playwright install chromium
npm run buildДобавьте в Claude Code:
claude mcp add mockit -- node "$(pwd)/dist/server.js"Готово. API-ключ не нужен — используется ваша существующая сессия CLI claude.
API бэкенд (если на хосте нет CLI claude)
echo "CLAUDE_BACKEND=api" > .env
echo "ANTHROPIC_API_KEY=sk-ant-..." >> .env
npm run build
claude mcp add mockit -- node "$(pwd)/dist/server.js"Docker (HTTP транспорт, для общего развертывания)
cat > .env <<'ENV'
CLAUDE_BACKEND=api
ANTHROPIC_API_KEY=sk-ant-...
# Required if you change the port binding from 127.0.0.1 to 0.0.0.0:
MCP_HTTP_TOKEN=$(openssl rand -hex 32)
ENV
docker compose up -d --buildПо умолчанию docker-compose.yml привязывает HTTP-порт только к 127.0.0.1, и сервер требует MCP_HTTP_TOKEN для любого запроса не с локальной машины. Не открывайте этот сервер в публичную сеть без установки надежного MCP_HTTP_TOKEN — каждая генерация расходует лимиты вашего API-ключа Anthropic.
Затем укажите любому клиенту URL локальной петли:
claude mcp add --transport http mockit http://127.0.0.1:7821/mcp \
-H "Authorization: Bearer <MCP_HTTP_TOKEN>"Для удаленного доступа измените привязку порта в docker-compose.yml на 0.0.0.0:7821:7821 и убедитесь, что установлен MCP_HTTP_TOKEN — в противном случае сервер откажется запускаться.
Использование
В любом MCP-клиенте просто спросите:
Разработай дашборд фитнес-трекера. Покажи прогресс колец за сегодня, еженедельную диаграмму и список недавних тренировок. Темная тема, неоново-зеленый акцент.
PNG появится в чате. HTML будет сохранен в designs/{project}/{name}-{id}.html.
Для последующих правок:
iterate_screen для того фитнес-дашборда — замени диаграмму на пульс во времени и добавь кнопку "поделиться тренировкой" внизу.
См. examples/ для примеров промптов и готовых результатов.
Конфигурация
Все опционально. См. .env.example для полного списка.
Переменная | По умолчанию | Примечания |
|
|
|
| — | Требуется только для |
|
| Только для API бэкенда. Если у вашего аккаунта нет доступа к Opus, установите |
|
| Путь к бинарному файлу |
|
| Таймаут подпроцесса |
|
|
|
|
| Порт HTTP транспорта |
|
| Интерфейс привязки; для внешних запросов требуется |
| — | Bearer-токен для HTTP-авторизации. Обязателен, если |
|
| Где сохраняются результаты |
|
| Ширина рендера в CSS-пикселях |
|
| Высота рендера в CSS-пикселях |
|
| Коэффициент Retina (итоговый PNG будет шириной |
|
|
|
Стоимость
За одну генерацию: ~3 тыс. входных токенов (системный промпт) + ~6–12 тыс. выходных токенов в зависимости от сложности экрана. Выходные токены составляют основную часть стоимости на Opus.
Бэкенд | Первый вызов | Итерация с кэшем |
| учитывается в квоте подписки Claude Code | то же самое — кэш дает скидку только на системный промпт |
| ~$0.50–0.95 (Opus 4.7) | ~$0.45–0.90 (кэш дает скидку только на входной системный промпт; стоимость вывода не меняется) |
Кэширование системного промпта включено по умолчанию (TTL 5 минут). Это экономит несколько центов за вызов, но не является скидкой на порядок — выходные токены все равно оплачиваются по полной ставке. Для реального снижения затрат переключитесь на модель поменьше (claude-sonnet-4-6 или claude-haiku-4-5).
Архитектура
┌─────────────────┐
│ MCP Client │ (Claude Code, Cursor, Windsurf, …)
└────────┬────────┘
│ tool call: generate_screen({ prompt, ... })
▼
┌─────────────────────────────────────────────────────┐
│ mockit-mcp │
│ │
│ ┌──────────────┐ ┌────────────────────────┐ │
│ │ Backend │ │ Renderer │ │
│ │ │ │ │ │
│ │ ► cli ─────┼──► │ Playwright (headless │ │
│ │ ► api ─────┘ │ Chromium @ iPhone │ │
│ │ → HTML+Tailwind │ viewport) │ │
│ └──────────────┘ │ → PNG screenshot │ │
│ └────────────────────────┘ │
│ │
│ ┌────────────────────────────────────────────┐ │
│ │ Storage (disk): HTML + PNG + JSON metadata │ │
│ └────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────┘Структура хранения
designs/
└── {project-slug}/
├── {name-slug}-{id8}.html # id8 = first 8 chars of the screen UUID
├── {name-slug}-{id8}.png
└── {name-slug}-{id8}.json # full UUID, prompt, parent ID, tokens, model, costНастройка стиля дизайна
Вручную настроенный системный промпт находится в src/system-prompt.ts. Именно там закодированы соблюдение iOS HIG, правило отсутствия стоковых фото, цепочка фоллбэков SF Pro и предпочтения в типографике. Хотите Material You или стиль десктопного дашборда? Отредактируйте его.
Разработка
npm run dev # tsx watch mode, stdio transport
npm run http # tsx watch mode, http transport on :7821
npm run build # compile to dist/Дорожная карта
[ ] Пресеты вьюпортов для Watch / iPad / Android
[ ] Генерация потоков из нескольких экранов (последовательности онбординга)
[ ] Инструмент переноса HTML → SwiftUI / Jetpack Compose
[ ] Импорт дизайн-системы (конфиг Tailwind, дизайн-токены)
[ ] Ссылки на изображения (используйте
--imageдля визуального вдохновения)[ ] Генерация вариантов (3-5 альтернатив на промпт)
Участие в разработке
Проблемы и PR приветствуются — см. CONTRIBUTING.md.
Лицензия
Благодарности
Построено на базе:
Anthropic Claude — модель, которая выполняет основную работу
Model Context Protocol — стандарт интеграции
Playwright — рендерер
Tailwind CSS — через CDN, в каждом сгенерированном экране
Товарные знаки
iPhone, iPad, Apple Watch и iOS являются товарными знаками Apple Inc. Claude является товарным знаком Anthropic, PBC. mockit-mcp — это независимый open-source проект, который не связан, не одобрен и не спонсируется Apple Inc. или Anthropic, PBC. Все остальные названия продуктов, логотипы и бренды являются собственностью их соответствующих владельцев.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceProvides professional UI/UX design expertise and frontend development tools for analyzing interfaces, generating design systems, and creating modern components with accessibility and best practices built-in. Supports React, Vue, Angular and other frameworks with seamless Claude Code CLI integration.422MIT
- Flicense-qualityDmaintenanceEnables Claude to see and interact with any macOS application using natural language commands. Perfect for testing Mac applications, UI automation, and app development with AI assistance.32
- Alicense-qualityBmaintenanceScreenshot and diagram tool for AI agents. Capture and annotate screenshots to show Claude what you mean — or let the agent render Mermaid diagrams and open them for visual review. Approve, annotate, or request changes with text feedback. Built-in review mode with structured responses. CLI and MCP server for Claude Code, Cursor, Windsurf, Cline. macOS, open source, free.11279MIT
- AlicenseBqualityDmaintenanceGenerates React Native/Expo UI components using AI, integrates with Claude Desktop to create and optimize Tamagui-based components via natural language commands.62MIT
Related MCP Connectors
UI design from prompts, screenshots, and URLs for AI coding agents and theme tokens.
Generate PWA icon sets and iOS splash screens from a text prompt or an existing image.
Generate images, GIFs, and PDFs from HTML, URLs, or templates — from your AI agent.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/karyaboyraz/mockit-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server