Skip to content

Environment Variables

Set these variables in the env block of your MCP client configuration file (.vscode/mcp.json, .mcp.json, etc.).

VariableDescriptionDefault
GEMINI_API_KEYGoogle API key for Gemini (video and audio)
Z_AI_API_KEYZ.AI API key for GLM-4.6V
DASHSCOPE_API_KEYAlibaba Cloud API key for Qwen3.6
MOONSHOT_API_KEYMoonshot AI API key for Kimi K2.6
MIMO_API_KEYXiaomi MiMo API key for MiMo-V2 Omni
VIDEO_MCP_DEFAULT_PROVIDERDefault video provider: gemini, glm, qwen, kimi, or mimogemini

See Video Providers for details on each provider, pricing, and where to get API keys.

VariableDescriptionDefault
AWS_S3_BUCKETS3 bucket name for automatic video relay. Enables GLM/Qwen/MiMo to bypass the 10–12 MB local file limit.
AWS_ACCESS_KEY_IDAWS access key ID. Not needed if using ~/.aws/credentials or an IAM role.
AWS_SECRET_ACCESS_KEYAWS secret access key. Required alongside AWS_ACCESS_KEY_ID.
AWS_REGIONAWS region for the S3 bucket (e.g. us-east-1).
AWS_S3_RELAY_CLEANUPSet to false to keep relayed objects across sessions. Default: deleted at session end + orphans swept at startup.true

See S3 Relay for the full setup guide.

VariableDescriptionDefault
DEEPGRAM_API_KEYDeepgram API key
ASSEMBLYAI_API_KEYAssemblyAI API key
GROQ_API_KEYGroq API key for Whisper transcription
AUDIO_MCP_DEFAULT_PROVIDERDefault audio provider: deepgram, assemblyai, groq, or geminideepgram
AUDIO_ENHANCE_VIDEO_ANALYSISInject audio transcripts into analyze_video/summarize_video prompts (GLM/Kimi/Qwen/MiMo). auto = when audio detected; true = always; false = disabled.auto

See Audio Providers for provider comparison and diarization/translation support.

VariableDescriptionDefault
VIDEO_MCP_CACHE_TTL_MINUTESHow long video artifacts (video file, frames, audio, transcripts) are cached. Set 0 to disable caching.43200 (30 days)
VIDEO_MCP_CACHE_MAX_ENTRIESMaximum number of entries in the artifact cache. LRU eviction at the video level. Set 0 for unbounded.100
VIDEO_MCP_CACHE_MAX_MBMaximum total disk usage for the cache (MB). LRU eviction when exceeded. Set 0 to disable the limit.5120 (5 GB)

See Caching & CLI for cache location details and management commands.

