Replicate Flux MCP is an advanced Model Context Protocol (MCP) server that empowers AI assistants to generate high-quality images and vector graphics. Leveraging Black Forest Labs' Flux Schnell model for raster images and Recraft's V3 SVG model for vector graphics via the Replicate API.
- Getting Started & Integration
- Features
- Documentation
- Development
- Technical Details
- Troubleshooting
- Contributing
- License
- Resources
- Examples
-
Obtain a Replicate API Token
- Sign up at Replicate
- Create an API token in your account settings
-
Choose Your Integration Method
- Follow one of the integration options below based on your preferred MCP client
-
Ask Your AI Assistant to Generate an Image
- Simply ask naturally: "Can you generate an image of a serene mountain landscape at sunset?"
- Or be more specific: "Please create an image showing a peaceful mountain scene with a lake reflecting the sunset colors in the foreground"
-
Explore Advanced Features
- Try different parameter settings for customized results
- Experiment with SVG generation using
generate_svg
- Use batch image generation or variant generation features
- Create or edit the
.cursor/mcp.json
file in your project directory:
{
"mcpServers": {
"replicate-flux-mcp": {
"command": "env REPLICATE_API_TOKEN=YOUR_TOKEN npx",
"args": ["-y", "replicate-flux-mcp"]
}
}
}
- Replace
YOUR_TOKEN
with your actual Replicate API token - Restart Cursor to apply the changes
- Open Cursor and go to Settings
- Navigate to the "MCP" or "Model Context Protocol" section
- Click "Add Server" or equivalent
- Enter the following command in the appropriate field:
env REPLICATE_API_TOKEN=YOUR_TOKEN npx -y replicate-flux-mcp
- Replace
YOUR_TOKEN
with your actual Replicate API token - Save the settings and restart Cursor if necessary
- Create or edit the
mcp.json
file in your configuration directory:
{
"mcpServers": {
"replicate-flux-mcp": {
"command": "npx",
"args": ["-y", "replicate-flux-mcp"],
"env": {
"REPLICATE_API_TOKEN": "YOUR TOKEN"
}
}
}
}
- Replace
YOUR_TOKEN
with your actual Replicate API token - Restart Claude Desktop to apply the changes
This MCP server is available as a hosted service on Smithery, allowing you to use it without setting up your own server.
- Visit Smithery and create an account if you don't have one
- Navigate to the Replicate Flux MCP server page
- Click "Add to Workspace" to add the server to your Smithery workspace
- Configure your MCP client (Cursor, Claude Desktop, etc.) to use your Smithery workspace URL
For more information on using Smithery with your MCP clients, visit the Smithery documentation.
This MCP server is also available as a hosted service on Glama.ai, providing another option to use it without local setup.
- Visit Glama.ai and create an account if you don't have one
- Go to the Replicate Flux MCP server page
- Click "Install Server" to add the server to your workspace
- Configure your MCP client to use your Glama.ai workspace
For more information, visit the Glama.ai MCP servers documentation.
- πΌοΈ High-Quality Image Generation - Create stunning images using Flux Schnell, a state-of-the-art AI model
- π¨ Vector Graphics Support - Generate professional SVG vector graphics with Recraft V3 SVG model
- π€ AI Assistant Integration - Seamlessly enable AI assistants like Claude to generate visual content
- ποΈ Advanced Customization - Fine-tune generation with controls for aspect ratio, quality, resolution, and more
- π Universal MCP Compatibility - Works with all MCP clients including Cursor, Claude Desktop, Cline, and Zed
- π Secure Local Processing - All requests are processed locally for enhanced privacy and security
- π Comprehensive History Management - Track, view, and retrieve your complete generation history
- π Batch Processing - Generate multiple images from different prompts in a single request
- π Variant Exploration - Create and compare multiple interpretations of the same concept
- βοΈ Prompt Engineering - Fine-tune image variations with specialized prompt modifications
Generates an image based on a text prompt using the Flux Schnell model.
{
prompt: string; // Required: Text description of the image to generate
seed?: number; // Optional: Random seed for reproducible generation
go_fast?: boolean; // Optional: Run faster predictions with optimized model (default: true)
megapixels?: "1" | "0.25"; // Optional: Image resolution (default: "1")
num_outputs?: number; // Optional: Number of images to generate (1-4) (default: 1)
aspect_ratio?: string; // Optional: Aspect ratio (e.g., "16:9", "4:3") (default: "1:1")
output_format?: string; // Optional: Output format ("webp", "jpg", "png") (default: "webp")
output_quality?: number; // Optional: Image quality (0-100) (default: 80)
num_inference_steps?: number; // Optional: Number of denoising steps (1-4) (default: 4)
disable_safety_checker?: boolean; // Optional: Disable safety filter (default: false)
}
Generates multiple images based on an array of prompts using the Flux Schnell model.
{
prompts: string[]; // Required: Array of text descriptions for images to generate (1-10 prompts)
seed?: number; // Optional: Random seed for reproducible generation
go_fast?: boolean; // Optional: Run faster predictions with optimized model (default: true)
megapixels?: "1" | "0.25"; // Optional: Image resolution (default: "1")
aspect_ratio?: string; // Optional: Aspect ratio (e.g., "16:9", "4:3") (default: "1:1")
output_format?: string; // Optional: Output format ("webp", "jpg", "png") (default: "webp")
output_quality?: number; // Optional: Image quality (0-100) (default: 80)
num_inference_steps?: number; // Optional: Number of denoising steps (1-4) (default: 4)
disable_safety_checker?: boolean; // Optional: Disable safety filter (default: false)
}
Generates multiple variants of the same image from a single prompt.
{
prompt: string; // Required: Text description for the image to generate variants of
num_variants: number; // Required: Number of image variants to generate (2-10, default: 4)
prompt_variations?: string[]; // Optional: List of prompt modifiers to apply to variants (e.g., ["in watercolor style", "in oil painting style"])
variation_mode?: "append" | "replace"; // Optional: How to apply variations - 'append' adds to base prompt, 'replace' uses variations directly (default: "append")
seed?: number; // Optional: Base random seed. Each variant will use seed+variant_index
go_fast?: boolean; // Optional: Run faster predictions with optimized model (default: true)
megapixels?: "1" | "0.25"; // Optional: Image resolution (default: "1")
aspect_ratio?: string; // Optional: Aspect ratio (e.g., "16:9", "4:3") (default: "1:1")
output_format?: string; // Optional: Output format ("webp", "jpg", "png") (default: "webp")
output_quality?: number; // Optional: Image quality (0-100) (default: 80)
num_inference_steps?: number; // Optional: Number of denoising steps (1-4) (default: 4)
disable_safety_checker?: boolean; // Optional: Disable safety filter (default: false)
}
Generates an SVG vector image based on a text prompt using the Recraft V3 SVG model.
{
prompt: string; // Required: Text description of the SVG to generate
size?: string; // Optional: Size of the generated SVG (default: "1024x1024")
style?: string; // Optional: Style of the generated image (default: "any")
// Options: "any", "engraving", "line_art", "line_circuit", "linocut"
}
Retrieves a list of your recent predictions from Replicate.
{
limit?: number; // Optional: Maximum number of predictions to return (1-100) (default: 50)
}
Gets detailed information about a specific prediction.
{
predictionId: string; // Required: ID of the prediction to retrieve
}
Browse your history of generated images created with the Flux Schnell model.
Browse your history of generated SVG images created with the Recraft V3 SVG model.
Browse all your Replicate predictions history.
- Clone the repository:
git clone https://github.com/yourusername/replicate-flux-mcp.git
cd replicate-flux-mcp
- Install dependencies:
npm install
- Start development mode:
npm run dev
- Build the project:
npm run build
- Connect to Client:
{
"mcpServers": {
"image-generation-mcp": {
"command": "npx",
"args": [
"/Users/{USERNAME}/{PATH_TO}/replicate-flux-mcp/build/index.js"
],
"env": {
"REPLICATE_API_TOKEN": "YOUR REPLICATE API TOKEN"
}
}
}
}
- Model Context Protocol SDK - Core MCP functionality for tool and resource management
- Replicate API - Provides access to state-of-the-art AI image generation models
- TypeScript - Ensures type safety and leverages modern JavaScript features
- Zod - Implements runtime type validation for robust API interactions
The server can be configured by modifying the CONFIG
object in src/config/index.ts
:
const CONFIG = {
serverName: "replicate-flux-mcp",
serverVersion: "0.1.2",
imageModelId: "black-forest-labs/flux-schnell",
svgModelId: "recraft-ai/recraft-v3-svg",
pollingAttempts: 25,
pollingInterval: 2000, // ms
};
- Ensure your
REPLICATE_API_TOKEN
is correctly set in the environment - Verify your token is valid by testing it with the Replicate API directly
- The model has a built-in safety filter that may block certain prompts
- Try modifying your prompt to avoid potentially problematic content
- For larger images or busy servers, you might need to increase
pollingAttempts
orpollingInterval
in the configuration - Default settings should work for most use cases
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
For feature requests or bug reports, please create a GitHub issue. If you like this project, consider starring the repository!
This project is licensed under the MIT License - see the LICENSE file for details.
- Model Context Protocol Documentation
- Replicate API Documentation
- Flux Schnell Model
- Recraft V3 SVG Model
- MCP TypeScript SDK
- Smithery Documentation
- Glama.ai MCP Servers
Multiple Prompts | Prompt Variants |
---|---|
![]() |
![]() |
Here are some examples of how to use the tools:
Create multiple distinct images at once with different prompts:
{
"prompts": [
"A red sports car on a mountain road",
"A blue sports car on a beach",
"A vintage sports car in a city street"
]
}
Create different interpretations of the same concept using seeds:
{
"prompt": "A futuristic city skyline at night",
"num_variants": 4,
"seed": 42
}
Or explore style variations with prompt modifiers:
{
"prompt": "A character portrait",
"prompt_variations": [
"in anime style",
"in watercolor style",
"in oil painting style",
"as a 3D render"
]
}
Made with β€οΈ by Yaroslav Boiko