06ketan/slideshot

06ketan/slideshot

от 06ketan
Конвертирует AI-сгенерированные HTML-карусели в PNG, WebP, PDF и PPTX. Работает как CLI, веб-приложение, MCP-сервер или REST API. Полезен для создания слайдов и презентаций из HTML. Поддерживает се...

slideshot

npm npm downloads npm mcp GitHub stars license MCP compatible MCP Registry Anthropic DXT Glama MCP server MCP Badge

slideshot MCP server card on Glama

Convert AI-generated HTML carousels into high-res PNG, WebP, PDF, and PPTX — via CLI, Web App, MCP Server, or REST API.

Web App · npm CLI · npm MCP · API Spec

Architecture

slideshot/
  packages/
    cli/           ← Core Puppeteer rendering engine + CLI
    mcp-server/    ← MCP stdio server for AI tools
    webapp/        ← Next.js web app with live preview
  prompts/
    generic.md           ← Clean minimal
    branded.md           ← Ketan Slides design system
    instagram-carousel.md ← Bold vibrant IG style
    infographic.md       ← Data-heavy charts
    pitch-deck.md        ← Professional presentations
    dark-modern.md       ← Neon glassmorphism
    editorial.md         ← Magazine serif

Quick Start

CLI
npx slideshot ./my-carousel.html --formats png,webp,pdf --scale 4

Options:

Flag Default Description
-s, --selector .slide CSS selector for slide elements
-W, --width 540 Slide width (CSS px)
-H, --height 675 Slide height (CSS px)
--scale 4 Device scale (4x = 2160x2700)
-f, --formats png,webp,pdf Output formats (png, webp, pdf, pptx)
-q, --quality 95 WebP quality (0-100)
-o, --out ./slides Output directory
Инструменты были проиндексированы:
create_slidesидемпотентный

Создаёт слайды. ВАЖНО: Используйте mode=default, если пользователь явно не выбрал token_saver. mode=default = ИИ пишет полный HTML (наилучшее качество). mode=token_saver = ИИ отправляет JSON, сервер использует базовые шаблоны. ТРЕБУЕТ discover_themes сначала И пользователь должен подтвердить структуру данных. После сохранения HTML этим инструментом вы ОБЯЗАНЫ показать htmlPath как артефакт предпросмотра кода. Затем ОСТАНОВИТЕСЬ и попросите пользователя подтвердить. НЕ вызывайте render_slides, пока пользователь явно не подтвердит.

Параметры
  • brandNamestring

    Brand name for branded themes

  • heightnumber

    Custom height px (only with orientation=custom)

  • htmlstring

    Full HTML document (mode=default only)

  • modeenumобязательный

    default = AI writes full HTML (more tokens, full control). token_saver = AI sends JSON, server assembles HTML (fewer tokens).

  • orientationenum

    Preset or custom. Default: portrait

  • slidesobject[]

    Structured slide data (mode=token_saver only)

  • themeenumобязательный

    Theme from discover_themes

  • widthnumber

    Custom width px (only with orientation=custom)

discover_themesтолько чтениеидемпотентный

ОБЯЗАТЕЛЬНЫЙ первый шаг – все остальные инструменты ОТКЛОНЯЮТ запросы, пока этот не вызван. Возвращает темы, предустановки ориентации, режимы использования токенов и форматы вывода. Используйте ТОЛЬКО встроенные подсказки выбора из массива "ask" – НЕ выводите темы в виде отдельного списка Markdown. НЕ спрашивайте, сколько слайдов (вы решаете на основе темы). После того как пользователь выберет параметры, покажите структуру данных предложенных слайдов и ДОЖДИТЕСЬ подтверждения перед вызовом create_slides.

Параметры

Без параметров.

edit_slides

Выполняет энергоэффективные частичные правки на ранее сгенерированной HTML-презентации. Используйте ЭТО ВМЕСТО полной перегенерации для небольших изменений — это экономит 60-90% токенов по сравнению с полной перезаписью. Операции: replace_slide (заменяет блок одного слайда по 1-индексированному slideIndex), patch_css (добавляет CSS-правила в <style>), swap_token (заменяет значение CSS-переменной, например {"--coral": "#FF0000"}), patch_class (добавляет/удаляет класс на конкретном слайде, например {"add": "dark"}). Читает из кэша или из htmlPath; сохраняет обновлённый HTML и возвращает новый htmlPath. После редактирования покажите htmlPath как превью-артефакт и ОСТАНОВИТЕСЬ — не вызывайте render_slides, пока пользователь не подтвердит.

Параметры
  • htmlPathstring

    Path to HTML to edit. Falls back to cached HTML from last create_slides call.

  • operationenumобязательный

    Edit operation: replace_slide swaps one slide block; patch_css appends CSS rules to <style>; swap_token replaces a CSS variable's value; patch_class adds/removes a class on a slide.

  • payloadstring | objectобязательный

    For replace_slide: the new <div class="slide">...</div> HTML string. For patch_css: a CSS rules string. For swap_token: an object {tokenName: newValue}, e.g. {"--coral": "#FF0000"}. For patch_class: an object {add?: string, remove?: string}.

  • slideIndexinteger

    1-indexed slide position. Required for replace_slide and patch_class. Omit for global ops (patch_css, swap_token).

