Grok Image MCP

Servidor MCP para geração e edição de imagens Grok

Documentação

mcp-server-grok-image

Um servidor MCP (Model Context Protocol) para a API de geração de imagens Grok da xAI. Construído em Rust, expõe geração e edição de imagens como ferramentas MCP.

Comunica-se via stdio usando JSON-RPC 2.0, como todos os servidores MCP.

Ferramentas

FerramentaDescrição
generate_imageGera uma imagem a partir de um prompt de texto
edit_imageEdita uma imagem existente usando instruções em linguagem natural
list_stylesLista estilos de imagem disponíveis para uso com generate_image

generate_image

Gera uma imagem a partir de uma descrição em texto.

Parâmetros:

NomeTipoObrigatórioDescrição
promptstringsimDescrição em texto da imagem desejada
modelstringnãoModelo a usar (padrão: grok-imagine-image)
nintegernãoNúmero de imagens a gerar (1-10, padrão 1)
aspect_ratiostringnãoProporção de aspecto: 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 2:1, 1:2, auto, etc.
resolutionstringnãoResolução de saída: 1k (~1024px, padrão) ou 2k (~2048px)
response_formatstringnãoFormato de saída: url (padrão, temporário) ou b64_json
stylestringnãoNome do estilo a aplicar (use list_styles para ver as opções)

Quando um estilo é definido, o prompt é envolvido no template do estilo. Por exemplo, com style: "watercolor" e prompt: "a cat on a roof", a API recebe "a cat on a roof, as a watercolor painting". Evite incluir linguagem de estilo no próprio prompt ao usar este parâmetro.

A resposta inclui o prompt resolvido para que você veja exatamente o que foi enviado à API.

edit_image

Edita uma imagem existente usando instruções em linguagem natural.

Parâmetros:

NomeTipoObrigatórioDescrição
image_urlstringsimURL, data URI base64 ou caminho de arquivo local da imagem de origem
promptstringsimInstruções de edição em linguagem natural
modelstringnãoModelo a usar (padrão: grok-imagine-image)
nintegernãoNúmero de variações a gerar (1-10, padrão 1)
resolutionstringnãoResolução de saída: 1k (~1024px, padrão) ou 2k (~2048px)
response_formatstringnãoFormato de saída: url (padrão, temporário) ou b64_json

Observação: o parâmetro style intencionalmente não está disponível no edit_image — prompts de edição são instruções (ex.: "remover o fundo"), não descrições, então envolvê-los em templates de estilo produziria resultados sem sentido.

list_styles

Retorna todos os estilos de imagem disponíveis com seu nome, descrição e template de prompt. Sem parâmetros.

Estilos Integrados

EstiloDescrição
watercolorEstilo de pintura em aquarela
oil-paintingPintura a óleo com pinceladas visíveis
pencil-sketchEsboço detalhado a lápis
pixel-artPixel art retrô
animeIlustração em estilo anime
pop-artEstilo pop art ousado
art-nouveauArt nouveau com linhas orgânicas fluidas
cinematicFotografia cinematográfica com iluminação dramática
portraitFotografia profissional de retrato
macroFotografia macro extrema
aerialFotografia aérea com drone
studioFotografia de estúdio com fundo limpo
noirEstilo film noir escuro
vintageFotografia vintage desbotada

Modelos Disponíveis

ModeloResoluçãoCustoLimite de Taxa
grok-imagine-image (padrão)1k/2k$0,02/imagem300 RPM

Pré-requisitos

Configuração

Crie o arquivo de configuração:

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

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

api_key = "xai-..."

Estilos Personalizados

Adicione estilos personalizados ao seu arquivo de configuração. Estilos personalizados com o mesmo nome de um estilo integrado o substituirão.

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 devem conter o placeholder {prompt}. Qualquer estilo personalizado sem ele será ignorado com um aviso na inicialização.

Compilação

cargo build --release

Isso produz target/release/mcp-server-grok-image.

Para desenvolvimento:

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

Configuração do MCP

Adicione à configuração do seu Claude Desktop (~/.config/Claude/claude_desktop_config.json):

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

Estrutura do Projeto

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

Licença

MIT