Recraft AI MCP Server
OfficialThe Recraft AI MCP Server integrates with Recraft AI to enable advanced raster and vector image manipulation, offering these capabilities:
Generate Images: Create raster/vector images from text prompts with customizable styles, sizes, and models
Image-to-Image Generation: Transform existing images using text prompts with controllable strength
Create Custom Styles: Develop unique visual styles from reference images
Vectorize Images: Convert raster images to scalable SVG format
Background Management: Remove or replace image backgrounds
Upscale Images: Enhance resolution using crisp (for sharpness) or creative (for detail refinement) methods
User Information: Access account details including remaining API credits
Enables cloning of repositories from GitHub to set up the MCP server from source.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Recraft AI MCP Servercreate a vector logo for a coffee shop called 'Brew Haven'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Deprecated
This project is deprecated. No further updates, bug fixes, or security patches will be published.
Please use the Recraft remote MCP server instead, available at https://mcp.recraft.ai/mcp, following the remote server documentation. It requires no local installation or API key — authentication is handled via OAuth in your browser. Please keep in mind that the remote MCP server uses a different credits model.
To migrate in Claude Code:
claude mcp add --transport http recraft https://mcp.recraft.ai/mcpTo migrate in Claude Desktop, replace this server's entry in your claude_desktop_config.json with:
{
"mcpServers": {
"recraft": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.recraft.ai/mcp"]
}
}
}For Cursor, VS Code, and other MCP clients, see the remote server documentation.
This is an MCP (Model Context Protocol) server integrating MCP clients with Recraft's raster- and vector-image operations:
raster and vector image generation
raster and vector image editing
creating custom styles and generating images in them
vectorization of raster images
background removal and replacement
upscaling of raster images
By connecting this MCP server to your MCP client you will be able to generate high-quality raster and vector images using Recraft, combining different tools.
Table of Contents
Setup
Related MCP server: Image MCP Server
Prerequisites
First of all, you will need a Recraft API key. To obtain it, register your account on Recraft; then go to your profile API page. Here you can buy API units (credits) and generate an API key.
You will need to have an MCP client installed, for example Claude Desktop.
Claude Desktop Extensions
If you are using Claude Desktop you can set up this server using Claude Desktop Extensions.
Download
mcp-recraft-server.dxtfrom the latest releaseDouble-click the file to open it with Claude Desktop
Click Install
Fill out the form
Enable the server
In the form you need to paste your Recraft API key obtained on your profile API page. You can also specify a local path for generated image storage or indicate that all results should be stored remotely.
In case of installation issues, check that you have the latest version of Claude Desktop.
Smithery
You can find this MCP server on Smithery. If this MCP is installed from Smithery, all generation results will be stored remotely. Use Desktop Extensions or Manual Setup to store generation results on your local device.
Manual Setup
You're going to need Node running on your machine so you can run npx or node commands in your terminal. If you don't have Node, you can install it from nodejs.org.
From NPM
Modify your claude_desktop_config.json file to add the following:
{
"mcpServers": {
"recraft": {
"command": "npx",
"args": [
"-y",
"@recraft-ai/mcp-recraft-server@latest"
],
"env": {
"RECRAFT_API_KEY": "<YOUR_RECRAFT_API_KEY>",
"IMAGE_STORAGE_DIRECTORY": "<YOUR_IMAGE_STORAGE_DIRECTORY>",
"RECRAFT_REMOTE_RESULTS_STORAGE": "<YOUR_REMOTE_RESULTS_STORAGE_INDICATOR>"
}
}
}
}From source
Clone this repository:
git clone https://github.com/recraft-ai/mcp-recraft-server.gitIn the directory with cloned repository run:
npm install
npm run buildModify your claude_desktop_config.json file to add the following:
{
"mcpServers": {
"recraft": {
"command": "node",
"args": ["<ABSOLUTE_PATH_TO_CLONED_DIRECTORY>/dist/index.js"],
"env": {
"RECRAFT_API_KEY": "<YOUR_RECRAFT_API_KEY>",
"IMAGE_STORAGE_DIRECTORY": "<YOUR_IMAGE_STORAGE_DIRECTORY>",
"RECRAFT_REMOTE_RESULTS_STORAGE": "<YOUR_REMOTE_RESULTS_STORAGE_INDICATOR>"
}
}
}
}You can specify these parameters:
RECRAFT_API_KEY: mandatory parameter, your Recraft API key.IMAGE_STORAGE_DIRECTORY: optional parameter, you can specify the directory in which all generated images will be stored. By default this directory is$HOME_DIR/.mcp-recraft-server. IfRECRAFT_REMOTE_RESULTS_STORAGE="1", the value of this parameter is ignored.RECRAFT_REMOTE_RESULTS_STORAGE: optional parameter, you can set the value to"1", in this case all generated images will be stored remotely and their URLs will be returned. Also,IMAGE_STORAGE_DIRECTORYwill be ignored in this case.
Tools
In this MCP you can use the following tools:
Tool Name | Description | Parameters | Price |
| Generates raster/vector images from prompt | - prompt - style - size - model - number of images | $0.04/$0.08 per raster/vector image |
| Creates a style from the list of images | - list of images - basic style | $0.04 |
| Vectorizes raster image | - image | $0.01 |
| Generates raster/vector images from image and prompt | - image - prompt - similarity strength - style - size - model - number of images | $0.04/$0.08 per raster/vector image |
| Removes background in image | - image | $0.01 |
| Generates new background in image from prompt | - image - prompt for background - style - size - model - number of images | $0.04/$0.08 per raster/vector image |
| Crisp upscale of image | - image | $0.004 |
| Creative upscale of image | - image | $0.25 |
| Get information about the user and left balance |
You can find the detailed explanation of tools, their parameters, and prices in Recraft API docs.
Available Tools
9 toolscreate_styleA
Create a style in Recraft from the set of style reference images. A style is extracted from the provided images and can be used in image generation tools. ID of the created style will be returned in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| style | Yes | Basic visual style in which the style will be created. | |
| imageURIs | Yes | Array of images to use as a style references. Each item can be a URL (starting with http:// or https://) or a file path (starting with file://). The length should be from 1 to 5. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that a style is extracted and an ID is returned, but does not mention any side effects like resource creation consumption or potential cost implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences, no filler. Clearly states purpose, outcome, and return value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple creation tool with two well-documented parameters and no output schema, the description covers the essential return information. Minor omission: no mention of possible errors or image requirements beyond format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema coverage is 100% with descriptions for both parameters. The description adds no additional meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a style from reference images, using a specific verb 'Create'. It distinguishes from sibling tools like generate_image which use styles but do not create them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. No mention of prerequisites, limitations, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
creative_upscaleA
Creative upscale of the input image using Recraft. This operation takes an input image and returns an upscaled image, boosting resolution with a focus on refining small details and faces. This version of upscale is expensive and slower than crisp upscale. Local path or URL to resulting image and its preview will be returned in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| imageURI | Yes | Image to use as an input. This can be a URL (starting with http:// or https://) or an absolute file path (starting with file://). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that the operation is expensive and slower, returns local path or URL and preview, and focuses on details and faces. Sufficient for a simple image upscaling tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences, each adding distinct information: purpose, comparison, and output. No unnecessary words, though the structure could be slightly more front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (single parameter, no output schema), the description adequately explains the input, output, and key differentiator. No critical gaps are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with a description for the single parameter imageURI. The description adds context that the input image is used and that it must be a URL or file path. This adds value beyond the schema, though the schema already covers the basics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it performs creative upscale of an input image using Recraft, focusing on refining small details and faces. It distinguishes itself from the sibling tool crisp_upscale by noting it is expensive and slower, making the purpose specific and differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly compares this tool to crisp_upscale, indicating when to use this version (for high-quality detail refinement) and notes that it is expensive and slower. However, it does not explicitly say when not to use it or provide alternative tools for other scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crisp_upscaleA
Crisp upscale of the input image using Recraft. This operation takes an input image and returns an upscaled image, making the image sharper and cleaner. This version of upscale is much cheaper and faster than creative upscale. Local path or URL to resulting image and its preview will be returned in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| imageURI | Yes | Image to use as an input. This can be a URL (starting with http:// or https://) or an absolute file path (starting with file://). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Describes the operation (input image, returns upscaled image) and mentions output type (local path or URL with preview). Does not disclose potential errors, side effects, or authorization requirements. Annotations would help but are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three efficient sentences with no waste. Front-loaded with main purpose and key differentiator.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers input, operation, and output format (local path or URL + preview). Lacks details on persistence or mutation, but adequate given simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter with full schema description. Tool description does not add new meaning beyond schema for the parameter. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool upscales an input image using Recraft, making it sharper. Distinguishes from creative_upscale by noting it is cheaper and faster.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides comparison with creative_upscale, indicating when to choose this version based on cost and speed. No explicit when-not-to-use but implied by the comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_imageA
Generate an image using Recraft 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. You can use styles to refine the image generation, and also to generate raster or vector images. Local paths or URLs to generated images and their previews will be returned in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Text prompt of the image you want to generate. Its length should be from 1 to 1024 characters. | |
| size | No | Image dimensions. Default is 1024x1024. | |
| style | No | Visual style to apply. Default is realistic_image. Use this parameter only if you want to refine the image generation. Mutually exclusive with styleID, you can't specify both of them. realistic_image, digital_illustration, vector_illustration are available in both models, but icon is available only for recraftv2, and logo_raster is available only for recraftv3. If you will provide a style that is not available for the specified model, generation will fail. Styles use-cases: - realistic_image: for realistic images, photos, portraits, landscapes, etc. Raster is generated. - digital_illustration: for digital illustrations, concept art, fantasy art, etc. Raster is generated. - vector_illustration: for vector illustrations, logos, icons, etc. Vector is generated. - icon: for icons, small graphics (only in recraftv2). Vector is generated - logo_raster: for graphic design, raster logos, posters, emblems, and badges (only in recraftv3). Raster is generated. | |
| substyle | No | Visual substyle to apply. Can be specified only with style to refine more specifically. If this parameter is not specified, model will decide on the final style. Use this parameter only if you want to refine the image generation more. No need to specify if you don't have any specific requirements. Note that each combination of model and style has their own list of available substyles: - recraftv3 with style realistic_image: b_and_w, enterprise, evening_light, faded_nostalgia, forest_life, hard_flash, hdr, motion_blur, mystic_naturalism, natural_light, natural_tones, organic_calm, real_life_glow, retro_realism, retro_snapshot, studio_portrait, urban_drama, village_realism, warm_folk - recraftv2 with style realistic_image: b_and_w, enterprise, hard_flash, hdr, motion_blur, natural_light, studio_portrait - recraftv3 with style digital_illustration: 2d_art_poster, 2d_art_poster_2, antiquarian, bold_fantasy, child_book, cover, crosshatch, digital_engraving, engraving_color, expressionism, freehand_details, grain, grain_20, graphic_intensity, hand_drawn, hand_drawn_outline, handmade_3d, hard_comics, infantile_sketch, long_shadow, modern_folk, multicolor, neon_calm, noir, nostalgic_pastel, outline_details, pastel_gradient, pastel_sketch, pixel_art, plastic, pop_art, pop_renaissance, seamless, street_art, tablet_sketch, urban_glow, urban_sketching, young_adult_book, young_adult_book_2 - recraftv2 with style digital_illustration: 2d_art_poster, 2d_art_poster_2, 3d, 80s, engraving_color, glow, grain, hand_drawn, hand_drawn_outline, handmade_3d, infantile_sketch, kawaii, pixel_art, plastic, psychedelic, seamless, voxel, watercolor - recraftv3 with style vector_illustration: bold_stroke, chemistry, colored_stencil, cosmics, cutout, depressive, editorial, emotional_flat, engraving, line_art, line_circuit, linocut, marker_outline, mosaic, naivector, roundish_flat, seamless, segmented_colors, sharp_contrast, thin, vector_photo, vivid_shapes - recraftv2 with style vector_illustration: cartoon, doodle_line_art, engraving, flat_2, kawaii, line_art, line_circuit, linocut, seamless - recraftv2 with style icon: broken_line, colored_outline, colored_shapes, colored_shapes_gradient, doodle_fill, doodle_offset_fill, offset_fill, outline, outline_gradient, pictogram - recraftv3 with style logo_raster: emblem_graffiti, emblem_pop_art, emblem_punk, emblem_stamp, emblem_vintage If you will provide a substyle that is not available for the specified model and style, generation will fail. | |
| styleID | No | ID of the style to apply. Mutually exclusive with style, you can't specify both of them. This ID can be the style ID from recraft.ai or some previously created custom style. | |
| model | No | Model version to use. Default is recraftv3. - recraftv3 is the latest model and should be used in most cases. - recraftv2 is the previous state model, it has a bit cheaper generation. Be accurate with compatibility of model with style if it is specified, otherwise generation will fail. | |
| numberOfImages | No | Number of images to generate. Should be from 1 to 6. Default is 1. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It mentions return of local paths/URLs but lacks details on error handling, rate limits, or mutability. Adequate for a generative tool but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise five-sentence paragraph that front-loads the main purpose. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the parameter count and schema coverage, the description is fairly complete, mentioning return format. However, it omits async/sync behavior and potential constraints beyond parameter compatibility.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with detailed descriptions. The description adds high-level context but mostly restates what is already in the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Generate an image using Recraft from a text prompt') and lists customizable aspects (size, style, model, number of images). It distinguishes from sibling tools like image_to_image or remove_background.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides guidance on default parameters and when to use optional parameters like style. However, it does not explicitly contrast with alternatives like image_to_image or explain when generation might fail.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_userA
Get information about the current Recraft API user (their email, name, and credit balance).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool returns user information (non-destructive), but lacks details about authentication requirements, rate limits, or error conditions. As a simple read operation, this is adequate but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the verb and resource. Every word is necessary and no information is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, but the description lists all returned fields (email, name, credit balance). For a simple retrieval of a single entity, this is complete and sufficient for an agent to understand the tool's output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters (schema coverage 100% vacuously). Per guidelines, 0 parameters yields a baseline of 4. The description does not need to add meaning as there are no parameters to clarify.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'current Recraft API user', and specifies the returned fields (email, name, credit balance). It is distinct from sibling tools which focus on generation and image manipulation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates when to use this tool (to get current user info) but does not explicitly mention when not to use it or provide alternatives. Given the sibling tools are unrelated, this is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
image_to_imageA
Generate an image using Recraft from an input image and a text prompt. You can specify the reference input image, style, model, and number of images to generate. You should provide the same style/substyle/styleID settings as were used for input image generation (if exists) if there are no specific requirements to change the style. Other parameters are recommended to keep default if you don't have any specific requirements on them. You can use styles to refine the image generation, and also to generate raster or vector images. Local paths or URLs to generated images and their previews will be returned in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| imageURI | Yes | Image to use as an input. This can be a URL (starting with http:// or https://) or an absolute file path (starting with file://). | |
| prompt | Yes | Text prompt of the image you want to generate. Its length should be from 1 to 1024 characters. | |
| strength | Yes | Strength of the image to image transformation, where 0 means almost similar to reference input image, 1 means almost no reference. | |
| style | No | Visual style to apply. Default is realistic_image. Use this parameter only if you want to refine the image generation. Mutually exclusive with styleID, you can't specify both of them. realistic_image, digital_illustration, vector_illustration are available in both models, but icon is available only for recraftv2, and logo_raster is available only for recraftv3. If you will provide a style that is not available for the specified model, generation will fail. Styles use-cases: - realistic_image: for realistic images, photos, portraits, landscapes, etc. Raster is generated. - digital_illustration: for digital illustrations, concept art, fantasy art, etc. Raster is generated. - vector_illustration: for vector illustrations, logos, icons, etc. Vector is generated. - icon: for icons, small graphics (only in recraftv2). Vector is generated - logo_raster: for graphic design, raster logos, posters, emblems, and badges (only in recraftv3). Raster is generated. You should provide the same style/substyle/styleID settings as were used for input image generation (if they exist) if there are no specific requirements to change the style in the resulting image. | |
| substyle | No | Visual substyle to apply. Can be specified only with style to refine more specifically. If this parameter is not specified, model will decide on the final style. Use this parameter only if you want to refine the image generation more. No need to specify if you don't have any specific requirements. Note that each combination of model and style has their own list of available substyles: - recraftv3 with style realistic_image: b_and_w, enterprise, evening_light, faded_nostalgia, forest_life, hard_flash, hdr, motion_blur, mystic_naturalism, natural_light, natural_tones, organic_calm, real_life_glow, retro_realism, retro_snapshot, studio_portrait, urban_drama, village_realism, warm_folk - recraftv2 with style realistic_image: b_and_w, enterprise, hard_flash, hdr, motion_blur, natural_light, studio_portrait - recraftv3 with style digital_illustration: 2d_art_poster, 2d_art_poster_2, antiquarian, bold_fantasy, child_book, cover, crosshatch, digital_engraving, engraving_color, expressionism, freehand_details, grain, grain_20, graphic_intensity, hand_drawn, hand_drawn_outline, handmade_3d, hard_comics, infantile_sketch, long_shadow, modern_folk, multicolor, neon_calm, noir, nostalgic_pastel, outline_details, pastel_gradient, pastel_sketch, pixel_art, plastic, pop_art, pop_renaissance, seamless, street_art, tablet_sketch, urban_glow, urban_sketching, young_adult_book, young_adult_book_2 - recraftv2 with style digital_illustration: 2d_art_poster, 2d_art_poster_2, 3d, 80s, engraving_color, glow, grain, hand_drawn, hand_drawn_outline, handmade_3d, infantile_sketch, kawaii, pixel_art, plastic, psychedelic, seamless, voxel, watercolor - recraftv3 with style vector_illustration: bold_stroke, chemistry, colored_stencil, cosmics, cutout, depressive, editorial, emotional_flat, engraving, line_art, line_circuit, linocut, marker_outline, mosaic, naivector, roundish_flat, seamless, segmented_colors, sharp_contrast, thin, vector_photo, vivid_shapes - recraftv2 with style vector_illustration: cartoon, doodle_line_art, engraving, flat_2, kawaii, line_art, line_circuit, linocut, seamless - recraftv2 with style icon: broken_line, colored_outline, colored_shapes, colored_shapes_gradient, doodle_fill, doodle_offset_fill, offset_fill, outline, outline_gradient, pictogram - recraftv3 with style logo_raster: emblem_graffiti, emblem_pop_art, emblem_punk, emblem_stamp, emblem_vintage If you will provide a substyle that is not available for the specified model and style, generation will fail. You should provide the same style/substyle/styleID settings as were used for input image generation (if they exist) if there are no specific requirements to change the style in the resulting image. | |
| styleID | No | ID of the style to apply. Mutually exclusive with style, you can't specify both of them. This ID can be the style ID from recraft.ai or some previously created custom style. You should provide the same style/substyle/styleID settings as were used for input image generation (if they exist) if there are no specific requirements to change the style in the resulting image. | |
| model | No | Model version to use. Default is recraftv3. - recraftv3 is the latest model and should be used in most cases. - recraftv2 is the previous state model, it has a bit cheaper generation. Be accurate with compatibility of model with style if it is specified, otherwise generation will fail. | |
| numberOfImages | No | Number of images to generate. Should be from 1 to 6. Default is 1. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses the return format (local paths/URLs), style compatibility constraints, and mutual exclusivity of style and styleID. It does not cover rate limits or auth, but covers key behavioral aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose with repeated phrases about using same style as input. While complex details are needed, it could be more concise without losing essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 8-parameter tool without output schema, the description covers parameter behavior, style validation, and expected outputs. It lacks error handling details but is largely complete for typical usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds substantial value: explains style/substyle use-cases, model compatibility, default values, and mutual exclusivity. This goes well beyond the schema's enums and descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's verb ('Generate an image') and resource ('from an input image and a text prompt'), distinguishing it from siblings like 'generate_image' (text-to-image) and other editing tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides guidance on when to use (e.g., when you have an input image) and recommends keeping defaults unless specific requirements. It does not explicitly contrast with siblings but implies the context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_backgroundA
Remove background in the input image using Recraft. This operation takes an input image and returns the same image with detected background removed. Raster image will be always returned. Local path or URL to resulting image and its preview will be returned in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| imageURI | Yes | Image to use as an input. This can be a URL (starting with http:// or https://) or an absolute file path (starting with file://). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It states the operation is non-destructive (removes background, returns same image) and notes that a raster image is always returned, along with preview availability.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three clear sentences with no wasted words. Front-loaded with purpose. Slightly verbose in the second sentence but overall concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description covers return value (local path/URL and preview). It does not detail edge cases or performance, but for a simple removal tool this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the description adds little beyond the schema. It mentions 'input image' but does not elaborate on format or constraints beyond what the parameter description already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'remove' and resource 'background in the input image'. It distinguishes from siblings like 'replace_background' by specifying it returns the same image with background removed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like 'replace_background' or 'image_to_image'. The description mentions 'using Recraft' but does not provide context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
replace_backgroundA
Generate an image using Recraft from an input image with its detected background replaced based on the prompt. You can specify the input image, style, model, and number of images to generate. You should provide the same style/substyle/styleID settings as were used for input image generation (if exists) if there are no specific requirements to change the style. Other parameters are recommended to keep default if you don't have any specific requirements on them. You can use styles to refine the image background generation, and also to generate raster or vector images. Local paths or URLs to generated images and their previews will be returned in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| imageURI | Yes | Image to use as an input. This can be a URL (starting with http:// or https://) or an absolute file path (starting with file://). | |
| prompt | Yes | Text prompt of the background areas that will be changed. Its length should be from 1 to 1024 characters. | |
| style | No | Visual style to apply. Default is realistic_image. Use this parameter only if you want to refine the image generation. Mutually exclusive with styleID, you can't specify both of them. realistic_image, digital_illustration, vector_illustration are available in both models, but icon is available only for recraftv2, and logo_raster is available only for recraftv3. If you will provide a style that is not available for the specified model, generation will fail. Styles use-cases: - realistic_image: for realistic images, photos, portraits, landscapes, etc. Raster is generated. - digital_illustration: for digital illustrations, concept art, fantasy art, etc. Raster is generated. - vector_illustration: for vector illustrations, logos, icons, etc. Vector is generated. - icon: for icons, small graphics (only in recraftv2). Vector is generated - logo_raster: for graphic design, raster logos, posters, emblems, and badges (only in recraftv3). Raster is generated. You should provide the same style/substyle/styleID settings as were used for input image generation (if they exist) if there are no specific requirements to change the style in the resulting image. | |
| substyle | No | Visual substyle to apply. Can be specified only with style to refine more specifically. If this parameter is not specified, model will decide on the final style. Use this parameter only if you want to refine the image generation more. No need to specify if you don't have any specific requirements. Note that each combination of model and style has their own list of available substyles: - recraftv3 with style realistic_image: b_and_w, enterprise, evening_light, faded_nostalgia, forest_life, hard_flash, hdr, motion_blur, mystic_naturalism, natural_light, natural_tones, organic_calm, real_life_glow, retro_realism, retro_snapshot, studio_portrait, urban_drama, village_realism, warm_folk - recraftv2 with style realistic_image: b_and_w, enterprise, hard_flash, hdr, motion_blur, natural_light, studio_portrait - recraftv3 with style digital_illustration: 2d_art_poster, 2d_art_poster_2, antiquarian, bold_fantasy, child_book, cover, crosshatch, digital_engraving, engraving_color, expressionism, freehand_details, grain, grain_20, graphic_intensity, hand_drawn, hand_drawn_outline, handmade_3d, hard_comics, infantile_sketch, long_shadow, modern_folk, multicolor, neon_calm, noir, nostalgic_pastel, outline_details, pastel_gradient, pastel_sketch, pixel_art, plastic, pop_art, pop_renaissance, seamless, street_art, tablet_sketch, urban_glow, urban_sketching, young_adult_book, young_adult_book_2 - recraftv2 with style digital_illustration: 2d_art_poster, 2d_art_poster_2, 3d, 80s, engraving_color, glow, grain, hand_drawn, hand_drawn_outline, handmade_3d, infantile_sketch, kawaii, pixel_art, plastic, psychedelic, seamless, voxel, watercolor - recraftv3 with style vector_illustration: bold_stroke, chemistry, colored_stencil, cosmics, cutout, depressive, editorial, emotional_flat, engraving, line_art, line_circuit, linocut, marker_outline, mosaic, naivector, roundish_flat, seamless, segmented_colors, sharp_contrast, thin, vector_photo, vivid_shapes - recraftv2 with style vector_illustration: cartoon, doodle_line_art, engraving, flat_2, kawaii, line_art, line_circuit, linocut, seamless - recraftv2 with style icon: broken_line, colored_outline, colored_shapes, colored_shapes_gradient, doodle_fill, doodle_offset_fill, offset_fill, outline, outline_gradient, pictogram - recraftv3 with style logo_raster: emblem_graffiti, emblem_pop_art, emblem_punk, emblem_stamp, emblem_vintage If you will provide a substyle that is not available for the specified model and style, generation will fail. You should provide the same style/substyle/styleID settings as were used for input image generation (if they exist) if there are no specific requirements to change the style in the resulting image. | |
| styleID | No | ID of the style to apply. Mutually exclusive with style, you can't specify both of them. This ID can be the style ID from recraft.ai or some previously created custom style. You should provide the same style/substyle/styleID settings as were used for input image generation (if they exist) if there are no specific requirements to change the style in the resulting image. | |
| numberOfImages | No | Number of images to generate. Should be from 1 to 6. Default is 1. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description carries full burden. Details input processing, style constraints, failure scenarios, and return format. No mention of side effects or auth, but acceptable for a generation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with core action upfront followed by detailed guidance. Slightly long but each sentence adds value. Could be trimmed slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters, no output schema, and no annotations, description comprehensively covers behavior, constraints, failure modes, and return values. Fully informs agent usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds valuable context: reusing style settings, mutual exclusivity of style and styleID, and recommendations to keep defaults. Adds meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate an image using Recraft from an input image with its detected background replaced based on the prompt.' This distinguishes it from siblings like remove_background and generate_image.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance on reusing style settings from input image and recommends keeping defaults. Lacks explicit when-not-to-use or comparison to alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vectorize_imageB
Vectorize an input image using Recraft. This operation takes an input image and returns a vector SVG image, close to it. Local path or URL to resulting image and its preview will be returned in the response.
| Name | Required | Description | Default |
|---|---|---|---|
| imageURI | Yes | Image to use as an input. This can be a URL (starting with http:// or https://) or an absolute file path (starting with file://). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains the output format (SVG) and response contents (path/URL and preview), providing basic behavioral insight. However, it omits details such as size limits, supported input formats, processing time, or any side effects. With no annotations, this is the sole source, so more would be helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, efficient and front-loaded with the core action. However, it could be slightly tighter by merging the second and third sentences. Overall, no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks details like input format restrictions, size limits, or output quality expectations. Compared to similar tools, it does not differentiate its use case. Given the tool's simplicity (1 param, no output schema), additional context would make it more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes imageURI thoroughly (URL or file protocol). The description does not add any additional meaning or constraints beyond what the schema provides. Schema coverage is 100%, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool vectorizes an image to SVG using Recraft. 'Vectorize' is a specific verb and the resource is an image. However, it does not distinguish from sibling tools like image_to_image or creative_upscale, which could cause ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool over alternatives. It does not mention prerequisites, exclusions, or context for choosing vectorize_image over other image-processing tools. The agent receives no hints about appropriate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v1.0.0- First observed
create_style - First observed
creative_upscale - First observed
crisp_upscale - First observed
generate_image - First observed
get_user - First observed
image_to_image - First observed
remove_background - First observed
replace_background - First observed
vectorize_image
TDQS
Scored across 9 tools
Each tool has a clearly distinct purpose: text-to-image, image-to-image, two upscales with different cost/quality, background removal/replacement, vectorization, style creation, and user info. No overlap or confusion.
All tool names follow a consistent verb_noun snake_case pattern (e.g., create_style, generate_image, remove_background). No deviations or mixed conventions.
With 9 tools, the server is well-scoped for an image generation and editing API. Each tool covers a necessary operation without unnecessary bloat or deficiency.
Core image generation and editing workflows are covered: text-to-image, image-to-image, upscaling, background manipulation, vectorization, and style creation. Minor gaps include lack of explicit editing operations like inpainting or rotation, but these are not essential for the server's stated purpose.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for NanoBanana AI image generation and editing
MCP server for Qwen Image 3 AI image generation
MCP server for Flux AI image generation
MCP server for Midjourney AI image generation and editing
Related MCP Servers
- FlicenseBqualityDmaintenanceAn advanced MCP server for Cline that leverages EverArt's AI models to generate vector and raster images, supporting flexible storage, multiple formats, and robust image generation capabilities.310-
- AlicenseCqualityCmaintenanceAn MCP server that provides AI image generation capabilities using OpenAI and Replicate APIs with support for customizable prompts and dimensions. It features specialized tools for generating square, landscape, and portrait images through simple natural language commands.531MIT
- AlicenseBqualityDmaintenanceAn MCP server that enables image generation using Replicate's Flux 1.1 Pro model. It provides a tool for creating visuals from text prompts with customizable settings for aspect ratio, output format, and quality.1MIT
- AlicenseAqualityDmaintenanceAn MCP server that provides AI image generation and editing capabilities using Google's Gemini 2.5 Flash Image API. It allows users to create new images from text, modify existing files, and perform iterative edits through natural language prompts.6380MIT