Wafrow Image Generation API MCP Server
Wafrow Wafrow is a highly scalable, real-time image personalization and marketing automation SaaS.
Что умеет
- List Templates Tool: Lists all image/banner templates for the authenticated organization. Returns template IDs and names. Use the returned IDs with pre_render_image or get_lazy_render_url.
- Pre Render Image Tool: Immediately renders an image for a template with optional personalization overrides. Returns the image as a base64-encoded WebP (or PDF). Use this when you need the rendered ima
- Get Lazy Render Url Tool: Constructs a lazy-render image URL for embedding in emails or web pages. The image is generated on first open, not at send time — ideal for large email campaigns. Pass either
Какие данные видит
Нужен ли аккаунт
Нужен API-ключ из настроек сервиса
Wafrow
Wafrow is a highly scalable, real-time image personalization and marketing automation SaaS. It provides server-side dynamic rendering powered by ImageMagick and provides a built-in Model Context Protocol (MCP) server for seamless AI integration.
Key Links
- Main Website: https://wafrow.com
- Documentation Hub: https://wafrow.com/documentation
- Interactive API Reference: https://wafrow.com/docs/api
- MCP Server Endpoint: https://wafrow.com/mcp/wafrow
Core Features
- Real-time Image Rendering: Dynamic server-side rendering via the
/i/{template_id}/{campaign_id?}endpoint. - Shopify OAuth Integration: Native synchronization of Shopify stores. Canvas layouts translate Shopify Liquid variables automatically (e.g.
{{ product.title }},{{ product.price | money }}). - Multi-CRM Personalization: Tailored for email/SMS outreach with Klaviyo, HubSpot, Zapier, Apollo.io, and Clay.
- Model Context Protocol (MCP): Any AI agent can connect to the
/mcp/wafrowendpoint to dynamically generate and customize images.
14-Day Free Trial & Agent Onboarding
- Automatic Trial: Wafrow grants a free, full-access 14-day trial automatically to all new user accounts from the second they register. No credit cards are required.
- Onboarding Handshake: AI agents acting on a user's behalf can guide the user to sign up at
https://wafrow.com/login, retrieve their token athttps://wafrow.com/dashboard/settings, and paste it back to authorize tool execution.
1. Model Context Protocol (MCP) Server
Wafrow features a built-in MCP server that allows AI agents to interact with Wafrow's templates and render personalized banners as native tools.
- Endpoint:
POST https://wafrow.com/mcp/wafrow - Authentication: Bearer token (Sanctum personal access token)
- Headers:
Authorization: BearerandContent-Type: application/json
Available Tools
list_templates: Returns a list of all templates owned by the authenticated organization.- Inputs:
page(optional integer)
- Inputs:
create_template: Creates a brand new Fabric.js-compatible image/banner template.- Inputs:
name(required string),layer_information(required object containing canvas width, height, background, quality, format, and objects array)
- Inputs:
pre_render_image: Instantly renders a template and returns the image as a base64 string.- Inputs:
template_id(required UUID),personalize(optional object representing layer property overrides)
- Inputs:
get_lazy_render_url: Constructs a persistent, public-facing URL for lazy-rendering dynamic images in email `` tags.- Inputs:
template_id(required UUID),campaign_id(optional saved variant UUID),personalize(optional inline layer overrides object)
- Inputs:
save_variant: Saves a preset of personalization overrides for a template and returns a persistentcampaign_id.- Inputs:
template_id(required UUID),personalize(required object)
- Inputs:
2. REST API Reference
All REST endpoints require a Bearer token via Sanctum, generated at /createUserToken.
Get Active User Templates
- Endpoint:
GET https://wafrow.com/listUserImages - Response: JSON list of templates with their metadata.
Serve Dynamic / Personalized Variant
Public-facing, fast, cached endpoint for email/web embedding. No authentication required.
- Endpoint:
GET https://wafrow.com/i/{template_id} - Query Parameters:
personalize[layer_name][text]: Override text of a specific layer.personalize[layer_name][fill]: Override color (hex) of a specific layer.personalize[layer_name][src]: Override image source URL of an image layer.personalize[layer_name][opacity]: Set layer opacity.
- Saved Variant Endpoint:
GET https://wafrow.com/i/{template_id}/{campaign_id}(renders pre-saved campaign variant instantly). - Rate Limits: 40 requests/minute per IP.
3. Quick Integration Examples
Embedding in Klaviyo or HubSpot HTML Emails
To personalize an image banner for each recipient in a mailing list:
Python: Generate Personalized Variant via REST
import requests
url = "https://wafrow.com/api/i/a1e11909-4fc2-4db3-bb36-62e340eab823"
headers = {"Authorization": "Bearer YOUR_SANCTUM_TOKEN"}
payload = {
"personalize": {
"product_title": {"text": "Premium Wireless Headset"},
"product_price": {"text": "$99.99", "fill": "#10b981"},
"bg": {"fill": "#0f172a"}
}
}
response = requests.post(url, json=payload, headers=headers)
print("Persistent Image URL:", response.text)
Как подключить
Как подключить Wafrow Image Generation API MCP Server к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://image-generation-api--wafrow.run.tools
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить Wafrow Image Generation API MCP Server к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://image-generation-api--wafrow.run.tools
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить Wafrow Image Generation API MCP Server к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://image-generation-api--wafrow.run.tools
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (5)
Технические названия из tools/list. Нужны только разработчикам.
| list-templates-tool | Lists all image/banner templates for the authenticated organization. Returns template IDs and names. Use the returned IDs with pre_render_image or get_lazy_render_url. |
| pre-render-image-tool | Immediately renders an image for a template with optional personalization overrides. Returns the image as a base64-encoded WebP (or PDF). Use this when you need the rendered image now rather than a URL for later. For bulk email campaigns, prefer get_lazy_render_url instead. |
| get-lazy-render-url-tool | Constructs a lazy-render image URL for embedding in emails or web pages. The image is generated on first open, not at send time — ideal for large email campaigns. Pass either a campaign_id (from save_variant) or inline personalize overrides. The URL is public and requires no authentication. |
| save-variant-tool | Saves a personalization preset (campaign) for a template. Returns a campaign ID that can be used with get_lazy_render_url to generate a persistent, shareable image URL. Use this for bulk campaigns where many recipients share the same personalized variant. |
| create-template-tool | Creates a brand new Fabric.js-compatible image/banner template for the authenticated organization. The template is stored in the database and can be used immediately with pre_render_image or get_lazy_render_url. |