@hallutraceai/image-generator-vibe-coding
v1.2.0
Published
MCP server for AI image generation via OpenRouter (default) or Google Gemini. Works with Claude Code, Cursor, Windsurf, and any MCP-compatible tool.
Maintainers
Readme
Image Generator MCP Server
An MCP (Model Context Protocol) server for AI image generation using Google Gemini. Supports OpenRouter (default) and direct Gemini API. Works with Claude Code, Cursor, Windsurf, and any MCP-compatible tool.
Quick Install — Paste This Prompt Into Claude Code
Copy the prompt below, replace the two placeholders, and paste it into Claude Code (or any vibe coding tool). It will install the MCP, update your project config, and set up image generation rules automatically.
Before you paste: Get your OpenRouter API key at openrouter.ai/keys
Replace before pasting:
| Placeholder | Replace with | Example |
|---|---|---|
| [YourOpenRouterAPIKey] | Your OpenRouter API key | sk-or-v1-abc123... |
| [YourModelName] | Full model ID from your provider | OpenRouter: google/gemini-2.5-flash-image, Gemini: gemini-2.5-flash-image |
Providers
| Provider | Default | API Key Env Var | Notes |
|---|---|---|---|
| OpenRouter | Yes | OPENROUTER_API_KEY | Access to 300+ models, OpenAI-compatible API |
| Gemini | Fallback | GEMINI_API_KEY | Direct Google Gemini API |
Provider is auto-detected from available env vars (OpenRouter preferred). You can override per-request with the provider parameter.
Models
| Name | Model (OpenRouter) | Model (Gemini) | Best For |
|---|---|---|---|
| Nano Banana (flash) | google/gemini-2.5-flash-image | gemini-2.5-flash-image | Fast, high-volume generation |
| Nano Banana Pro | google/gemini-3-pro-image-preview | gemini-3-pro-image-preview | High quality output |
Setup
1. Get an API Key
- OpenRouter (recommended): Get your key at OpenRouter Keys
- Gemini: Get your key at Google AI Studio
2. Add to your MCP client
Claude Code
claude mcp add image-generator -- npx -y @hallutraceai/image-generator-vibe-codingThen set your API key:
export OPENROUTER_API_KEY=your-key-here
# or
export GEMINI_API_KEY=your-key-hereManual config (Claude Code, Cursor, Windsurf, etc.)
Add to your MCP settings:
{
"mcpServers": {
"image-generator": {
"command": "npx",
"args": ["-y", "@hallutraceai/image-generator-vibe-coding"],
"env": {
"OPENROUTER_API_KEY": "your-openrouter-key-here"
}
}
}
}Tools
generate_image
Generate an image from a text prompt.
| Parameter | Type | Default | Description |
|---|---|---|---|
| prompt | string | (required) | Text description of the image |
| model | string | "google/gemini-2.5-flash-image" | Full model ID. OpenRouter: google/gemini-2.5-flash-image, google/gemini-3-pro-image-preview. Gemini: gemini-2.5-flash-image, gemini-3-pro-image-preview. Shortcuts: flash, pro |
| aspectRatio | "1:1" | "16:9" | "9:16" | "3:4" | "4:3" | "2:3" | "3:2" | "4:5" | "5:4" | "21:9" | "1:1" | Aspect ratio |
| imageSize | "0.5K" | "1K" | "2K" | "4K" | "2K" | Resolution |
| outputDir | string | "./generated-images" | Save directory |
| provider | "openrouter" | "gemini" | auto-detect | API provider |
edit_image
Edit an existing image with text instructions.
| Parameter | Type | Default | Description |
|---|---|---|---|
| prompt | string | (required) | Edit instructions |
| imagePath | string | (required) | Path to source image |
| model | string | "google/gemini-2.5-flash-image" | Full model ID (same options as generate_image) |
| aspectRatio | "1:1" | "16:9" | "9:16" | "3:4" | "4:3" | "2:3" | "3:2" | "4:5" | "5:4" | "21:9" | (optional) | Output aspect ratio |
| outputDir | string | "./generated-images" | Save directory |
| provider | "openrouter" | "gemini" | auto-detect | API provider |
Examples
Once configured, ask your AI assistant:
- "Generate an image of a sunset over mountains"
- "Create a logo for a coffee shop called Bean There"
- "Edit this image to make the sky more dramatic"
- "Generate a 16:9 banner image for my blog post about AI"
Development
git clone https://github.com/khoaofgod/image-generator-vibe-coding.git
cd image-generator-vibe-coding
npm install
npm run buildTest locally:
OPENROUTER_API_KEY=your-key node dist/index.jsLicense
MIT
