Skip to main content
Glama
PierrunoYT

Replicate Recraft V3 MCP Server

by PierrunoYT
README.md
# Replicate Recraft V3 MCP Server

A Model Context Protocol (MCP) server that provides access to the recraft-ai/recraft-v3 image generation model via Replicate. This server allows you to generate high-quality images using advanced AI technology through the Replicate platform.

## Features

- **High-Quality Image Generation**: Generate stunning images using the recraft-ai/recraft-v3 model
- **Multiple Generation Methods**: Support for synchronous and asynchronous generation with prediction tracking
- **Flexible Sizing Options**: Support for various sizes and aspect ratios
- **Advanced Style Control**: Multiple style options including realistic images and digital illustrations
- **Local Image Download**: Automatically downloads generated images to local storage in WebP format
- **Prediction Management**: Create, track, and cancel predictions
- **Webhook Support**: Optional webhook notifications for completed requests

## Installation

### Option 1: Universal npx Installation (Recommended)

No local installation required! Use npx to run the server directly:

```bash
npx -y https://github.com/PierrunoYT/replicate-recraft-v3-mcp-server.git
```

### Option 2: Local Installation

1. Clone this repository:
```bash
git clone https://github.com/PierrunoYT/replicate-recraft-v3-mcp-server.git
cd replicate-recraft-v3-mcp-server
```

2. Install dependencies:
```bash
npm install
```

3. Build the project:
```bash
npm run build
```

## Configuration

### Environment Variables

Set your Replicate API token as an environment variable:

```bash
export REPLICATE_API_TOKEN="r8_NBY**********************************"
```

