VideoGen顾问
一个用于视频生成的统一MCP服务器,可以智能地将请求路由到HeyGen(用于化身/演示者视频)或Google Veo(用于创意/电影内容)。
特性
- 智能路由:根据提示内容自动选择最佳服务
- HeyGen集成:基于头像的视频、自定义声音、模板
- 谷歌视觉整合:电影内容、图像到视频、创意视觉
- 统一接口:单人
generate_video具有自动服务选择功能的工具 - 完全控制:需要时直接访问特定服务工具
安装
pip install m2ai-mcp-videogen-advisor配置
将API键设置为环境变量:
export HEYGEN_API_KEY=your_heygen_api_key_here
export GEMINI_API_KEY=your_gemini_api_key_hereClaude桌面配置
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"videogen": {
"command": "videogen-advisor",
"env": {
"HEYGEN_API_KEY": "your_heygen_key",
"GEMINI_API_KEY": "your_gemini_key"
}
}
}
}或者直接用Python运行:
{
"mcpServers": {
"videogen": {
"command": "python",
"args": ["-m", "videogen_mcp.server"],
"env": {
"HEYGEN_API_KEY": "your_heygen_key",
"GEMINI_API_KEY": "your_gemini_key"
}
}
}
}可用工具
统一界面(3个工具)
| 工具 | 说明 |
|---|---|
generate_video | 通过智能路由生成视频至HeyGen或Veo |
get_video_status | 检查作业状态(适用于两种服务) |
download_video | 获取已完成视频的下载URL |
HeyGen专用(6个工具)
| 工具 | 说明 |
|---|---|
list_avatars | 列出可用头像(库存+自定义) |
list_voices | 列出化身视频的可用声音 |
create_avatar_video | 使用特定头像/语音创建视频 |
list_templates | 列出可用的视频模板 |
get_template_details | 获取模板变量和详细信息 |
generate_from_template | 从模板生成视频 |
Veo专用(2个工具)
| 工具 | 说明 |
|---|---|
generate_creative_video | 使用完整的Veo控件生成电影视频 |
generate_video_from_image | 将静态图像动画化为视频 |
使用示例
自动路由
"Create a video where someone presents our Q4 results"
→ Routes to HeyGen (presenter/speaking content)
"Cinematic aerial shot of mountains at sunset"
→ Routes to Veo (creative/visual content)明确的服务选择
# Force HeyGen
generate_video(
prompt="Create any video",
service_hint="heygen"
)
# Force Veo
generate_video(
prompt="A tutorial video",
service_hint="veo"
)HeyGen头像视频
# 1. List avatars and voices
avatars = list_avatars(filter_gender="female")
voices = list_voices(filter_language="en")
# 2. Create video
job = create_avatar_video(
script="Hello! Welcome to our company.",
avatar_id="Angela-inblackskirt-20220820",
voice_id="1bd001e7e50f421d891986aad5158bc8",
background={"type": "color", "value": "#0066CC"},
aspect_ratio="16:9"
)
# 3. Poll for completion
status = get_video_status(job_id=job["job_id"], service="heygen")
# 4. Download when complete
result = download_video(job_id=job["job_id"], service="heygen")Veo创意视频
# Generate cinematic content
job = generate_creative_video(
prompt="A slow dolly shot through a neon-lit Tokyo alley at night, rain reflections, cinematic color grading",
negative_prompt="blurry, low quality, text overlays",
aspect_ratio="16:9",
duration=8,
model="veo-3.1-generate-preview"
)
# Poll and download
status = get_video_status(job_id=job["job_id"], service="veo")
result = download_video(job_id=job["job_id"], service="veo")图像转视频
# Animate a still image
job = generate_video_from_image(
image_url="https://example.com/product-photo.jpg",
prompt="Slow zoom in with subtle product rotation",
duration=6
)路由逻辑
这 generate_video 该工具使用关键字检测来路由请求:
HeyGen触发器 (头像/演示者内容):
- 演讲、演示、解释、教程、化身、主持人、叙述者
- 演讲、宣布、介绍、演练、演示、发言人
Veo触发器 (创意/电影内容):
- 电影、场景、视觉、b-roll、动画、镜头、素材
- 风景、抽象、艺术、戏剧、航拍、延时摄影
模糊提示默认为Veo,除非检测到化身/演示者语言。
视频等待时间
- 嘿创:1-5分钟(因内容长度而异)
- 我看见:2-10分钟(因复杂程度而异)
投票 get_video_status 直到状态为 completed 或 failed.
错误处理
所有工具都返回结构化错误对象:
{
"error": true,
"code": "QUOTA_EXCEEDED",
"message": "API credits exhausted. Check your account."
}常见错误代码:
AUTH_FAILED-API密钥无效QUOTA_EXCEEDED-API信用额度耗尽INVALID_AVATAR/INVALID_VOICE-找不到IDCONTENT_BLOCKED-安全过滤器已触发VIDEO_NOT_READY-发电仍在进行中JOB_NOT_FOUND-作业ID无效
发展
# Run tests
pytest
# Run tests with coverage
pytest --cov=videogen_mcp
# Type checking
mypy src/
# Linting
ruff check src/ tests/许可证
MIT许可证
学分
- HeyGen API
- 谷歌查看API
- 由GRIMLOCK MCP工厂生成
