# elevate-labs-mcp

MCP server for the [Elevate Labs API](https://elevate.uno/dashboard/api) — generate TTS audio, AI images, AI videos, and chat with 40+ LLM models directly from Claude Code, Claude Desktop, Cursor, and other MCP-compatible tools.

## Setup

### Claude Code

```bash
claude mcp add elevate-labs -- npx elevate-labs-mcp
```

Then set your API key:

```bash
claude mcp add elevate-labs -e ELEVATE_API_KEY=your_key_here -- npx elevate-labs-mcp
```

### Claude Desktop

Add to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "elevate-labs": {
      "command": "npx",
      "args": ["elevate-labs-mcp"],
      "env": {
        "ELEVATE_API_KEY": "your_key_here"
      }
    }
  }
}
```

### Get your API key

Sign up at [elevate.uno/dashboard/api](https://elevate.uno/dashboard/api) to get your API key.

## Available Tools

### Media Generation

| Tool | Description |
|---|---|
| `generate_tts` | Text-to-speech using ElevenLabs voices. Polls until the MP3 is ready and returns the URL. |
| `generate_image` | AI image generation from text. Supports reference images for style transfer, editing, and remixing. |
| `generate_video` | AI video generation from text or a source image. Videos take 2-5 minutes. |
| `get_task` | Check the status of any media task by ID. |
| `list_tasks` | List your recent media tasks (TTS, image, or video). |
| `get_usage` | Check your current rate limits and concurrent task usage. |
| `get_media_types` | List available media types and their accepted parameters. |
| `generate_qr` | QR code for a URL or text, returned inline (PNG image or SVG). Optional centered logo, colors, size, error correction. 5/min. |

### Chat (LLM)

| Tool | Description |
|---|---|
| `chat_completion` | Chat with 40+ AI models (Claude, GPT, Gemini, DeepSeek, Grok, Llama, etc). Uses streaming internally for long responses. |
| `list_models` | List all available chat models and their providers. |
| `get_chat_usage` | Check your chat rate limits (concurrent, RPM, daily tokens). |

### YouTube Analytics

Covers the channels you have connected at [elevate.uno/dashboard/youtube-analytics](https://elevate.uno/dashboard/youtube-analytics).

| Tool | Description |
|---|---|
| `list_youtube_channels` | List your connected channels, optionally with a 7-day stats summary. |
| `get_channel_stats` | Daily stats for one channel over a date range. |
| `list_youtube_videos` | List videos for a channel — sortable, searchable, paginated. |
| `get_video_daily` | Daily breakdown for one video (views, watch time, revenue, likes, CTR). |
| `get_video_retention` | Audience retention curve: where viewers drop off and how the video ranks against similar videos at each moment. Prints a chart in the terminal. Your own videos only — YouTube does not expose retention for videos you don't own. Limit 100 new videos/day; cached ones are free. |

### Course

| Tool | Description |
|---|---|
| `list_course_chapters` | List published Elevate course chapters that have written content you can read. Optionally filter by section. |
| `get_course_chapter` | Get the full markdown of one course chapter so the model can answer your questions from it. |

## Examples

Once configured, just ask Claude naturally:

- *"Generate a voiceover for this script using voice EXAVITQu4vr4xnSDxMaL"*
- *"Create a thumbnail image: a sunset over mountains, landscape format"*
- *"Generate a video of a ball bouncing on a table"*
- *"Use Elevate to ask GPT-5 to summarize this document"*
- *"Check my API usage"*
- *"Show me the retention curve for https://youtu.be/VIDEO_ID and tell me where I'm losing people"*
- *"What does the Elevate course say about setting up a YouTube channel?"* (reads the course content and answers)

### Parallel workflows

Claude can call multiple tools concurrently, so you can run multi-step pipelines:

1. Research a niche
2. Generate a script with Claude
3. Generate voiceover with `generate_tts`
4. Generate a thumbnail with `generate_image`

All in a single conversation.

### Reference images

For image editing and style transfer, pass a base64 data URL:

- **style** — generate a new image copying the visual style of the reference
- **edit** — transform/modify the reference image directly
- **subject** — keep the subject from the reference in a new scene
- **scene** — use the reference as the background/setting

### Image-to-video

Pass a `source_image` to `generate_video` to animate a still image based on your prompt.

## Rate Limits

Limits scale with your subscription units:

| Media | Concurrent | Hourly |
|---|---|---|
| TTS | = units | unlimited |
| Image | = units | 50 + 50 x units |
| Video | 1 | 10 + 10 x units |

Chat: 1 concurrent/unit, 5 RPM/unit, 2M + 1M/extra unit tokens/day.

## License

MIT
