Bobby Battista/luma-ai-mcp-server
Built by Metorial, the integration platform for agentic AI.
Bobby Battista/luma-ai-mcp-server
Server Summary
Text-to-video generation
Video generation with keyframes
Image-to-video conversion
Video extension and interpolation
Image generation with reference images
Audio addition to videos
Video upscaling
Credit management
Generation tracking and status checking
A Model Context Protocol server for Luma AI's Dream Machine API.
This MCP server integrates with Luma AI's Dream Machine API (v1) to provide tools for generating, managing, and manipulating AI-generated videos and images via Large Language Models. It implements the Model Context Protocol (MCP) to enable seamless interaction between AI assistants and Luma's creative tools.
ping
create_generation
prompt
(string, required): Text description of the video to generatemodel
(string, optional): Model to use (default: "ray-2")
resolution
(string, optional): Video resolution (choices: "540p", "720p", "1080p", "4k")duration
(string, optional): Video duration (only "5s" and "9s" are currently supported)aspect_ratio
(string, optional): Video aspect ratio (e.g., "16:9", "1:1", "9:16", "4:3", "3:4", "21:9", "9:21")loop
(boolean, optional): Whether to make the video loopkeyframes
(object, optional): Start and end frames for advanced video generation:
frame0
and/or frame1
with either:
{"type": "image", "url": "image_url"}
for image keyframes{"type": "generation", "id": "generation_id"}
for video keyframesget_generation
generation_id
(string, required): ID of the generation to checklist_generations
limit
(number, optional): Maximum number of generations to return (default: 10)offset
(number, optional): Number of generations to skipdelete_generation
generation_id
(string, required): ID of the generation to deleteupscale_generation
generation_id
(string, required): ID of the generation to upscaleresolution
(string, required): Target resolution for the upscaled video (one of "540p", "720p", "1080p", or "4k")add_audio
generation_id
(required): The ID of the generation to add audio toprompt
(required): The prompt for the audio generationnegative_prompt
(optional): The negative prompt for the audio generationcallback_url
(optional): URL to notify when the audio processing is completegenerate_image
prompt
(string, required): Text description of the image to generatemodel
(string, optional): Model to use for image generation (default: "photon-1")
aspect_ratio
(string, optional): Image aspect ratio (same options as video)image_ref
(array, optional): Reference images to guide generation
{"url": "image_url", "weight": optional_float}
style_ref
(array, optional): Style reference images
{"url": "image_url", "weight": optional_float}
character_ref
(object, optional): Character reference images
{"identity_name": {"images": ["url1", "url2", ...]}}
modify_image_ref
(object, optional): Image to modify
{"url": "image_url", "weight": optional_float}
get_credits
get_camera_motions
Get your Luma API key from Luma AI (sign up or log in to get your API key)
Add this to your Claude Desktop configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"luma": {
"command": "uv",
"args": [
"run",
"--project",
"/path/to/your/luma-ai-mcp-server",
"-m",
"luma_ai_mcp_server"
],
"env": {
"LUMA_API_KEY": "your-luma-api-key-here"
}
}
}
}
Replace:
/path/to/your/luma-ai-mcp-server
with the actual path to your server directoryyour-luma-api-key-here
with your actual Luma API keyRestart Claude Desktop
That's it! You can now use Luma AI tools directly in Claude Desktop conversations.
If you're having issues:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
The Luma API supports various types of advanced video generation through keyframes:
frame0
with type: "image"
and an image URLframe1
with type: "image"
and an image URLframe0
with type: "generation"
and a generation IDframe1
with type: "generation"
and a generation IDframe0
and frame1
with type: "generation"
and generation IDsMIT