RunAPI Luma MCP Server
Luma API access for AI agents: create video generation tasks, poll results, and check pricing through one focused MCP server.
Works with Claude Code, Codex, Cursor, Windsurf, VS Code, Roo Code, and any MCP-compatible host.
Install | Tools | Models | Agent Prompts | Configuration | Links
Why This Package?
@runapi.ai/luma-mcp is a focused Model Context Protocol server for the Luma model line on RunAPI.
It gives MCP-compatible assistants direct access to 1 endpoint and 1 model variant without loading the full RunAPI catalog.
Use this per-model server when an agent should stay scoped to Luma. Use @runapi.ai/mcp when one assistant should discover every RunAPI model line.
Install
Add it to Claude Code:
claude mcp add luma -s user -- npx -y @runapi.ai/luma-mcpUse project scope when the server should be shared with a repository:
claude mcp add luma -s project -- npx -y @runapi.ai/luma-mcpCodex, Cursor, Windsurf, VS Code, Roo Code, and other MCP hosts can use the same stdio command:
{
"mcpServers": {
"luma": {
"command": "npx",
"args": ["-y", "@runapi.ai/luma-mcp"],
"env": { "RUNAPI_API_KEY": "${RUNAPI_API_KEY}" }
}
}
}Create an API key at runapi.ai and expose it as RUNAPI_API_KEY. check_pricing can run without a key; task creation and status polling require one.
Ready-made examples are in examples/ for Claude, Cursor, Windsurf, VS Code, and Roo Code.
Tools
| Tool | Auth | Purpose |
|---|---|---|
modify_video |
Yes | Create a Luma modify video task and optionally wait for a terminal status. Returns the task id, status, output URLs, and pricing snapshot. |
get_task |
Yes | Fetch the current status and latest payload for an existing task. |
check_pricing |
No | Look up the current pricing snapshot for a Luma model and endpoint. |
Models
Luma covers 1 model variant across 1 endpoint. Each tool accepts the models listed for it:
| Tool | Models |
|---|---|
modify_video |
luma-modify-video |
Model availability can change between releases. Use check_pricing or the Luma model page for the current catalog view.
Agent Prompts
Ask your assistant in natural language; it can inspect pricing, create the task, and return the task id plus output URLs.
Create a task
Run a Luma modify video task with RunAPI.
The assistant can call check_pricing, then modify_video, and return the task id, status, and output URLs.
Submit without waiting
Create the task but don't wait for it to finish.
The assistant calls the create tool with wait: false and returns the task id. Check on it later with get_task.
Check pricing before creating
Check current Luma pricing, then create the task if it matches my request.
The assistant calls check_pricing and can link to the Luma model page for the canonical catalog entry.
Configuration
The server reads the API key in this order:
RUNAPI_API_KEYenvironment variable~/.config/runapi/config.json
Example config file:
{
"apiKey": "your_runapi_key"
}Do not commit real API keys. Get one at runapi.ai.
Links
| Resource | URL |
|---|---|
| Luma model page | https://runapi.ai/models/luma |
| npm package | @runapi.ai/luma-mcp |
| GitHub repository | runapi-ai/luma-mcp |
| RunAPI MCP overview | runapi.ai/mcp |
| RunAPI docs | runapi.ai/docs |
License
Licensed under the Apache License, Version 2.0.