# Recraft

```json
{
  "name": "Recraft",
  "slug": "recraft",
  "url": "https://composio.dev/toolkits/recraft",
  "markdown_url": "https://composio.dev/toolkits/recraft.md",
  "logo_url": "https://logos.composio.dev/api/recraft",
  "categories": [
    "design & creative tools"
  ],
  "is_composio_managed": false,
  "updated_at": "2026-10-25T05:35:19.236Z"
}
```

![Recraft logo](https://logos.composio.dev/api/recraft)

## Description

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Recraft MCP or direct API to generate images, transform artwork, upscale visuals, and vectorize designs through natural language.

## Summary

Recraft is an AI image platform for generating, transforming, upscaling, and vectorizing visuals.
It helps teams create polished raster and vector artwork through a native API.

## Categories

- design & creative tools

## Toolkit Details

- Tools: 22

## Images

- Logo: https://logos.composio.dev/api/recraft

## Authentication

- **Api Key**
  - Type: `api_key`
  - Description: Api Key authentication for Recraft.
  - Setup:
    - Configure Api Key credentials for Recraft.
    - Use the credentials when creating an auth config in Composio.

## Suggested Prompts

- Generate a minimalist logo for my coffee shop
- Upscale this product photo for an online store
- Vectorize this hand-drawn leaf illustration

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `RECRAFT_CREATE_STYLE` | Create Custom Style | Create a private reusable style in the connected Recraft account from one to ten bounded reference images, existing V2/V3 styles, or both. The paid request is sent once and is not automatically retried. |
| `RECRAFT_CREATIVE_UPSCALE_IMAGE` | Creative Upscale Image | Increase one raster image's resolution while regenerating fine details and faces. Returns one temporary public signed URL. This paid operation is sent once without automatic HTTP retries. |
| `RECRAFT_CRISP_UPSCALE_IMAGE` | Crisp Upscale Image | Increase one raster image's resolution while sharpening it without promising a specific scale factor, then return a public signed URL that normally expires in about 24 hours. This duration is not guaranteed; download durable results promptly. The paid operation is sent once and is not automatically retried. |
| `RECRAFT_DELETE_STYLE` | Delete Custom Style | Permanently delete one style by UUID from the connected Recraft account. The destructive request is sent once and is not automatically retried. |
| `RECRAFT_ENHANCE_IMAGE` | Enhance Image Details | Re-render one raster image with Recraft V4.1 Pro for sharper texture and detail while retaining its composition. Returns one temporary public URL; the paid operation is sent once without automatic HTTP retries. |
| `RECRAFT_ENHANCE_PROMPT` | Enhance Prompt | Expand a text prompt with visual context, style cues, and composition details. This text-only operation returns an enhanced prompt, not an image. It is a paid 10-unit request sent once without automatic HTTP retries. |
| `RECRAFT_ERASE_IMAGE_REGION` | Erase Image Region | Erase the pure-white area of a black-and-white mask from one raster or opaque untrusted SVG image. Returns one temporary public URL; the paid operation is sent once without automatic HTTP retries. |
| `RECRAFT_GENERATE_IMAGE` | Generate Image | Generate one to six raster or vector images with any documented Recraft model, returning public signed URLs that normally expire in about 24 hours. This duration is not guaranteed; download durable results promptly and treat vector SVG output as untrusted. Use this model-selectable endpoint when output type is chosen dynamically; use Generate Raster Image or Generate Vector Image when the provider must enforce one output type. The paid operation is sent once and is not automatically retried. |
| `RECRAFT_GENERATE_IMAGE_BACKGROUND` | Generate Image Background | Generate a new background in the pure-white area of a mask while preserving black areas. Produces one to six V3 raster or untrusted V3 SVG results in one paid, non-retried request. |
| `RECRAFT_GENERATE_RASTER_IMAGE` | Generate Raster Image | Generate one to six raster images with a documented raster model and return public signed URLs through Recraft's raster-only endpoint, which rejects vector output. Use this when raster output must be provider-enforced. The paid operation is sent once and is not automatically retried. |
| `RECRAFT_GENERATE_VECTOR_IMAGE` | Generate Vector Image | Generate one to six SVG images with a documented vector model and return public signed URLs through Recraft's vector-only endpoint, which rejects raster output. Use this when SVG output must be provider-enforced. Treat the SVG as untrusted active content. The paid operation is sent once and is not automatically retried. |
| `RECRAFT_GET_CURRENT_USER` | Get Current User | Get the connected Recraft user's identity and remaining API Units balance. This endpoint is self-only and cannot inspect another user. |
| `RECRAFT_GET_STYLE` | Get Custom Style | Get one connected-account Recraft style by UUID. |
| `RECRAFT_IMAGE_TO_IMAGE` | Transform Image From Prompt | Create one to six new images from a source image and prompt with controlled similarity. Supports Recraft V3, V4, and V4.1 but not V2, Flash, dedicated Styles, or external models. SVG inputs and outputs are untrusted. This paid operation is sent once and is not automatically retried. |
| `RECRAFT_INPAINT_IMAGE` | Inpaint Image | Regenerate the pure-white masked area of one image from a prompt, keeping black areas unchanged. Produces one to six V3 raster or untrusted V3 SVG results in one paid, non-retried request. |
| `RECRAFT_LIST_BASIC_STYLES` | List Basic Styles | List Recraft's built-in styles and the compatible model for each. The provider returns the complete list without pagination. |
| `RECRAFT_LIST_STYLES` | List Custom Styles | List all custom styles created in the connected Recraft account. The provider returns the complete list without pagination. |
| `RECRAFT_OUTPAINT_IMAGE` | Outpaint Image | Extend one image beyond its borders using a prompt and an output size, side expansion, or zoom-out percentage. Produces one to six V3 raster or untrusted V3 SVG results in one paid, non-retried request. |
| `RECRAFT_REMOVE_IMAGE_BACKGROUND` | Remove Image Background | Remove the background from one raster or SVG image and return a public signed result URL that normally expires in about 24 hours. This duration is not guaranteed; download durable results promptly. SVG remains untrusted. The paid operation is sent once and is not automatically retried. |
| `RECRAFT_REPLACE_IMAGE_BACKGROUND` | Replace Image Background | Detect and redraw one image's background from a prompt. Produces one to six V3 raster or untrusted V3 SVG results in one paid request without automatic HTTP retries. |
| `RECRAFT_VARIATE_IMAGE` | Remix Image | Create one to six prompt-free variations of an image at a required supported aspect ratio or model-compatible exact size. Accepts current Recraft models from the official API, but no external models; SVG content is untrusted. This paid operation is sent once and is not automatically retried. |
| `RECRAFT_VECTORIZE_IMAGE` | Vectorize Image | Convert one PNG, JPEG, or WebP raster image into an editable SVG and return a public signed URL that normally expires in about 24 hours. This duration is not guaranteed; download durable results promptly and treat the SVG as untrusted. The paid operation is sent once and is not automatically retried. |

## Supported Triggers

None listed.

## Installation and MCP Setup

### Path 1: SDK Installation

#### Path 1, Step 1: Install Composio

Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
```python
pip install composio composio_openai openai
```

```typescript
npm install @composio/core @composio/openai openai
```

#### Path 1, Step 2: Create a Composio session

Initialize Composio with the OpenAI Responses provider and create a session scoped to Recraft
```python
import json
from openai import OpenAI
from composio import Composio
from composio_openai import OpenAIResponsesProvider

composio = Composio(provider=OpenAIResponsesProvider())
client = OpenAI()

session = composio.create(user_id="your-user-id", toolkits=["recraft"])
tools = session.tools()
```

```typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["recraft"] });
const tools = await session.tools();
```

#### Path 1, Step 3: Run Recraft tools with your agent

Send a request, execute the Recraft tool calls through the session, and print the final answer
```python
response = client.responses.create(
    model="gpt-5.6-sol",
    tools=tools,
    input=[{"role": "user", "content": "Generate a flat vector illustration of a red fox reading under a tree, using a warm autumn color palette"}],
)

while True:
    tool_calls = [o for o in response.output if o.type == "function_call"]
    if not tool_calls:
        break
    results = composio.provider.handle_tool_calls(response=response, session=session)
    response = client.responses.create(
        model="gpt-5.6-sol",
        tools=tools,
        previous_response_id=response.id,
        input=[
            {"type": "function_call_output", "call_id": call.call_id, "output": json.dumps(results[i])}
            for i, call in enumerate(tool_calls)
        ],
    )

print(response.output_text)
```

```typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "Generate a flat vector illustration of a red fox reading under a tree, using a warm autumn color palette" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
```

### Path 2: MCP Server Setup

#### Path 2, Step 1: Install Composio

Install the Composio SDK and your agent framework
```python
pip install composio claude-agent-sdk
```

```typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
```

#### Path 2, Step 2: Create a session with MCP enabled

Create a session scoped to Recraft and read its MCP URL and headers
```python
from composio import Composio

composio = Composio()
session = composio.create(user_id="your-user-id", toolkits=["recraft"], mcp=True)
```

```typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["recraft"],
  mcp: true,
});
```

#### Path 2, Step 3: Connect your agent to the MCP server

Pass the session's MCP URL and headers to your agent and run a Recraft request
```python
import asyncio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions, AssistantMessage, TextBlock

options = ClaudeAgentOptions(
    mcp_servers={
        "composio": {
            "type": "http",
            "url": session.mcp.url,
            "headers": session.mcp.headers,
        }
    },
    system_prompt="You are a helpful assistant with access to Recraft tools.",
    tools=[],
    allowed_tools=["mcp__composio__*"],
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query("Generate a flat vector illustration of a red fox reading under a tree, using a warm autumn color palette")
        async for message in client.receive_response():
            if isinstance(message, AssistantMessage):
                for block in message.content:
                    if isinstance(block, TextBlock):
                        print(block.text)

asyncio.run(main())
```

```typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "Generate a flat vector illustration of a red fox reading under a tree, using a warm autumn color palette",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
```

## Why Use Composio?

### 1. AI Native Recraft Integration

- Supports both Recraft MCP and direct API based integrations
- Structured, LLM-friendly schemas for reliable image generation and editing
- Rich coverage for generating, transforming, upscaling, vectorizing, and managing image styles

### 2. Managed Auth

- Securely stores and applies your Recraft API key to tool calls
- Central place to manage, scope, and revoke Recraft access
- Per user and per environment credentials instead of hard-coded keys

### 3. Agent Optimized Design

- Tools are tuned using real error and success rates to improve reliability over time
- Comprehensive execution logs so you always know what ran, when, and on whose behalf

### 4. Enterprise Grade Security

- Fine-grained RBAC so you control which agents and users can access Recraft
- Scoped, least privilege access to Recraft image and style operations
- Full audit trail of agent actions to support review and compliance

## Use Recraft with any AI Agent Framework

Choose a framework you want to connect Recraft with:

- [ChatGPT](https://composio.dev/toolkits/recraft/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/recraft/framework/claude-cowork)
- [Hermes](https://composio.dev/toolkits/recraft/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/recraft/framework/atomic-agent)

## Related Toolkits

- [Figma](https://composio.dev/toolkits/figma) - Figma is a collaborative interface design tool for teams and individuals. It streamlines design workflows with real-time collaboration and easy sharing.
- [Abyssale](https://composio.dev/toolkits/abyssale) - Abyssale is a creative automation platform for generating images, videos, GIFs, PDFs, and HTML5 content programmatically. It streamlines and scales visual content production for marketing, design, and operations teams.
- [Alttext ai](https://composio.dev/toolkits/alttext_ai) - AltText.ai is a service that generates alt text for images automatically. It helps boost accessibility and SEO for your visual content.
- [Are.na](https://composio.dev/toolkits/arena) - Are.na is a creative research platform for collecting images, links, notes, and ideas in channels. Use it to organize inspiration, build knowledge maps, and connect research across projects.
- [Bannerbear](https://composio.dev/toolkits/bannerbear) - Bannerbear is an API-driven platform for generating images and videos automatically at scale. It helps businesses create custom graphics, social visuals, and marketing assets using powerful templates.
- [Bannerbite](https://composio.dev/toolkits/bannerbite) - Bannerbite is a creative automation platform for generating images and videos from reusable projects and templates. It helps teams produce on-brand visual assets faster without rebuilding designs from scratch.
- [BeatAPI](https://composio.dev/toolkits/beatapi) - BeatAPI is an asynchronous API platform for AI image, video, and music workflows. It enables scalable generation, video analysis, uploads, and ecommerce video pipelines.
- [Builder.io](https://composio.dev/toolkits/builder_io) - Builder.io is a visual development platform for managing content, models, assets, and Space configuration. Use it to ship editable digital experiences faster without waiting on every code change.
- [Canva](https://composio.dev/toolkits/canva) - Canva is a drag-and-drop design suite for creating professional graphics, presentations, and marketing materials. It makes it easy for anyone to design with beautiful templates and a vast library of elements.
- [Canva MCP](https://composio.dev/toolkits/canva_mcp) - Canva MCP is Canva's remote MCP server for accessing designs and content. It centralizes design assets and enables programmatic design workflows.
- [Claid ai](https://composio.dev/toolkits/claid_ai) - Claid.ai delivers AI-driven image editing APIs for tasks like background removal, upscaling, and color correction. It helps automate and enhance image workflows with powerful, developer-friendly tools.
- [Cloudinary](https://composio.dev/toolkits/cloudinary) - Cloudinary is a cloud-based platform for managing, uploading, and transforming images and videos. It streamlines media workflows and delivers optimized assets globally.
- [Contentdrips](https://composio.dev/toolkits/contentdrips) - Contentdrips is an asynchronous rendering API for branded graphics and carousels. It turns reusable templates into on-brand social visuals at scale.
- [Creatomate](https://composio.dev/toolkits/creatomate) - Creatomate is an API for generating automated videos, images, GIFs, and reusable media templates. Use it to turn structured data into polished visual content at scale.
- [Cults](https://composio.dev/toolkits/cults) - Cults is a digital marketplace for 3D printing models, connecting designers and makers. It lets creators share, sell, and discover a huge variety of printable designs easily.
- [DeepImage](https://composio.dev/toolkits/deepimage) - DeepImage is an AI-powered image enhancer and upscaler. Get higher-quality images with just a few clicks.
- [Dreamstudio](https://composio.dev/toolkits/dreamstudio) - DreamStudio is Stability AI’s platform for generating and editing images with AI. It lets you easily turn ideas into stunning visuals, fast.
- [Dribbble](https://composio.dev/toolkits/dribbble) - Dribbble is a design community and publishing platform for managing shots, projects, and attachments. Use it to showcase work, collect feedback, and organize creative designs.
- [Dynamic Mockups](https://composio.dev/toolkits/dynamic_mockups) - Dynamic Mockups is an API platform for generating product mockups, rendering templates, and managing visual asset catalogs. Use it to automate high-quality product visuals, AI images, and motion assets at scale.
- [Dynapictures](https://composio.dev/toolkits/dynapictures) - Dynapictures is a cloud-based platform for generating personalized images at scale. Instantly create hundreds of custom visuals using your data sources, like Google Sheets.

## Frequently Asked Questions

### Do I need my own developer credentials to use Recraft with Composio?

Yes, Recraft requires you to configure your own API key. Once set up, Composio handles secure credential storage and API request handling for you.

### Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. [Learn more](https://docs.composio.dev/tool-router/overview).

### Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. [Learn more](https://trust.composio.dev).

### What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
