Skip the install. Get this working in under 2 minutes.
Start a free trial on cloud.anythingmcp.com, add the HeyGen in one click, then point your AI client (Claude, ChatGPT, Copilot or Cursor) at the generated MCP endpoint. No Docker, no git clone, zero engineering experience required.
Summary
Let your AI make HeyGen avatar videos with your own key: pick avatars and voices, turn a script or a prompt into a talking video, fill your templates, translate videos into other languages with lip-sync, create photo avatars, and check renders and your balance.
Try asking
Example prompts for HeyGen
Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.
Claude is AI and can make mistakes. Please double-check responses.
💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → HeyGen, paste your credentials, mint an MCP API key and you're done. No Docker, no
git clone, no local server.
HeyGen + Gemini
Let your AI make HeyGen avatar videos with your own key: pick avatars and voices, turn a script or a prompt into a talking video, fill your templates, translate videos into other languages with lip-sync, create photo avatars, and check renders and your balance.
Prerequisites
See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:
HEYGEN_API_KEY
Step 1 — Get credentials
- Sign in at
https://app.heygen.comand open the API dashboard (https://app.heygen.com/developers/api). - Generate an API key and copy it. API usage is billed separately from a HeyGen web subscription: add balance or a payment method there if the account has none.
- Paste the key into
HEYGEN_API_KEYand install the connector. The key is sent only to HeyGen. A key restricted to some scopes needs read access to avatars, voices, videos, templates, translations and the user, and write access for the tools that create. - Start with
heygen_get_account: it shows your billing type and what you have left to spend.
Billed to your HeyGen API balance: videos, translations and avatars are paid from your API balance (a pay-as-you-go wallet or your plan's credits). HeyGen bills video by length and engine; the current prices are in the API dashboard, and a refused call (402) says how much was needed. Listing and checking is free.
Confirm first: before heygen_create_video, heygen_generate_from_template, heygen_create_agent_video or heygen_translate_video, the AI tells you what will be made (avatar, voice, script length, format, languages, engine) and waits for your yes. heygen_create_photo_avatar only takes a photo of someone who agreed to it, such as yourself, and the AI asks you to confirm that you have that right. heygen_delete_video is switched off at install.
How a video is made:
- The AI picks a character with
heygen_list_avatar_groupsand one of its looks withheygen_list_avatar_looks; the look is the presenter. A voice fromheygen_list_voicesis optional, otherwise the avatar's own voice speaks. heygen_create_videotakes the script (up to 5,000 characters), the format (for example 9:16 for shorts) and the engine, and returns a video id at once.- The video renders in the background. The AI checks
heygen_get_videoabout every 30 seconds; a render takes from a minute to several minutes, longer for long scripts. - The finished video comes with an MP4 link, a captioned version, SRT subtitles and a link to the video in HeyGen. Download links expire; ask again for fresh ones.
Other ways to make a video:
- Templates:
heygen_list_templatesandheygen_get_templateshow your API-ready templates and their variables;heygen_generate_from_templatefills every text variable and renders the video. - Video Agent:
heygen_create_agent_videoturns a prompt into a whole video (script, scenes, avatar);heygen_get_agent_sessionfollows it until the video renders. - Translation:
heygen_translate_videotranslates a video from a public link into one or more languages, with the speaker's cloned voice and lip-sync or as audio only;heygen_list_translation_languageslists the target languages. - Photo avatar:
heygen_create_photo_avatarmakes a presenter from one portrait;heygen_get_avatar_lookshows when it is ready to use.
Engines: avatar_iv is the default. avatar_v gives the most natural motion, but only for looks that support it. avatar_iii supports 4K for digital twins and studio avatars.
Limits: 10 videos, translations or agent sessions rendering at once on pay-as-you-go (more on Enterprise), 300 list calls and 500 status checks a minute. Source files must be public links: video up to 100 MB, audio up to 50 MB and 10 minutes.
Common errors: 401: the key is wrong or revoked. 402 insufficient_credit: the balance does not cover this video, and the message says how much is needed. usage_limit_reached or trial_limit_exceeded: a workspace or trial limit that an admin or a paid plan lifts. 403 insufficient_api_key_scope: the key is restricted; give it the scopes listed above. 400 invalid_parameter: the message names the field, for example an engine the look does not support. 404: an id that does not exist; the AI checks it with the list tools. 429: too many requests; wait and retry once later.
The connector uses HeyGen's API v3 (HeyGen retires the older v1 and v2 endpoints on 31 October 2026). It does not cover multi-scene studio videos, image-to-video, lip-sync of existing videos, voice cloning and voice design, text to speech on its own, interactive streaming avatars, file uploads (sources must be public links), proofreading translations, webhooks, brand kits, folders or batches.
Step 2 — Install the adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Add the connector in Gemini
Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (
https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide showsYOUR_SERVER_ID.
Gemini CLI reads MCP servers from ~/.gemini/settings.json (on Windows %USERPROFILE%\.gemini\settings.json). Add:
{
"mcpServers": {
"anythingmcp": {
"httpUrl": "https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID",
"headers": { "X-API-Key": "YOUR_MCP_API_KEY" }
}
}
}
- Create an MCP API key in AnythingMCP under MCP Servers → your server → API keys, and paste it in place of
YOUR_MCP_API_KEY. - Save the file and restart
gemini. - Run
/mcpinside Gemini CLI (orgemini mcp listin your shell):anythingmcpshould show as connected. - Start prompting: Gemini CLI can now call the
HeyGentools.
Available tools
| Tool | What it does |
|---|---|
heygen_list_avatar_groups | List avatar characters (groups): HeyGen's public stock avatars and the user's own (digital twins, photo avatars), with id, name, gender… |
heygen_list_avatar_looks | List avatar looks (a character's outfits, poses and styles) |
heygen_get_avatar_look | Get one avatar look: type, character, default voice, supported engines, orientation, preview links and, for the user's own avatars, the… |
heygen_list_voices | List the voices a video can speak with: HeyGen's public voices or the user's own cloned voices, with id, name, language, gender and a… |
heygen_create_video | Make a talking avatar video: an avatar look speaks a script (or lip-syncs an audio file) |
heygen_get_video | Check a video (also one made from a template or by the video agent): status pending, processing, completed or failed |
heygen_list_videos | List the videos in the HeyGen account, newest first, with id, title, status, duration and links |
heygen_delete_video | Delete a video and its files from the HeyGen account |
heygen_list_templates | List the workspace's video templates that are ready for the API (templates are designed in the HeyGen editor; only those with variables… |
heygen_get_template | Get a template's variables with their current values (keyed by variable name, each with its type: text, image, video, audio, character or… |
heygen_generate_from_template | Make a video from a template by filling its variables |
heygen_list_translation_languages | List the target languages video translation supports, as the exact names heygen_translate_video expects (e.g |
heygen_translate_video | Translate a video into one or more languages with the speaker's cloned voice and matching lip movements (or the audio only) |
heygen_get_video_translation | Check a video translation: status pending, running, completed or failed |
heygen_list_video_translations | List the video translation jobs in the account with status, languages and links |
heygen_create_agent_video | Let HeyGen's Video Agent make a whole video from a prompt: it writes the script, picks an avatar (or uses the one given), builds the scenes… |
heygen_get_agent_session | Follow a Video Agent session: status (thinking, waiting_for_input, reviewing, generating, completed, failed), progress 0 to 100, title… |
heygen_create_photo_avatar | Create an avatar from one photo of a person, to use as a presenter in videos |
heygen_get_account | Show the HeyGen account behind the key and what it has left to spend: billing type and, depending on it, the API wallet balance (USD or… |
Example prompts
- "How much is left on my HeyGen API balance?"
- "Show me my own avatars and which of their looks work best in 9:16."
- "Make a 45-second 9:16 video with my digital twin reading this script. Confirm the avatar, voice and length with me first, then send me the MP4 link when it is ready."
- "Fill our weekly update template with these three news items and render it."
- "Translate this product demo video into Spanish (Spain) and Japanese with lip-sync and tell me when both versions are ready."
FAQ
Where does Gemini CLI look for MCP servers? In ~/.gemini/settings.json for your user, or in .gemini/settings.json inside a project. gemini mcp list shows each server and whether it connects.
Next steps
Was this guide helpful?