# keyline

MCP-сервер для вёрстки баннеров и видео агентом без браузера. Генерирует графику через Skia из JSON-сцены под заданные размеры.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 5
- Автор: keyline-dev
- Лицензия: не указана · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/keyline-dev/keyline
- Обновлён: 2026-10-11
- HTML: https://affpapa.org/nevibecode/mcp/keyline

## Что делает

keyline преобразует структурированное JSON-описание макета в готовые изображения или видео. Вместо запуска Puppeteer или Playwright инструмент применяет нативный бинарник на Rust со встроенной библиотекой Skia. Агент описывает слои вроде `text`, `image`, `frame` и `icon`, после чего сервер собирает графику под нужные пропорции: от квадратных постов до узких рекламных баннеров.

Процесс оптимизирован под расход контекста. Вместо отправки тяжёлых скриншотов движок возвращает числовые замеры и список конкретных дефектов вёрстки, если текст не влезает в рамки. Без браузера уходит меньше токенов: по тестам автора расход снижается вдвое по сравнению с headless Chrome. Рендеринг выполняется на GPU, а при сбоях переключается на CPU для детерминированного вывода.

Для работы сервера необходим Docker, так как сборка распространяется в образе `ghcr.io/keyline-dev/keyline-mcp:0.8.1`. Без запущенного Docker-демона инструмент не стартует.

## Требования
- Нужно: Docker

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add keyline -- docker run -i --rm ghcr.io/keyline-dev/keyline-mcp:0.8.1
```

### Codex

**Командой платформы**
```bash
codex mcp add keyline -- docker run -i --rm ghcr.io/keyline-dev/keyline-mcp:0.8.1
```

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "keyline": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/keyline-dev/keyline-mcp:0.8.1"
            ]
        }
    }
}
```

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "keyline": {
            "type": "stdio",
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/keyline-dev/keyline-mcp:0.8.1"
            ]
        }
    }
}
```

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add keyline docker run -i --rm ghcr.io/keyline-dev/keyline-mcp:0.8.1
```

## Когда брать
- собрать комплект рекламных баннеров под разные экраны из единой JSON-сцены
- сгенерировать видео или анимированный GIF для соцсетей без запуска браузера
- исправить переполнение текста по числовым отчётам движка вместо скриншотов
- отрендерить векторную графику и типографику через Skia на GPU

## Примеры запросов агенту
- Собери баннеры для соцсетей в размерах 1:1 и 16:9 с заголовком, кнопкой и логотипом через keyline
- Проверь макет афиши на переполнение слоёв и экспортируй результат в PNG и WebP
- Создай короткий анимированный ролик анонса для сторис на основе шаблона

## Похожие
- [Next AI Draw.io](https://affpapa.org/nevibecode/mcp/next-ai-drawio.md) — MCP-сервер · ★ 36427
- [tldraw](https://affpapa.org/nevibecode/mcp/tldraw.md) — MCP-сервер · ★ 51104
- [Figma-Context-MCP](https://affpapa.org/nevibecode/mcp/figma-context-mcp.md) — MCP-сервер · ★ 16073
- [Agent-Native Assets](https://affpapa.org/nevibecode/mcp/agent-native-assets.md) — MCP-сервер · ★ 7527
- [Remove AI Watermarks](https://affpapa.org/nevibecode/mcp/remove-ai-watermarks.md) — MCP-сервер · ★ 6144
- [Dembrandt](https://affpapa.org/nevibecode/mcp/dembrandt.md) — MCP-сервер · ★ 3851

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
