Skip to main content
Glama
ElevenLabs Image Generation MCP Server

ElevenLabs Image Generation MCP Server

by ddunford

ElevenLabs Image Generation MCP Server

An MCP (Model Context Protocol) server that generates images using ElevenLabs' Image & Video feature via Playwright browser automation.

Features

  • generate_image - Generate images from text prompts using ElevenLabs

  • list_models - List available image generation models

  • get_session_status - Check authentication status

Related MCP server: local-browser-mcp-server

Available Models

Model ID

Name

Description

gpt-image-1.5

GPT Image 1.5 (default)

OpenAI - precise, high-quality generation

gpt-image-1

GPT Image 1

OpenAI - text-based creation and editing

flux-kontext-pro

Flux 1 Kontext Pro

Professional style control via reference images

seedream-4

Seedream 4

Multi-shot sequences with stable physics

nano-banana

Nano Banana (Google)

High-speed iterations

wan-2.5

Wan 2.5

Strong prompt fidelity

Installation

# Clone the repository
git clone git@github.com:ddunford/elevenlabMCP.git
cd elevenlabMCP

# Install dependencies
npm install

# Build
npm run build

# Install Playwright browser
npx playwright install chromium

Quick Setup (One-Liner)

Add to Claude Code globally:

claude mcp add elevenlabs-image -s user -- node /path/to/elevenlabMCP/dist/index.js

Or manually add to ~/.claude.json:

{
  "mcpServers": {
    "elevenlabs-image": {
      "type": "stdio",
      "command": "node",
      "args": ["/path/to/elevenlabMCP/dist/index.js"],
      "env": {}
    }
  }
}

Usage

In Claude Code

After adding the MCP server, restart Claude Code. The tools will be available as:

  • mcp__elevenlabs-image__generate_image

  • mcp__elevenlabs-image__list_models

  • mcp__elevenlabs-image__get_session_status

generate_image

Generate an image from a text prompt.

Parameters:

Parameter

Required

Description

prompt

Yes

Text description of the image to generate

model

No

Model ID (default: gpt-image-1.5)

savePath

No

Directory to save image (default: assets/)

aspectRatio

No

e.g., "1:1", "16:9", "9:16"

negativePrompt

No

What to avoid in the image

email

No

ElevenLabs account email (for first-time auth)

password

No

ElevenLabs account password (for first-time auth)

Example:

Generate an image of a cyberpunk city at night with neon lights

list_models

Returns all available image generation models with their capabilities.

get_session_status

Check if currently logged in to ElevenLabs.

Authentication

On first use, provide your ElevenLabs credentials via the email and password parameters. The session is persisted in .auth/ so subsequent calls don't require credentials.

How It Works

  1. Uses Playwright to automate the ElevenLabs web interface (no API available for image generation)

  2. Maintains a persistent browser session for authentication

  3. Navigates to the Image & Video page

  4. Enters prompts and generates images

  5. Downloads generated images from the History page

Project Structure

elevenlabMCP/
├── src/
│   ├── index.ts              # Entry point
│   ├── server.ts             # MCP server setup
│   ├── tools/                # MCP tool implementations
│   ├── browser/              # Playwright automation
│   ├── auth/                 # Authentication handling
│   └── config/               # Configuration
├── dist/                     # Compiled JavaScript
├── assets/                   # Generated images output
└── .auth/                    # Session storage (gitignored)

Environment Variables (Optional)

Create a .env file:

ELEVENLABS_EMAIL=your@email.com
ELEVENLABS_PASSWORD=yourpassword
HEADLESS=true  # Set to false for debugging

Notes

  • Image generation typically takes 30-60 seconds

  • Generated images are saved as WebP files

  • The browser runs headless by default; set HEADLESS=false to see the browser

License

MIT

Available Tools

3 tools
generate_imageA

Generate an image using ElevenLabs Image & Video feature. Returns the path to the downloaded image file.

Inputs: prompt (required), email, model, password, +3 more.

get_session_statusA

Check if currently logged in to ElevenLabs and get session information

Inputs: no named parameters.

list_modelsA

List all available image generation models on ElevenLabs

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.2/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a distinct purpose: generating images, checking session status, and listing models. No overlap or ambiguity.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case: generate_image, get_session_status, list_models.

    Tool Count5/5

    Three tools is appropriate for a focused image generation server, covering essential actions without being too sparse or bloated.

    Completeness4/5

    The set covers the core image generation workflow (list models, check session, generate) but lacks tools for managing or retrieving past generations, leaving minor gaps.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers