HeyGen MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HEYGEN_API_KEY | Yes | HeyGen API Key |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| userA | Manage HeyGen user account. RECOMMENDED: Call 'credits' before generating videos to check quota. Actions: 'info' - get user profile (username, email, plan); 'credits' - get remaining credits (IMPORTANT: check before video generation). |
| voicesA | Get available voices for video generation. REQUIRED: You need a voice_id to generate any video. Actions: 'list' - returns voices with id, name, language, gender. TIP: Match voice language to your script language. |
| avatarsA | Get available avatars (AI personas) for video generation. REQUIRED: You need an avatar_id to generate videos. Actions: 'list' - get all avatars with id, name, gender (START HERE); 'get' - get details for a specific avatar (requires avatar_id); 'list_groups' - get avatar groups (include_public=true for public); 'list_in_group' - get avatars in a group (requires group_id). TIP: Use 'list' first, then 'get' for details on a chosen avatar. |
| videosA | Generate AI avatar videos and check their status. WORKFLOW: 1) Get avatar_id, 2) Get voice_id, 3) Call 'generate', 4) Poll 'status' until complete. Actions: 'list' - get all videos (with status and video_url if complete); 'generate' - create video (REQUIRED: video_inputs_json - JSON array of scenes, even for single-scene videos. Each scene needs: character.avatar_id, voice.input_text, voice.voice_id. Optional: background with type/value/asset_id); 'generate_iv' - create video from photo with AI motion (REQUIRED: image_key, script, voice_id, video_title); 'status' - check if ready (REQUIRED: video_id). NOTE: Videos take 1-10+ min. Poll status until completed. |
| templatesA | Use pre-made video templates for easier video creation. EASIER THAN 'videos': Templates have pre-configured layouts. WORKFLOW: 1) 'list' templates, 2) 'get' to see variables, 3) 'generate' with variables, 4) Check status. Actions: 'list' - get all templates with id and name; 'get' - get template variables (REQUIRED: template_id); 'generate' - create video (REQUIRED: template_id; OPTIONAL: variables dict, title, test=True, caption=True). TIP: Use test=True to preview without using credits. |
| assetsA | Upload and manage media files (images, videos, audio). USE CASES: backgrounds, Avatar IV photos, custom audio. Actions: 'list' - get all assets with id, name, type, and url; 'upload' - upload file (REQUIRED: file_path; returns asset_id); 'delete' - remove asset (REQUIRED: asset_id). NOTE: For Avatar IV, upload photo first - asset_id is the image_key. |
| foldersA | Organize videos and assets into folders. OPTIONAL: Use folders to keep your HeyGen workspace organized. Actions: 'list' - get all folders with id and name; 'create' - create a new folder (REQUIRED: name); 'rename' - rename a folder (REQUIRED: folder_id, name); 'trash' - move folder to trash (REQUIRED: folder_id); 'restore' - recover folder from trash (REQUIRED: folder_id). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sbroenne/heygen-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server