# Elai — how to use (mcp.ai)

Connect your Elai account and use 8 tools for AI content generation straight from your AI agent. Connect with your own API key. Elai is an AI video generation platform for creating, personalizing, translating, and rendering presenter-led videos from text, templates, and uploaded media.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_elai?ms=1787291220000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `elai_copy_video`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/elai`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/elai/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/elai/copy/video` — Create a draft copy of an existing video or template; the new draft counts against Elai's creation quota.
  - body: { folder_id?: string, create_template?: boolean, source_video_id: string }
- `POST https://api.mcp.ai/api/elai/create/story/video` — Create a Story video from text, HTML, or a web-page URL and generate its visual slides so it is ready for rendering. The video counts against Elai's creation quota; a failed slide-generation step auto
  - body: { source: string, folder_id?: string, source_type: string, fix_with_gpt?: boolean }
- `POST https://api.mcp.ai/api/elai/delete/video` — Permanently delete one Elai video or template. This cannot be undone, requires the exact known ID, and requires explicit confirmation.
  - body: { video_id: string, confirm_permanent_delete: boolean }
- `POST https://api.mcp.ai/api/elai/estimate/speech/duration` — Estimate how many seconds narration text will take with a selected Elai voice before modifying or rendering a video.
  - body: { text: string, language: string, provider: string, voice_id: string }
- `POST https://api.mcp.ai/api/elai/get/video` — Get a video's status, render URL, metadata, and optionally its full slide configuration.
  - body: { video_id: string, include_slides?: boolean }
- `POST https://api.mcp.ai/api/elai/list/avatars` — Find available avatars and variants as compact records, optionally limited to Realtime-compatible avatars.
  - body: { limit?: integer, gender?: string, offset?: integer, search?: string, realtime_compatible?: boolean }
- `POST https://api.mcp.ai/api/elai/list/videos` — List videos and templates as compact summaries, with filters and a continuation cursor for additional pages.
  - body: { sort?: string[], tags?: string[], limit?: integer, cursor?: string, deleted?: boolean, statuses?: string[], video_type?: string }
- `POST https://api.mcp.ai/api/elai/render/video` — Start asynchronous rendering of a prepared video, consuming paid rendering minutes. Requires confirm_paid_render=true. Use Get Video afterward to check status and obtain the final URL; this action doe
  - body: { video_id: string, confirm_paid_render: boolean }

## Example prompts
- "What can I do in Elai?"
- "Show me a summary of my Elai account"

## More
- Page: https://mcp.ai/elai
- Agent spec (llms.txt): https://mcp.ai/elai/llms.txt
- Postman collection: https://mcp.ai/elai/postman.json
