veo-mcp-server
Provides tools for generating videos and images using Google's Gemini API, with VEO 3.1 for video generation and NanoBanana Pro 2 for image generation.
CLI | Install check | Version check |
|
|
|
|
|
|
What is This?
Gemini Media MCP is a comprehensive toolkit that brings Google's most powerful AI media generation models into any MCP-compatible AI assistant. Generate 4K videos with VEO 3.1, create stunning images with NanoBanana Pro 2, and craft professional prompts with built-in skills -- all from a single repository.
What's Included
MCP Servers
Server | Description | Tools |
VEO 3.1 | AI video generation (text-to-video, image-to-video, extend, interpolate) | 9 tools |
NanoBanana | AI image generation with NanoBanana Pro 2 (Pro + Flash models) | 4 tools |
Claude Code Skills (Plugin Marketplace)
Skill | Description |
VEO Prompting | 7-layer prompt engineering for cinematic VEO 3.1 videos |
NanoBanana Prompting | 7-layer prompt engineering for photorealistic NanoBanana Pro 2 images |
Install skills via Claude Code:
/plugin marketplace add u2n4/gemini-media-mcpQuick Start
This repo hosts two independent MCP servers. Install whichever you need — or both. Each server publishes to PyPI separately.
Option A — uvx (zero-install, recommended)
Add a block to your MCP client config (Claude Desktop, Claude Code, Cursor, VS Code, Windsurf) using the appropriate server block below (see VEO Server / NanoBanana Server sections).
Option B — clone + editable install
git clone https://github.com/u2n4/gemini-media-mcp.git
cd gemini-media-mcp
# Create a virtual environment (uv pip install requires one — or pass --system)
uv venv
source .venv/bin/activate # macOS / Linux
# .venv\Scripts\activate # Windows PowerShell
# Install one or both sub-packages
uv pip install -e servers/veo
uv pip install -e servers/nanobananaVEO Server
uvx (zero-install):
{
"mcpServers": {
"veo": {
"command": "uvx",
"args": ["veo-mcp-server"],
"env": {
"GEMINI_API_KEY": "your_key",
"VIDEO_OUTPUT_DIR": "./videos"
}
}
}
}Claude Code:
claude mcp add veo -s user -e GEMINI_API_KEY=your_key -- uvx veo-mcp-serverpip install:
pip install veo-mcp-serverNanoBanana Server
uvx (zero-install):
{
"mcpServers": {
"nanobanana": {
"command": "uvx",
"args": ["nanobanana-imagen-mcp"],
"env": {
"GEMINI_API_KEY": "your_key"
}
}
}
}Claude Code:
claude mcp add nanobanana -s user -e GEMINI_API_KEY=your_key -- uvx nanobanana-imagen-mcppip install:
pip install nanobanana-imagen-mcpVEO Server
AI video generation powered by Google VEO 3.1. Uses an async job pattern where generation starts in the background and returns a job ID for polling -- no timeouts.
Tools
Tool | Description |
| Generate video from text prompt. Supports 720p/1080p/4K, 16:9 or 9:16, 4/6/8 second duration, negative prompts, reference images, seed control, and batch generation (1-4 videos). |
| Animate a reference image with a motion prompt. |
| Create smooth transition between two frames (first frame + last frame). |
| Extend an existing VEO video by ~7 seconds. 720p only, max 148 seconds total. |
| Check async job status. Call every 15-20 seconds until completed or failed. |
| List all generation jobs and their current status. |
| Check API key status -- keys configured, active key, keys remaining. |
| Show pricing per second for standard and fast models at all resolutions. |
| Display generation statistics -- video count, total size, file details, job statuses. |
VEO Configuration
Variable | Description | Default |
| Primary API key (required) | -- |
| Backup key for auto-rotation | -- |
| Output directory for videos |
|
VEO Models
Tier | Model | Best For |
Standard |
| Higher quality output |
Fast |
| Quicker generation |
NanoBanana Server
AI image generation powered by NanoBanana Pro 2. Supports Pro (maximum quality) and Flash (fast) models with default 4K resolution.
Tools
Tool | Description |
| Generate images using NanoBanana Pro 2 (Pro or Flash). Supports aspect ratio, resolution (up to 4K), negative prompts, thinking level, grounding, and reference images. |
| Upload reference image for editing or conditioning. |
| Display generation statistics -- image count, total size, file details. |
| Server maintenance and cleanup -- clear caches, remove temporary files. |
Models
Model | Engine | Best For |
Pro | Gemini 3 Pro Image | Maximum quality, complex scenes |
Flash | Gemini 3.1 Flash Image | Fast generation, simple scenes |
Prompting Skills
VEO Prompting Skill
7-layer prompt engineering system for VEO 3.1:
Cinematography (camera, shot type, lens, angles)
Subject (characters, objects, material cues)
Action (force-based verbs, timestamp beats)
Environment (time of day, weather, depth layers)
Lighting & Mood (physical light sources, color temperature)
Audio Design (dialogue, SFX, ambient, music)
Technical Controls (negative prompts, style anchors, film stocks)
NanoBanana Prompting Skill
7-layer prompt engineering system for NanoBanana Pro 2:
Style & Art Direction (visual DNA)
Scene Description (environment, atmosphere)
Main Subject (hero element with extreme specificity)
Camera & Lens (real camera specs for realism)
Lighting (natural, studio, color temperature)
Texture, Material & Color (tactile detail)
Negative Prompts (quality guards)
Architecture
gemini-media-mcp/
├── servers/
│ ├── veo/ # VEO 3.1 MCP Server (PyPI: veo-mcp-server)
│ │ ├── pyproject.toml
│ │ ├── requirements.txt
│ │ └── src/
│ │ └── veo_mcp_server/
│ │ ├── __init__.py
│ │ ├── __main__.py
│ │ └── server.py
│ └── nanobanana/ # NanoBanana MCP Server (PyPI: nanobanana-imagen-mcp)
│ ├── pyproject.toml
│ ├── requirements.txt
│ └── nanobanana_mcp_server/ # Package
├── skills/
│ ├── veo-prompting/ # VEO prompting skill
│ │ └── SKILL.md
│ └── nanobanana-prompting/ # NanoBanana prompting skill
│ └── SKILL.md
├── plugins/ # Claude Code Plugin Marketplace
│ ├── veo-prompting/
│ │ ├── .claude-plugin/
│ │ │ └── plugin.json
│ │ └── skills/
│ │ └── veo-prompting/
│ │ └── SKILL.md
│ └── nanobanana-prompting/
│ ├── .claude-plugin/
│ │ └── plugin.json
│ └── skills/
│ └── nanobanana-prompting/
│ └── SKILL.md
├── .claude-plugin/
│ └── marketplace.json
├── .env.example
├── .gitignore
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── llms.txt
└── llms-install.mdContributing
See CONTRIBUTING.md.
License
MIT -- see LICENSE.
Credits
NanoBanana MCP Server: inspired by the nano-banana naming convention used across the MCP community. This is an independent implementation.
VEO 3.1 by Google DeepMind
Support
If you find this useful, please star this repository!
Made with ❤️ in the Eastern Province of Saudi Arabia.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/u2n4/gemini-media-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server