You can get your API token from [Replicate](https://replicate.com/).

### MCP Client Configuration

#### Universal npx Configuration (Recommended)

Add this server to your MCP client configuration:

```json
{
  "mcpServers": {
    "replicate-recraft-v3": {
      "command": "npx",
      "args": [
        "-y",
        "https://github.com/PierrunoYT/replicate-recraft-v3-mcp-server.git"
      ],
      "env": {
        "REPLICATE_API_TOKEN": "r8_NBY**********************************"
      }
    }
  }
}
```

#### Local Installation Configuration

For local installations, use:

```json
{
  "mcpServers": {
    "replicate-recraft-v3": {
      "command": "node",
      "args": ["/path/to/replicate-recraft-v3-mcp-server/build/index.js"],
      "env": {
        "REPLICATE_API_TOKEN": "r8_NBY**********************************"
      }
    }
  }
}
```

## Available Tools

### 1. `recraft_v3_generate`

Generate images using the standard synchronous method.

**Parameters:**
- `prompt` (required): Text prompt for image generation
- `size` (optional): Size of the generated image (default: "1024x1024")
  - Options: "1024x1024", "1365x1024", "1024x1365", "1536x1024", "1024x1536", "1820x1024", "1024x1820", "1024x2048", "2048x1024", "1434x1024", "1024x1434", "1024x1280", "1280x1024", "1024x1707", "1707x1024"
- `aspect_ratio` (optional): Aspect ratio of the generated image (default: "Not set")
  - Options: "Not set", "1:1", "4:3", "3:4", "3:2", "2:3", "16:9", "9:16", "1:2", "2:1", "7:5", "5:7", "4:5", "5:4", "3:5", "5:3"
- `style` (optional): Style of the generated image (default: "any")
  - Options: "any", "realistic_image", "digital_illustration", "digital_illustration/pixel_art", "digital_illustration/hand_drawn", "digital_illustration/grain", "digital_illustration/infantile_sketch", "digital_illustration/2d_art_poster", "digital_illustration/handmade_3d", "digital_illustration/hand_drawn_outline", "digital_illustration/engraving_color", "digital_illustration/2d_art_poster_2", "realistic_image/b_and_w", "realistic_image/hard_flash", "realistic_image/hdr", "realistic_image/natural_light", "realistic_image/studio_portrait", "realistic_image/enterprise", "realistic_image/motion_blur"

**Example:**
```json
{
  "prompt": "a wildlife photography photo of a red panda using a laptop in a snowy forest",
  "size": "1365x1024",
  "style": "realistic_image/natural_light"
}
```

### 2. `recraft_v3_generate_async`

Generate images using asynchronous method with prediction tracking.

**Parameters:** Same as `recraft_v3_generate` plus:
- `webhook` (optional): URL for webhook notifications
- `webhook_events_filter` (optional): Events to send to webhook (default: ["completed"])

**Returns:** A prediction ID for tracking the job

### 3. `recraft_v3_get_prediction`

Get the status and results of a prediction created with `recraft_v3_generate_async`.

**Parameters:**
- `prediction_id` (required): The prediction ID from async generation

### 4. `recraft_v3_cancel_prediction`

Cancel a running prediction to prevent unnecessary work and reduce costs.

**Parameters:**
- `prediction_id` (required): The prediction ID to cancel

## Sizes and Aspect Ratios

### Supported Sizes
- `1024x1024` - Square (default)
- `1365x1024`, `1024x1365` - Landscape/Portrait
- `1536x1024`, `1024x1536` - Wide landscape/Portrait
- `1820x1024`, `1024x1820` - Ultra-wide landscape/Portrait
- `1024x2048`, `2048x1024` - Extra tall/wide
- `1434x1024`, `1024x1434` - Custom ratio
- `1024x1280`, `1280x1024` - 4:5 ratio
- `1024x1707`, `1707x1024` - Golden ratio

### Supported Aspect Ratios
- `1:1` - Square
- `4:3`, `3:4` - Standard ratios
- `3:2`, `2:3` - Classic photo ratios
- `16:9`, `9:16` - Widescreen ratios
- `1:2`, `2:1` - Tall/wide ratios
- `7:5`, `5:7` - Custom ratios
- `4:5`, `5:4` - Social media ratios
- `3:5`, `5:3` - Extended ratios

## Style Options

### Realistic Images
- `realistic_image` - General realistic style
- `realistic_image/b_and_w` - Black and white photography
- `realistic_image/hard_flash` - Hard flash photography
- `realistic_image/hdr` - HDR photography
- `realistic_image/natural_light` - Natural lighting
- `realistic_image/studio_portrait` - Studio portrait style
- `realistic_image/enterprise` - Professional/corporate style
- `realistic_image/motion_blur` - Motion blur effects

### Digital Illustrations
- `digital_illustration` - General digital art
- `digital_illustration/pixel_art` - Pixel art style
- `digital_illustration/hand_drawn` - Hand-drawn appearance
- `digital_illustration/grain` - Textured/grainy style
- `digital_illustration/infantile_sketch` - Childlike sketch style
- `digital_illustration/2d_art_poster` - 2D poster art
- `digital_illustration/handmade_3d` - 3D handmade style
- `digital_illustration/hand_drawn_outline` - Outlined hand-drawn style
- `digital_illustration/engraving_color` - Colored engraving style
- `digital_illustration/2d_art_poster_2` - Alternative 2D poster style

## Output

Generated images are automatically downloaded to a local `images/` directory with descriptive filenames in WebP format. The response includes:

- Local file paths
- Original URLs
- Image filenames
- Generation parameters used
- Prediction IDs for tracking

## Error Handling

The server provides detailed error messages for:
- Missing API tokens
- Invalid parameters
- Network issues
- API rate limits
- Generation failures

## Development

### Running in Development Mode

```bash
npm run dev
```

### Testing the Server

```bash
npm test
```

### Getting the Installation Path

```bash
npm run get-path
```

## API Reference

This server implements the recraft-ai/recraft-v3 API via Replicate. For detailed API documentation, visit:
- [Replicate Recraft V3](https://replicate.com/recraft-ai/recraft-v3)
- [Replicate API Documentation](https://replicate.com/docs)

## License

MIT License - see [LICENSE](LICENSE) file for details.

## Contributing

1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Add tests if applicable
5. Submit a pull request

## Support

For issues and questions:
- Open an issue on [GitHub](https://github.com/PierrunoYT/replicate-recraft-v3-mcp-server/issues)
- Check the [Replicate documentation](https://replicate.com/docs)

## Changelog

### v1.0.0
- Initial release with recraft-ai/recraft-v3 integration
- Support for synchronous and asynchronous generation
- Prediction tracking and management
- Multiple size and aspect ratio options
- Comprehensive style control options
- Local image download functionality in WebP format
- Comprehensive error handling