VariableDescriptionDefault
VIDEO_MCP_MAX_FRAMESMaximum keyframes for summarize_video (GLM/Qwen/MiMo when S3 relay is not configured; Kimi only when video > 100 MB; Gemini always uploads full video). Free: clamped 5–50. Pro: default 100; set 0 for uncapped. Bypassed entirely for GLM/Qwen/MiMo when S3 relay is configured.50 free / 100 pro
VariableDescriptionDefault
QWEN_BASE_URLOverride the DashScope API endpoint for regional routing. Singapore (default) / Virginia (https://dashscope-us.aliyuncs.com/compatible-mode/v1/chat/completions) / Beijing (https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions).https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions
QWEN_REQUEST_TIMEOUT_MSClient-side timeout in ms for Qwen API requests. DashScope’s server-side limit is ~5 minutes, so values above ~285 000 are unlikely to help.240000 (4 min)
VariableDescriptionDefault
GLM_REQUEST_TIMEOUT_MSClient-side timeout (ms) for GLM API requests. Z.AI has no hard server-side streaming timeout, so raising this value (e.g. 480000 for 8 minutes) can help when analysing long videos with many frames.240000 (4 min)
VariableDescriptionDefault
MIMO_REQUEST_TIMEOUT_MSClient-side timeout (ms) for MiMo API requests.240000 (4 min)
VariableDescriptionDefault
YT_DLP_MAX_RESOLUTIONMax video height (px) for yt-dlp downloads. Free users are capped at 720.720
YT_DLP_PATHPath to a custom yt-dlp binary. If unset, auto-detects common installation paths (WinGet, Homebrew, pip, etc.) then falls back to the bundled binary.
YT_DLP_COOKIES_FILEPath to a Netscape-format cookies file for authenticated downloads (age-restricted, private videos).
YT_DLP_IMPERSONATEBrowser to impersonate (e.g. chrome, firefox). Needed for sites like Udemy that block non-browser user-agents; requires a yt-dlp build with curl_cffi support.
VariableDescriptionDefault
VIDEO_MCP_LICENSE_KEYPro license key. Unlocks extended frames, platform downloads beyond YouTube, resolution above 720p, and all media generation tools. Valid 1 year.

See Pro Tier for details on what the Pro tier unlocks.

Required for all media generation tools (text_to_speech, generate_image, generate_video, generate_music, query_generation_task). All generation tools also require a Pro license.

VariableDescriptionDefault
MINIMAX_API_KEYMiniMax API key. Obtain from the MiniMax Interface Key page.
MINIMAX_BASE_URLOverride the MiniMax API base URL (e.g. for regional routing or a proxy)https://api.minimax.io
MINIMAX_REQUEST_TIMEOUT_MSClient-side timeout (ms) for MiniMax API requests. Increase if initial API calls time out on slow networks.240000 (4 min)
{
"servers": {
"videoMcp": {
"type": "stdio",
"command": "video-context-mcp",
"env": {
"GEMINI_API_KEY": "your-gemini-key",
"Z_AI_API_KEY": "your-zai-key",
"DASHSCOPE_API_KEY": "your-dashscope-key",
"MOONSHOT_API_KEY": "your-moonshot-key",
"MIMO_API_KEY": "your-mimo-key",
"VIDEO_MCP_DEFAULT_PROVIDER": "gemini",
"DEEPGRAM_API_KEY": "your-deepgram-key",
"ASSEMBLYAI_API_KEY": "your-assemblyai-key",
"GROQ_API_KEY": "your-groq-key",
"AUDIO_MCP_DEFAULT_PROVIDER": "deepgram",
"AUDIO_ENHANCE_VIDEO_ANALYSIS": "auto",
"AWS_S3_BUCKET": "my-video-analysis",
"AWS_ACCESS_KEY_ID": "your-aws-access-key",
"AWS_SECRET_ACCESS_KEY": "your-aws-secret-key",
"AWS_REGION": "us-east-1",
"AWS_S3_RELAY_CLEANUP": "true",
"VIDEO_MCP_CACHE_TTL_MINUTES": "43200",
"VIDEO_MCP_CACHE_MAX_ENTRIES": "100",
"VIDEO_MCP_CACHE_MAX_MB": "5120",
"VIDEO_MCP_MAX_FRAMES": "50",
"QWEN_BASE_URL": "https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions",
"QWEN_REQUEST_TIMEOUT_MS": "240000",
"GLM_REQUEST_TIMEOUT_MS": "240000",
"MIMO_REQUEST_TIMEOUT_MS": "240000",
"YT_DLP_MAX_RESOLUTION": "720",
"YT_DLP_PATH": "/usr/local/bin/yt-dlp",
"YT_DLP_COOKIES_FILE": "/path/to/cookies.txt",
"YT_DLP_IMPERSONATE": "chrome",
"VIDEO_MCP_LICENSE_KEY": "your-license-key",
"MINIMAX_API_KEY": "your-minimax-key",
"MINIMAX_BASE_URL": "https://api.minimax.io",
"MINIMAX_REQUEST_TIMEOUT_MS": "240000"
}
}
}
}

Remove or omit any variables you don’t need — unset optional vars fall back to their defaults.