Skip to main content
Glama

Что он делает

Спросите 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. Запускайте локально для разработки или как сетевой сервис для общего/контейнеризированного использования.

Инструменты

Инструмент

Описание

generate_screen

Текстовое задание → PNG + HTML. Опциональные поля design_system и project.

iterate_screen

Берет предыдущий screen_id + строку feedback, создает новую версию.

list_screens

Список экранов, опционально с фильтрацией по проекту.

get_screen

Получить метаданные (или полный 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 для полного списка.

Переменная

По умолчанию

Примечания

CLAUDE_BACKEND

cli

cli использует CLI claude; api использует SDK Anthropic напрямую

ANTHROPIC_API_KEY

Требуется только для api бэкенда

ANTHROPIC_MODEL

claude-opus-4-7

Только для API бэкенда. Если у вашего аккаунта нет доступа к Opus, установите claude-sonnet-4-6 или claude-haiku-4-5

CLAUDE_CLI_PATH

claude

Путь к бинарному файлу claude

CLAUDE_CLI_TIMEOUT_MS

180000

Таймаут подпроцесса

MCP_TRANSPORT

stdio

stdio или http

HTTP_PORT

7821

Порт HTTP транспорта

HTTP_HOST

127.0.0.1

Интерфейс привязки; для внешних запросов требуется MCP_HTTP_TOKEN

MCP_HTTP_TOKEN

Bearer-токен для HTTP-авторизации. Обязателен, если HTTP_HOST не 127.0.0.1

DESIGNS_DIR

./designs

Где сохраняются результаты

VIEWPORT_WIDTH

390

Ширина рендера в CSS-пикселях

VIEWPORT_HEIGHT

844

Высота рендера в CSS-пикселях

DEVICE_SCALE

2

Коэффициент Retina (итоговый PNG будет шириной WIDTH × DEVICE_SCALE)

PLAYWRIGHT_NO_SANDBOX

auto

auto = песочница включена вне контейнеров; true для принудительного отключения, false для принудительного включения. Отключение снижает изоляцию от вредоносного HTML модели — делайте это только внутри контейнера.

Стоимость

За одну генерацию: ~3 тыс. входных токенов (системный промпт) + ~6–12 тыс. выходных токенов в зависимости от сложности экрана. Выходные токены составляют основную часть стоимости на Opus.

Бэкенд

Первый вызов

Итерация с кэшем

cli

учитывается в квоте подписки Claude Code

то же самое — кэш дает скидку только на системный промпт

api

~$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.

Лицензия

MIT

Благодарности

Построено на базе:

Товарные знаки

iPhone, iPad, Apple Watch и iOS являются товарными знаками Apple Inc. Claude является товарным знаком Anthropic, PBC. mockit-mcp — это независимый open-source проект, который не связан, не одобрен и не спонсируется Apple Inc. или Anthropic, PBC. Все остальные названия продуктов, логотипы и бренды являются собственностью их соответствующих владельцев.

Install Server
A
license - permissive license
A
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    B
    quality
    D
    maintenance
    Provides 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.
    4
    22
    MIT
  • A
    license
    -
    quality
    B
    maintenance
    Screenshot 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.
    11
    279
    MIT

View all related MCP servers

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.

View all MCP Connectors

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/karyaboyraz/mockit-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server