health_checkтолько чтениеидемпотентный

Проверяет, что Puppeteer/Chromium может запускаться. Используйте, когда рендеринг не удаётся.

Параметры

Без параметров.

list_themesтолько чтениеидемпотентный

Идемпотентный, только для чтения, список всех доступных тем (8+). В отличие от discover_themes, этот инструмент НЕ запускает рабочий процесс создания слайдов — вызывайте его в любое время, когда пользователь в середине разговора спрашивает «какие темы есть?». Возвращает тот же каталог тем с уровнями (primary/secondary). Модели ДОЛЖНЫ показывать каждую полученную тему, никогда не сокращайте их.

Параметры

Без параметров.

render_slidesидемпотентный

Выполняет финальный рендеринг в PDF, WebP, PNG, PPTX. Принимает строку HTML или путь к HTML-файлу (htmlPath). Поддерживает параметры: width, height, selector, scale, webpQuality, orientation, pptxMode, pptxFilename, slideRange. НИКОГДА не вызывайте render_slides в одном вызове с create_slides. Когда пользователь передаёт путь к существующему HTML-файлу, передайте его как htmlPath и вызывайте этот инструмент напрямую — discover_themes или create_slides не нужны. Для полного рабочего процесса создания слайдов сначала ТРЕБУЮТСЯ и discover_themes, и create_slides, и вызывайте ТОЛЬКО ПОСЛЕ того, как пользователь подтвердит предварительный просмотр. Возвращает пути к файлам на диске.

Параметры
  • formatsenum[]

    Output formats (default: [pdf])

  • heightnumber

    Height px (default: 675)

  • htmlstring

    HTML string (prefer htmlPath to save tokens)

  • htmlPathstring

    Path to saved HTML file (from create_slides). Falls back to cached HTML.

  • orientationenum

    portrait=540x675, landscape=1920x1080

  • outDirstring

    Output directory override

  • pdfFilenamestring

    Custom PDF filename

  • pptxFilenamestring

    Custom PPTX filename

  • pptxModeenum

    Default: image (pixel-perfect, preserves design, NOT editable). 'native' is opt-in for text-only export (selectable text but design is NOT preserved — looks broken). For true editable PPTX with shapes/colors, use a different tool.

  • scalenumber

    Device scale 1-6 (default: 4)

  • selectorstring

    Slide selector (default: .slide)

  • slideRangeany[]

    Render slides N-M, 1-indexed

  • webpQualitynumber

    WebP quality 0-100 (default: 95)

  • widthnumber

    Width px (default: 540)

Похожие MCP-сервера

FileToPDF/filetopdf-mcp

FileToPDF/filetopdf-mcp

MCP сервер для конвертации файлов, HTML и Markdown в PDF через естественный язык. Поддерживает DOCX, XLSX, PPTX, изображения и веб-страницы. Использует API FileToPDF (бесплатный ключ на 10 конверсий без регистрации). Подходит для создания счетов, отчетов и документации в любом MCP-клиенте (Claude...

TypeScript2
linxule/mineru-mcp

linxule/mineru-mcp

MCP сервер для парсинга документов через API MinerU. Извлекает текст, таблицы и формулы из PDF, DOC, изображений с точностью 90%. Пакетная обработка до 200 файлов, OCR на 109 языках. Полезен для интеграции парсинга в ИИ-ассистенты.

JavaScript9
vivekvells/mcp-pandoc

vivekvells/mcp-pandoc

MCP сервер для конвертации документов между форматами с помощью pandoc. Поддерживает преобразование markdown, HTML, DOCX, PDF и других форматов, сохраняя структуру и оформление. Полезен разработчикам, работающим с разметкой и документацией.

Python580
botmonster/image2svg-mcp

botmonster/image2svg-mcp

MCP-сервер для конвертации растровых изображений в SVG. Работает с PNG, JPG, WEBP, принимает base64 или URL, даёт полный контроль над параметрами векторизации. Идеален для автоматизации дизайна и п...

Python5
louis030195/gptzero-mcp

louis030195/gptzero-mcp

MCP сервер для обнаружения AI-сгенерированного текста через GPTZero. Помогает авторам и редакторам проверять тексты на искусственное происхождение, выдаёт оценку вероятности и детальный разбор. Раб...

JavaScript1
PSPDFKit/nutrient-document-engine-mcp-server

PSPDFKit/nutrient-document-engine-mcp-server

официальный

MCP-сервер для обработки документов на естественном языке. Подключает AI-агентов к извлечению текста, редактированию и рецензированию PDF, а также безопасному сокрытию конфиденциальных данных. Поле...

TypeScript62
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин