CAT
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Cross AI Tools

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

Mcp Luma

acedatacloud/lumamcp
8 toolsauthSTDIO, HTTPregistry active
Summary

Brings Luma Dream Machine's AI video generation directly into Claude and other MCP clients through AceDataCloud's API. You get text-to-video, image-to-video with start/end frame control, and video extension capabilities. Supports multiple aspect ratios (16:9, 9:16, 1:1), looping animations, and optional clarity enhancement. The tools handle task submission and polling, so you can generate and extend videos without leaving your editor. Runs as a hosted HTTP server with OAuth for Claude.ai or as a local Python package. Useful when you need to prototype video content or animate static images without switching to a separate video generation platform.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Tools

Public tool metadata for what this MCP can expose to an agent.

8 tools
luma_list_aspect_ratiosList all available aspect ratios for Luma video generation. Shows all available aspect ratio options with their use cases. Use this to understand which aspect ratio to choose for your video. Returns: Table of all aspect ratios with their descriptions and use cases.

List all available aspect ratios for Luma video generation. Shows all available aspect ratio options with their use cases. Use this to understand which aspect ratio to choose for your video. Returns: Table of all aspect ratios with their descriptions and use cases.

No parameter schema in public metadata yet.

luma_list_actionsList all available Luma API actions and corresponding tools. Reference guide for what each action does and which tool to use. Helpful for understanding the full capabilities of the Luma MCP. Returns: Categorized list of all actions and their corresponding tools.

List all available Luma API actions and corresponding tools. Reference guide for what each action does and which tool to use. Helpful for understanding the full capabilities of the Luma MCP. Returns: Categorized list of all actions and their corresponding tools.

No parameter schema in public metadata yet.

luma_get_taskQuery the status and result of a video generation task. Use this to check if a generation is complete and retrieve the resulting video URLs, thumbnails, and other metadata. Use this when: - You want to check if a generation has completed - You need to retrieve video URLs from...1 params

Query the status and result of a video generation task. Use this to check if a generation is complete and retrieve the resulting video URLs, thumbnails, and other metadata. Use this when: - You want to check if a generation has completed - You need to retrieve video URLs from...

Parameters* required
task_idstring
The task ID returned from a generation request. This is the 'task_id' field from any luma_generate_* or luma_extend_* tool response.
luma_get_tasks_batchQuery multiple video generation tasks at once. Efficiently check the status of multiple tasks in a single request. More efficient than calling luma_get_task multiple times. Use this when: - You have multiple pending generations to check - You want to get status of several vide...1 params

Query multiple video generation tasks at once. Efficiently check the status of multiple tasks in a single request. More efficient than calling luma_get_task multiple times. Use this when: - You have multiple pending generations to check - You want to get status of several vide...

Parameters* required
task_idsarray
List of task IDs to query. Maximum recommended batch size is 50 tasks.
luma_generate_videoGenerate AI video from a text prompt using Luma Dream Machine. This is the simplest way to create video - just describe what you want and Luma will generate a high-quality AI video. Use this when: - You want to create a video from a text description - You don't have reference...6 params

Generate AI video from a text prompt using Luma Dream Machine. This is the simplest way to create video - just describe what you want and Luma will generate a high-quality AI video. Use this when: - You want to create a video from a text description - You don't have reference...

Parameters* required
loopboolean
If true, generate a looping video where end connects seamlessly to start. Default is false.default: false
promptstring
Description of the video to generate. Be descriptive about the scene, motion, style, and mood. Examples: 'A cat walking through a garden with butterflies', 'Astronauts shuttle from space to volcano', 'Ocean waves crashing on a beach at sunset'
timeoutvalue
Timeout in seconds for the API to return data. Default is 300.
enhancementboolean
If true, enable clarity enhancement for the video. Default is true.default: true
aspect_ratiostring
Video aspect ratio. Options: '16:9' (landscape, default), '9:16' (portrait), '1:1' (square), '4:3', '3:4', '21:9' (ultrawide), '9:21'.one of 16:9 · 9:16 · 1:1 · 4:3 · 3:4 · 21:9default: 16:9
callback_urlvalue
Webhook callback URL for asynchronous notifications. When provided, the API will call this URL when the video is generated.
luma_generate_video_from_imageGenerate AI video using reference images as start and/or end frames. This allows you to control the video by specifying what the first frame and/or last frame should look like. Luma will generate smooth motion between them. Use this when: - You have a specific image you want t...8 params

Generate AI video using reference images as start and/or end frames. This allows you to control the video by specifying what the first frame and/or last frame should look like. Luma will generate smooth motion between them. Use this when: - You have a specific image you want t...

Parameters* required
loopboolean
If true, generate a looping video. Default is false.default: false
promptstring
Description of the video motion and content. Describe what should happen in the video, how objects should move, what transitions to include.
timeoutvalue
Timeout in seconds for the API to return data. Default is 300.
enhancementboolean
If true, enable clarity enhancement. Default is true.default: true
aspect_ratiostring
Video aspect ratio. Usually should match your input image ratio.one of 16:9 · 9:16 · 1:1 · 4:3 · 3:4 · 21:9default: 16:9
callback_urlvalue
Webhook callback URL for asynchronous notifications. When provided, the API will call this URL when the video is generated.
end_image_urlstring
URL of the image to use as the last frame of the video. The video will animate towards this image.default:
start_image_urlstring
URL of the image to use as the first frame of the video. The video will animate from this image.default:
luma_extend_videoExtend an existing video with additional content. This allows you to continue a previously generated video, adding more motion and content after the original video ends. Use this when: - A generated video is too short and you want to add more - You want to continue the story o...3 params

Extend an existing video with additional content. This allows you to continue a previously generated video, adding more motion and content after the original video ends. Use this when: - A generated video is too short and you want to add more - You want to continue the story o...

Parameters* required
promptstring
Description of what should happen in the extended portion of the video. Describe the continuation of motion and new content.
video_idstring
ID of the video to extend. This is the 'video_id' field from a previous generation result.
end_image_urlstring
Optional URL of an image to use as the final frame of the extended video.default:
luma_extend_video_from_urlExtend an existing video using its URL. Similar to luma_extend_video, but uses the video URL instead of video ID. This is useful when you have the video URL but not the original video ID. Use this when: - You have the video URL from a previous generation - You want to extend a...3 params

Extend an existing video using its URL. Similar to luma_extend_video, but uses the video URL instead of video ID. This is useful when you have the video URL but not the original video ID. Use this when: - You have the video URL from a previous generation - You want to extend a...

Parameters* required
promptstring
Description of what should happen in the extended portion of the video.
video_urlstring
URL of the video to extend. Must be a valid video URL from a previous Luma generation.
end_image_urlstring
Optional URL of an image to use as the final frame of the extended video.default:

LumaMCP

PyPI version PyPI downloads Python 3.10+ License: MIT MCP

A Model Context Protocol (MCP) server for AI video generation using Luma Dream Machine through the AceDataCloud API.

Generate AI videos directly from Claude, VS Code, or any MCP-compatible client.

Features

  • Text to Video - Create AI-generated videos from text prompts
  • Image to Video - Animate images with start/end frame control
  • Video Extension - Extend existing videos with additional content
  • Multiple Aspect Ratios - Support for 16:9, 9:16, 1:1, and more
  • Loop Videos - Create seamlessly looping animations
  • Clarity Enhancement - Optional video quality enhancement
  • Task Tracking - Monitor generation progress and retrieve results

Tool Reference

ToolDescription
luma_generate_videoGenerate AI video from a text prompt using Luma Dream Machine.
luma_generate_video_from_imageGenerate AI video using reference images as start and/or end frames.
luma_extend_videoExtend an existing video with additional content.
luma_extend_video_from_urlExtend an existing video using its URL.
luma_get_taskQuery the status and result of a video generation task.
luma_get_tasks_batchQuery multiple video generation tasks at once.
luma_list_aspect_ratiosList all available aspect ratios for Luma video generation.
luma_list_actionsList all available Luma API actions and corresponding tools.

Quick Start

1. Get Your API Token

  1. Sign up at AceDataCloud Platform
  2. Go to the API documentation page
  3. Click "Acquire" to get your API token
  4. Copy the token for use below

2. Use the Hosted Server (Recommended)

AceDataCloud hosts a managed MCP server — no local installation required.

Endpoint: https://luma.mcp.acedata.cloud/mcp

All requests require a Bearer token. Use the API token from Step 1.

Claude.ai

Connect directly on Claude.ai with OAuth — no API token needed:

  1. Go to Claude.ai Settings → Integrations → Add More
  2. Enter the server URL: https://luma.mcp.acedata.cloud/mcp
  3. Complete the OAuth login flow
  4. Start using the tools in your conversation

Claude Desktop

Add to your config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "luma": {
      "type": "streamable-http",
      "url": "https://luma.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cursor / Windsurf

Add to your MCP config (.cursor/mcp.json or .windsurf/mcp.json):

{
  "mcpServers": {
    "luma": {
      "type": "streamable-http",
      "url": "https://luma.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

VS Code (Copilot)

Add to your VS Code MCP config (.vscode/mcp.json):

{
  "servers": {
    "luma": {
      "type": "streamable-http",
      "url": "https://luma.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Or install the Ace Data Cloud MCP extension for VS Code, which registers the hosted MCP servers with one-click setup.

JetBrains IDEs

  1. Go to Settings → Tools → AI Assistant → Model Context Protocol (MCP)
  2. Click Add → HTTP
  3. Paste:
{
  "mcpServers": {
    "luma": {
      "url": "https://luma.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Claude Code

Claude Code supports MCP servers natively:

claude mcp add luma --transport http https://luma.mcp.acedata.cloud/mcp \
  -h "Authorization: Bearer YOUR_API_TOKEN"

Or add to your project's .mcp.json:

{
  "mcpServers": {
    "luma": {
      "type": "streamable-http",
      "url": "https://luma.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cline

Add to Cline's MCP settings (.cline/mcp_settings.json):

{
  "mcpServers": {
    "luma": {
      "type": "streamable-http",
      "url": "https://luma.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Amazon Q Developer

Add to your MCP configuration:

{
  "mcpServers": {
    "luma": {
      "type": "streamable-http",
      "url": "https://luma.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Roo Code

Add to Roo Code MCP settings:

{
  "mcpServers": {
    "luma": {
      "type": "streamable-http",
      "url": "https://luma.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Continue.dev

Add to .continue/config.yaml:

mcpServers:
  - name: luma
    type: streamable-http
    url: https://luma.mcp.acedata.cloud/mcp
    headers:
      Authorization: "Bearer YOUR_API_TOKEN"

Zed

Add to Zed's settings (~/.config/zed/settings.json):

{
  "language_models": {
    "mcp_servers": {
      "luma": {
        "url": "https://luma.mcp.acedata.cloud/mcp",
        "headers": {
          "Authorization": "Bearer YOUR_API_TOKEN"
        }
      }
    }
  }
}

cURL Test

# Health check (no auth required)
curl https://luma.mcp.acedata.cloud/health

# MCP initialize
curl -X POST https://luma.mcp.acedata.cloud/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'

3. Or Run Locally (Alternative)

If you prefer to run the server on your own machine:

# Install from PyPI
pip install mcp-luma
# or
uvx mcp-luma

# Set your API token
export ACEDATACLOUD_API_TOKEN="your_token_here"

# Run (stdio mode for Claude Desktop / local clients)
mcp-luma

# Run (HTTP mode for remote access)
mcp-luma --transport http --port 8000

Claude Desktop (Local)

{
  "mcpServers": {
    "luma": {
      "command": "uvx",
      "args": ["mcp-luma"],
      "env": {
        "ACEDATACLOUD_API_TOKEN": "your_token_here"
      }
    }
  }
}

Docker (Self-Hosting)

docker pull ghcr.io/acedatacloud/mcp-luma:latest
docker run -p 8000:8000 ghcr.io/acedatacloud/mcp-luma:latest

Clients connect with their own Bearer token — the server extracts the token from each request's Authorization header.

Available Tools

Video Generation

ToolDescription
luma_generate_videoGenerate video from a text prompt
luma_generate_video_from_imageGenerate video using reference images
luma_extend_videoExtend an existing video by ID
luma_extend_video_from_urlExtend an existing video by URL

Tasks

ToolDescription
luma_get_taskQuery a single task status
luma_get_tasks_batchQuery multiple tasks at once

Information

ToolDescription
luma_list_aspect_ratiosList available aspect ratios
luma_list_actionsList available API actions

Usage Examples

Generate Video from Prompt

User: Create a video of waves on a beach

Claude: I'll generate a beach wave video for you.
[Calls luma_generate_video with prompt="Ocean waves gently crashing on sandy beach, sunset"]

Animate an Image

User: Animate this image: https://example.com/image.jpg

Claude: I'll create a video from your image.
[Calls luma_generate_video_from_image with start_image_url and appropriate prompt]

Extend a Video

User: Continue this video with more action

Claude: I'll extend the video with additional content.
[Calls luma_extend_video with video_id and new prompt]

Available Aspect Ratios

Aspect RatioDescriptionUse Case
16:9Landscape (default)YouTube, TV, presentations
9:16PortraitTikTok, Instagram Reels
1:1SquareInstagram posts
4:3TraditionalClassic video format
3:4Portrait traditionalPortrait content
21:9UltrawideCinematic content
9:21Tall ultrawideSpecial vertical displays

Configuration

Environment Variables

VariableDescriptionDefault
ACEDATACLOUD_API_TOKENAPI token from AceDataCloudRequired
ACEDATACLOUD_API_BASE_URLAPI base URLhttps://api.acedata.cloud
ACEDATACLOUD_OAUTH_CLIENT_IDOAuth client ID (hosted mode)—
ACEDATACLOUD_PLATFORM_BASE_URLPlatform base URLhttps://platform.acedata.cloud
LUMA_DEFAULT_ASPECT_RATIODefault aspect ratio16:9
LUMA_REQUEST_TIMEOUTRequest timeout in seconds1800
LOG_LEVELLogging levelINFO

Command Line Options

mcp-luma --help

Options:
  --version          Show version
  --transport        Transport mode: stdio (default) or http
  --port             Port for HTTP transport (default: 8000)

Development

Setup Development Environment

# Clone repository
git clone https://github.com/AceDataCloud/LumaMCP.git
cd LumaMCP

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # or `.venv\Scripts\activate` on Windows

# Install with dev dependencies
pip install -e ".[dev,test]"

Run Tests

# Run unit tests
pytest

# Run with coverage
pytest --cov=core --cov=tools

# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration

Code Quality

# Format code
ruff format .

# Lint code
ruff check .

# Type check
mypy core tools

Build & Publish

# Install build dependencies
pip install -e ".[release]"

# Build package
python -m build

# Upload to PyPI
twine upload dist/*

Project Structure

LumaMCP/
├── core/                   # Core modules
│   ├── __init__.py
│   ├── client.py          # HTTP client for Luma API
│   ├── config.py          # Configuration management
│   ├── exceptions.py      # Custom exceptions
│   ├── server.py          # MCP server initialization
│   ├── types.py           # Type definitions
│   └── utils.py           # Utility functions
├── tools/                  # MCP tool definitions
│   ├── __init__.py
│   ├── video_tools.py     # Video generation tools
│   ├── task_tools.py      # Task query tools
│   └── info_tools.py      # Information tools
├── prompts/                # MCP prompts
│   └── __init__.py        # Prompt templates
├── tests/                  # Test suite
│   ├── conftest.py
│   ├── test_client.py
│   ├── test_config.py
│   ├── test_integration.py
│   └── test_utils.py
├── deploy/                 # Deployment configs
│   └── production/
│       ├── deployment.yaml
│       ├── ingress.yaml
│       └── service.yaml
├── .env.example           # Environment template
├── .gitignore
├── CHANGELOG.md
├── Dockerfile             # Docker image for HTTP mode
├── docker-compose.yaml    # Docker Compose config
├── LICENSE
├── main.py                # Entry point
├── pyproject.toml         # Project configuration
└── README.md

API Reference

This server wraps the AceDataCloud Luma API:

  • Luma Videos API - Video generation
  • Luma Tasks API - Task queries

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing)
  5. Open a Pull Request

License

MIT License - see LICENSE for details.

Links

  • AceDataCloud Platform
  • Luma Dream Machine
  • Model Context Protocol
  • MCP Python SDK

Made with love by AceDataCloud

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Configuration

ACEDATACLOUD_API_TOKEN*secret

API token from Ace Data Cloud (https://platform.acedata.cloud)

Categories
Media & Entertainment
Registryactive
Packagemcp-luma
TransportSTDIO, HTTP
AuthRequired
UpdatedJun 9, 2026
View on GitHub

Related Media & Entertainment MCP Servers

View all →
Social Media Api

io.github.socialapishub/social-media-api

Unified social media API for AI agents. Access Facebook, Instagram, TikTok, and more.
1
xpay Social Media

io.github.xpaysh/social-media

96 social media scraping tools. Twitter/X, LinkedIn, Instagram, TikTok, Reddit, YouTube.
Youtube Media Mcp Server

com.thenextgennexus/youtube-media-mcp-server

YouTube video search with transcript extraction as first-class output.
Youtube Video Analyzer

io.github.ludmila-omlopes/youtube-video-analyzer

MCP stdio server for analyzing YouTube videos with Google Gemini
2
Social Media Ai Mcp

csoai-org/social-media-ai-mcp

social-media-ai-mcp MCP server by MEOK AI Labs
EzBiz Social Media Analytics

com.ezbizservices/social-media

AI-powered social media intelligence: profile analysis, engagement scoring, and trend detection.