HeyGen Video MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HEYGEN_DATA_DIR | No | Optional persistent storage directory for receipts and job data. Local agents need access to the same data directory to resume jobs. | ~/.heygen-video-mcp |
| OPENROUTER_API_KEY | Yes | Your OpenRouter API key. Set it in the launching process environment or your host's secret store; the server does not load .env automatically. | |
| UV_PROJECT_ENVIRONMENT | No | Optional path for the virtual environment, e.g. C:\Users\YOUR_USER\.cache\heygen-video-mcp\venv. Required for Windows NAS/mapped-drive (UNC path) checkouts to avoid native DLL loading failures. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| 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 |
|---|---|
| heygen_estimateB | Fetch current capabilities and conservative USD SKU estimate. No generation or charge. Text-to-video only. |
| heygen_submitA | PAID: submit once AFTER explicit user approval. Record the user's consent in approval and their USD limit. Never invent either. Reuse request_key to recover a receipt; uncertain submissions must be reconciled manually. |
| heygen_receiptA | Read the saved request and job ID without generating again. UNKNOWN requires dashboard reconciliation. |
| heygen_statusB | Poll once. Wait about 30 seconds between polls. Terminal failures must not trigger automatic regeneration. |
| heygen_downloadA | Download an existing completed job into HEYGEN_DATA_DIR/outputs; never overwrite. Returns local path and SHA256. No new generation. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool has a clearly distinct role in the paid video-generation workflow: estimate, submit, recover receipt, poll status, and download. The descriptions sharply separate actions that might otherwise overlap, such as submit versus receipt and status versus download.
All tools use the same heygen_ prefix and readable snake_case, which keeps the set predictable. However, the suffix pattern mixes verbs (submit, download, estimate) with nouns (receipt, status), so it is not a strict verb_noun convention.
Five tools are well scoped to the single-video generation lifecycle, with no redundant or trivial tools. Each tool earns its place by covering a specific stage from cost estimation through download.
The surface covers the full core workflow for paid HeyGen generation: estimate cost, submit with approval, recover a saved receipt, poll status, and download a completed result. Optional extras like cancellation or listing jobs are not essential for the stated per-request lifecycle.