mcp-server-grok-image

mcp-server-grok-image

MCP server for generating and editing images using xAI's Grok API. Provides tools for image generation, editing, and style listing with configurable models and output options.

Category
Visit Server

README

mcp-server-grok-image

An MCP (Model Context Protocol) server for xAI's Grok image generation API. Built in Rust, exposes image generation and editing as MCP tools.

Communicates via stdio using JSON-RPC 2.0, like all MCP servers.

Tools

Tool Description
generate_image Generate an image from a text prompt
edit_image Edit an existing image using natural language instructions
list_styles List available image styles for use with generate_image

generate_image

Generate an image from a text description.

Parameters:

Name Type Required Description
prompt string yes Text description of the desired image
model string no Model to use (default: grok-imagine-image)
n integer no Number of images to generate (1-10, default 1)
aspect_ratio string no Aspect ratio: 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 2:1, 1:2, auto, etc.
resolution string no Output resolution: 1k (~1024px, default) or 2k (~2048px)
response_format string no Output format: url (default, temporary) or b64_json
style string no Style name to apply (use list_styles to see options)

When a style is set, the prompt is wrapped in the style's template. For example, with style: "watercolor" and prompt: "a cat on a roof", the API receives "a cat on a roof, as a watercolor painting". Avoid including style language in the prompt itself when using this parameter.

The response includes the resolved prompt so you can see exactly what was sent to the API.

edit_image

Edit an existing image using natural language instructions.

Parameters:

Name Type Required Description
image_url string yes URL, base64 data URI, or local file path of the source image
prompt string yes Natural language edit instructions
model string no Model to use (default: grok-imagine-image)
n integer no Number of variations to generate (1-10, default 1)
resolution string no Output resolution: 1k (~1024px, default) or 2k (~2048px)
response_format string no Output format: url (default, temporary) or b64_json

Note: The style parameter is intentionally not available on edit_image -- edit prompts are instructions (e.g. "remove the background"), not descriptions, so wrapping them in style templates would produce nonsense.

list_styles

Returns all available image styles with their name, description, and prompt template. No parameters.

Built-in Styles

Style Description
watercolor Watercolor painting style
oil-painting Oil painting with visible brushstrokes
pencil-sketch Detailed pencil sketch
pixel-art Retro pixel art
anime Anime style illustration
pop-art Bold pop art style
art-nouveau Art nouveau with flowing organic lines
cinematic Cinematic photography with dramatic lighting
portrait Professional portrait photography
macro Extreme macro photography
aerial Aerial drone photography
studio Studio photography on clean background
noir Dark film noir style
vintage Faded vintage photograph

Available Models

Model Resolution Cost Rate Limit
grok-imagine-image (default) 1k/2k $0.02/image 300 RPM

Prerequisites

Setup

Create the config file:

mkdir -p ~/.config/mcp-server-grok-image

Create ~/.config/mcp-server-grok-image/config.toml:

api_key = "xai-..."

Custom Styles

Add custom styles to your config file. Custom styles with the same name as a built-in will override it.

api_key = "xai-..."

[[styles]]
name = "my-style"
description = "My custom look"
template = "{prompt}, in my custom style"

[[styles]]
name = "watercolor"
description = "My watercolor variant"
template = "{prompt}, as a loose expressive watercolor with ink outlines"

Templates must contain the {prompt} placeholder. Any custom style missing it will be skipped with a warning at startup.

Build

cargo build --release

This produces target/release/mcp-server-grok-image.

For development:

cargo build              # debug build
cargo run                # run in dev mode
RUST_LOG=debug cargo run # run with debug logging

MCP Configuration

Add to your Claude Desktop config (~/.config/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "grok-image": {
      "command": "/path/to/mcp-server-grok-image"
    }
  }
}

Project Structure

src/
  main.rs  - everything: config, styles, API types, MCP server, tool definitions

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured