# Image MCP Server An MCP (Model Context Protocol) server that provides AI image generation capabilities using the [ai-image](https://www.npmjs.com/package/ai-image) npm module, which wraps around OpenAI and Replicate image inference APIs. ## Features - **generate_ai_image**: Generate AI images with customizable prompts, sizes, models, and styles - **square_image**: Generate square images (1024x1024) - shortcut command - **landscape_image**: Generate landscape images (1536x1024) - shortcut command - **portrait_image**: Generate portrait images (1024x1536) - shortcut command - Built on the ai-image module for seamless integration with OpenAI and Replicate APIs - Simple setup and configuration ## Installation ```bash npm install -g image-mcp ``` ## Setup ### Claude Desktop Configuration Add the following to your Claude Desktop configuration file: **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json` **Windows**: `%APPDATA%\Claude\claude_desktop_config.json` ```json { "mcpServers": { "image-mcp": { "command": "npx", "args": ["image-mcp@latest"], "env": { "OPENAI_API_KEY": "your-openai-api-key", "REPLICATE_API_TOKEN": "your-replicate-api-token", "MCP_TIMEOUT": "1200000" }, "resetTimeoutOnProgress": true } } } ``` ### Environment Variables The server requires API keys for the underlying image generation services: - `OPENAI_API_KEY`: Your OpenAI API key for GPT-based models (we won't be supporting Dall-e models as they'll likely be dropped soon) - `REPLICATE_API_TOKEN`: Your Replicate API token for other AI models ## Usage Once configured, you can use the image generation functions through Claude: ### generate_ai_image Generate AI images with various parameters: - **prompt** (required): Text description of the image to generate - **size** (optional): Image dimensions in WIDTHxHEIGHT format (default: "1024x1024") - **model** (optional): Specific AI model to use - **output** (optional): Custom output file path ### Shortcut Commands For convenience, use these preset size commands: - **square_image**: Generate 1024x1024 square images - **landscape_image**: Generate 1536x1024 landscape images - **portrait_image**: Generate 1024x1536 portrait images All shortcut commands accept the same parameters as `generate_ai_image` except `size` (which is preset). Example prompts: - "A red cat in Picasso style" - "A sunset over mountains, photorealistic" - "Abstract geometric patterns in blue and gold" ## Development ```bash # Clone the repository git clone https://github.com/iplanwebsites/image-mcp.git cd image-mcp # Install dependencies npm install # Run in development mode npm run dev # Start the server npm start ``` ## Requirements - Node.js >= 18.0.0 - Valid API keys for OpenAI and/or Replicate ## TODOs ### Urgent - [ ] **Fix npm module issue**: It only works locally... ### Improvements - [ ] **Better guides**: Add more detailed setup guides with troubleshooting steps, an Add to cursor button, etc - [x] **Use ai-image library directly**: Replace subprocess CLI calls with direct library imports - [ ] **Return file paths**: Return created image file paths in response - [ ] **Local inference support**: Add support for local models like Flux - [ ] **Image optimization**: Add lightweight image resizing and optimization options - [ ] **Image captioning tool**: Add captioning model for basic use cases (useful for models without vision) ## License MIT