Video Avatars MCP 服务端

使用说明(Markdown格式)

  • 项目简介

    • 该仓库实现了一个名为 MediaGenerators 的 MCP 服务器,提供两类工具(generate_image、generate_video),并通过 Google ADK 构建了 Agent 与 Tool 的交互流程,旨在为 LLM 客户端提供图片与视频生成能力的上下文与执行能力。
  • 主要功能点

    • MCP 服务器:实现基于 MCP 的服务端框架,支持通过 JSON-RPC 与客户端通讯、资源和工具管理、会话与能力声明。
    • 工具实现:包含 generate_image(图像生成)和 generate_video(视频生成)的服务实现,基于 Gemini、Veo 等模型。
    • 与云端能力整合:存储在 Google Cloud Storage、使用 Vertex AI、对接 Cloud Run 等云服务,具备上传/下载媒体资产的能力。
    • 安全与鉴权:工具请求中集成基于身份的头信息提供者(IdentityTokenHeaderProvider),支持在云端和本地两种执行环境的鉴权。
    • 部署与运行:提供本地运行、云端部署与示例部署脚本,方便在不同环境中快速落地。
  • 安装步骤(简要)

    1. 确保使用 Python 3.11+,并安装依赖:
      • 安装 MCP 相关依赖与代理组件(参考 mcp/requirements.txt、agents 的依赖)。
    2. 配置环境变量与凭证:
      • 复制并编辑 .env 文件,设置 GOOGLE_CLOUD_PROJECT、AI_ASSETS_BUCKET、以及其他 Google Cloud 相关配置。
    3. 启动 MCP 服务器(本地示例):
      • 运行命令:python -m mcp.main(或直接执行 mcp/main.py),默认监听 http://localhost:8080。
    4. 启动代理/客户端(如有需要):
      • 使用 MCP 客户端连接服务器,参考下方的服务器配置示例。
    5. 部署到云端(可选):
      • 通过 Cloud Run 等方式将 MCP 服务器与前端代理一并部署。
  • 服务器配置(MCP 客户端需要提供的连接信息,注意这是给客户端的连接描述,不是服务器端代码) { "server_name": "MediaGenerators", "command": "python3", "args": ["-m", "mcp.main"], "notes": "启动 MediaGenerators MCP 服务器,默认监听 http://localhost:8080/mcp。请确保已在环境中配置了 Google Cloud 凭据与存储桶等必需参数。客户端通过该服务器的 /mcp 路径进行 JSON-RPC 调用。" }

  • 基本使用方法

    • 客户端连接:将上述服务器配置信息提供给 MCP 客户端,建立与服务器的 RPC 通道。
    • 调用流程:客户端发送 MCP 请求以读取资源、调用工具(如图像/视频生成工具)、获取或渲染 Prompts,服务器返回相应的 JSON-RPC 响应。
    • 资产管理:生成的媒体资产将上传至 Cloud Storage,并可通过提供的 URI(gs:// 或经过授权的 HTTP URL)进行访问。
  • 其他说明

    • 服务器默认使用 UTF-8,支持在本地或云环境中运行,具体可通过 deployment 脚本进行 Cloud Run 部署。

服务器信息