Recraft MCP logo

Recraft MCP

Generate and edit visual assets, manage custom styles, and inspect account information through Recraft’s provider-hosted MCP server.

22 actions Integration catalog
Request access
Connect Recraft MCP once you're in Boring.
01 · WHAT THE AGENT CAN DO

Actions

Every capability is a discrete, logged action the agent calls by name — scoped to what you authorize and recorded in the run trace.

Call agentRECRAFT_MCP_CALL_AGENT
Talk to Recraft's Design Agent in a chat. This is not just any agent — it is The Design Agent, and its superpower is turning a brief — a plain description of a digital product — into a strong, consistent and genuinely amazing set of design assets. Building a coherent look normally means juggling separate tools — one for the logo, another for icons, another for social assets — and without a designer to hold it together the result feels like five apps that have never met. The Design Agent does it all at once: describe the product and it produces a full, consistent set of design assets — a logo, a colour palette, typography, an app icon and social assets among them — and can save them as a reusable Design Kit so every asset pulled from it later stays consistent. It is built for digital products: apps, websites and similar projects. Reach for it whenever the user needs a whole coherent look rather than a single one-off image. This is a two-way, turn-based conversation, not a one-shot request: you send a text message (optionally with input images) and receive the agent's combined reply, which may include images the agent generates. The agent often drives the exchange itself — instead of a final result it may reply with a clarifying question or a set of choices (for example confirming it should proceed, asking for visual references or a preferred direction, or asking which option to develop). When it does, relay that reply to the end user verbatim, collect their answer, and send it back in a follow-up call — do not answer on the user's behalf or skip ahead. A single task can take several turns before the agent produces its final design assets. Omit chat_id to start a new conversation; the response contains the chat_id — pass it in every subsequent call to continue the same conversation with full context. Images flow both ways. To send images to the agent, provide input_image_urls, a list of publicly accessible HTTP or HTTPS URLs (PNG, JPEG, WEBP or SVG); if you only have local image files, call request_upload_url first, PUT the image bytes to the returned upload URL, and pass the resulting image_url values here. Any images the agent generates come back in the response. The response contains the agent's text answer, the chat_id, URLs of any generated images with WEBP previews as base64 encoded bytes, and the credits this call used.
Create styleRECRAFT_MCP_CREATE_STYLE
Create a custom style from one or more reference images. Provide images via URLs or base64-encoded data. The `input_style` parameter defines the base style type. The style is saved to the user's Recraft account, so it is also available in the Recraft app. Returns the new style ID, which you can pass as `input_style_id` to the generation tools. Creating a style is free.
Creative upscaleRECRAFT_MCP_CREATIVE_UPSCALE
Input must have at most 4194304 pixels (4 MP), sides from 256 to 4096 pixels, and at most 48 MiB of raster data. Larger inputs are rejected before generation or billing. Upscale an image using creative AI enhancement. Provide a publicly accessible HTTP or HTTPS URL as `input_image_url`. If you only have a local image file with no public URL, call `request_upload_url` first, PUT the image bytes to the returned upload URL, and pass the resulting `image_url` here. Returns the processed image as a URL and a preview in WEBP format as a base64 encoded bytes.
Crisp upscaleRECRAFT_MCP_CRISP_UPSCALE
Input must have at most 4194304 pixels (4 MP), sides from 32 to 4096 pixels, and at most 48 MiB of raster data. Upscale an image with sharp, crisp quality enhancement. Provide a publicly accessible HTTP or HTTPS URL as `input_image_url`. If you only have a local image file with no public URL, call `request_upload_url` first, PUT the image bytes to the returned upload URL, and pass the resulting `image_url` here. Returns the processed image as a URL and a preview in WEBP format as a base64 encoded bytes.
Delete styleRECRAFT_MCP_DELETE_STYLE
Delete a custom style by its `style_id`. This cannot be undone.
Erase regionRECRAFT_MCP_ERASE_REGION
Erase a masked region from an image, filling it with content-aware background. Provide the source image as `input_image_url` and a mask image as `mask_image_url`, both publicly accessible HTTP or HTTPS URLs. If you only have local image files with no public URLs, call `request_upload_url` for each, PUT the image bytes to each returned upload URL, and pass the resulting `image_url` values here. Returns the processed image as a URL and a preview in WEBP format as a base64 encoded bytes.
Generate backgroundRECRAFT_MCP_GENERATE_BACKGROUND
Generate a background for a masked region of an image based on a text prompt. Provide the source image as `input_image_url` and a mask image as `mask_image_url`, both publicly accessible HTTP or HTTPS URLs. If you only have local image files with no public URLs, call `request_upload_url` for each, PUT the image bytes to each returned upload URL, and pass the resulting `image_url` values here. Returns an image_urls array and previews in WEBP format as a base64 encoded bytes.
Generate imageRECRAFT_MCP_GENERATE_IMAGE
Generate an image from a text prompt. You can specify the image size, style, model, and number of images to generate. You don't need to change default parameters if you don't have any specific requirements. Recraft has both raster and vector models. Recraft models come in a `_raster` and a `_vector` variant: a raster model (e.g. recraftv4_1_raster) produces a raster image (PNG/WEBP), while a vector model (e.g. recraftv4_1_vector) produces a true SVG vector file. Whenever the user asks for a vector, an SVG, a scalable logo, or an icon, pass the `_vector` variant of the model — that is the reliable way to get an SVG. Use the `_raster` variant for photos and raster artwork. recraftv4_1_flash_raster has no vector variant. See the `model` parameter for the full list of variants. Besides Recraft models, this tool supports external models such as nano_banana_2, nano_banana_pro, gpt_image_2_medium or bytedance_seedreamv5_pro (see the `model` parameter for the full list); availability depends on your subscription and is validated server-side. External models produce raster images only: they have no `_vector` variants, cannot generate SVG, and do not support custom styles. Recraft also has a large library of built-in "basic styles" beyond the default models. Call the `list_basic_styles` tool to explore the full variety of available styles, then apply a chosen one via its `input_style_id`. To apply a basic or custom style, pass its `input_style_id` (see list_basic_styles, list_styles and create_style) and omit `input_style`: the image type is taken from the style. URLs to generated images, their previews in WEBP format as base64 encoded bytes and the credits the call used will be returned in the response.
Get styleRECRAFT_MCP_GET_STYLE
Get details of a specific style by its `style_id`: its name, type, model and privacy.
Get userRECRAFT_MCP_GET_USER
Get information about the current user (ID, email, name, and the remaining credits balance on the account).
Image editRECRAFT_MCP_IMAGE_EDIT
Edit one or more input images according to a text prompt, producing new image(s). Use this tool for instruction-driven editing: describe the change you want (for example "add a hat", "make it winter", "replace the text with SALE", or "combine these images") and the model rewrites the image to follow the prompt. It can take several input images at once and can use external models. Choose image_edit when you want the model to follow explicit editing instructions or to use an external model; choose image_to_image instead when you want a strength-controlled stylistic transformation of a single image rather than a specific edit. Provide the source images as `input_image_urls` — a list of publicly accessible HTTP or HTTPS URLs (PNG, JPEG, WEBP or SVG). If you only have local image files with no public URL, call `request_upload_url` for each, PUT the image bytes to the returned upload URL, and pass the resulting `image_url` values here. You can specify the image size, model, and number of images to generate. You don't need to change default parameters if you don't have any specific requirements. This tool works only with external models; Recraft models are not supported for instruction-driven editing. External models produce raster images only: they cannot generate SVG and do not support custom styles. The default model is nano_banana_2; others include nano_banana_pro, nano_banana_2p1, gpt_image_2_medium, gpt_image_2p5_flare and bytedance_seedreamv5_pro (see the `model` parameter for the full list). Availability depends on your subscription and is validated server-side. If the image size is not specified, the output size follows the first input image. URLs to the edited images, their previews in WEBP format as base64 encoded bytes and the credits the call used will be returned in the response.
Image to imageRECRAFT_MCP_IMAGE_TO_IMAGE
Transform an existing image based on a text prompt. The strength parameter controls how much the image is transformed (0.0 to 1.0). Provide a publicly accessible HTTP or HTTPS URL as `input_image_url`. Use this tool for a strength-controlled stylistic transformation of a single image, where the prompt and style reshape the whole image and `strength` sets how far the result moves from the original. For instruction-driven edits (changing or adding specific elements, editing several images together, or using an external model such as nano_banana_pro or flux1_kontext_pro), use the image_edit tool instead. If you only have a local image file with no public URL, call `request_upload_url` first, PUT the image bytes to the returned upload URL, and pass the resulting `image_url` here. Returns an image_urls array and previews in WEBP format as a base64 encoded bytes.
Inpaint imageRECRAFT_MCP_INPAINT_IMAGE
Fill in a masked region of an image based on a text prompt. Provide the source image as `input_image_url` and a mask image as `mask_image_url`, both publicly accessible HTTP or HTTPS URLs. If you only have local image files with no public URLs, call `request_upload_url` for each, PUT the image bytes to each returned upload URL, and pass the resulting `image_url` values here. Returns an image_urls array and previews in WEBP format as a base64 encoded bytes.
List basic stylesRECRAFT_MCP_LIST_BASIC_STYLES
Lists the built-in styles configured in this environment; coverage differs by model. The returned model is a compatible generation identifier. Passing input_style_id can select an older model instead of the default v4.1. List Recraft's library of built-in "basic styles" — a large, curated collection of visual styles for image generation that goes well beyond the default models. Call this to explore the full variety of available styles and pick the one that best matches the user's request. Returns a list of styles, each with a `style_name`, its `input_style_id`, its type and the model it belongs to. Apply a chosen style by passing its `input_style_id` to the generation tools (generate_image, image_to_image, etc.); omit `model` to use the style's own model.
List stylesRECRAFT_MCP_LIST_STYLES
List all custom styles created by the current user. Returns a list of style IDs with their names, types (the image type generations with the style produce), models and privacy. Pass a style ID as `input_style_id` to the generation tools.
Remove backgroundRECRAFT_MCP_REMOVE_BACKGROUND
Remove the background from an image. Provide a publicly accessible HTTP or HTTPS URL as `input_image_url`. If you only have a local image file with no public URL, call `request_upload_url` first, PUT the image bytes to the returned upload URL, and pass the resulting `image_url` here. Returns the processed image with background removed as a URL and a preview in WEBP format as a base64 encoded bytes.
Replace backgroundRECRAFT_MCP_REPLACE_BACKGROUND
Replace the background of an image based on a text prompt. Provide a publicly accessible HTTP or HTTPS URL as `input_image_url`. If you only have a local image file with no public URL, call `request_upload_url` first, PUT the image bytes to the returned upload URL, and pass the resulting `image_url` here. Returns an image_urls array and previews in WEBP format as a base64 encoded bytes.
Request upload urlRECRAFT_MCP_REQUEST_UPLOAD_URL
Issue an upload URL for a direct image upload. Use this when the user provides a local image file (or raw image data) that has no public URL of its own. If the user already provided a public HTTPS image URL, pass that URL directly to the image tools instead — do NOT route it through this step. This tool takes no parameters and returns an `upload_url` plus a ready-to-run `curl` command. PUT the raw image bytes directly to `upload_url` (no base64, no encoding) with a `Content-Type` header matching the image MIME type (image/png, image/jpeg or image/webp), e.g.: curl -X PUT -H 'Content-Type: image/png' --data-binary @image.png '<upload_url>' The PUT response is JSON containing `image_url`. Use that `image_url` as `input_image_url` (or `mask_image_url`) when calling any image tool such as image_to_image, remove_background, inpaint_image, etc. The link is reusable for up to 15 minutes while session authorization remains valid; request a new link after a 401 response.
Subscription plansRECRAFT_MCP_SUBSCRIPTION_PLANS
List available Recraft subscription plans with their plan IDs, credits granted per refill period, and prices.
Suggest modelRECRAFT_MCP_SUGGEST_MODEL
Suggest a supported image generation or instruction-editing model for a given user request. Returns JSON with model_suggestion (an exact supported model identifier) and reason. Covers Recraft generation and external instruction-editing models. Chooses a Recraft `_vector` model for SVG output and an image_edit model for instruction editing; honors an explicitly requested supported model.
Variate imageRECRAFT_MCP_VARIATE_IMAGE
Generate variations of an existing image. Set the required image_size parameter to an output aspect ratio. Provide a publicly accessible HTTP or HTTPS URL as `input_image_url`. If you only have a local image file with no public URL, call `request_upload_url` first, PUT the image bytes to the returned upload URL, and pass the resulting `image_url` here. Returns an image_urls array and previews in WEBP format as a base64 encoded bytes.
Vectorize imageRECRAFT_MCP_VECTORIZE_IMAGE
Convert a raster image to a vector format. Provide a publicly accessible HTTP or HTTPS URL as `input_image_url`. If you only have a local image file with no public URL, call `request_upload_url` first, PUT the image bytes to the returned upload URL, and pass the resulting `image_url` here. Returns the processed image as a URL and a preview in WEBP format as a base64 encoded bytes.