Skip to main content
Glama

Start a video with Google Flow (spends credits)

generate_video

Create Veo or Omni videos and video-to-video edits, approving Flow's credit quote only when it stays within your max_credits limit.

Instructions

Shortcut for flow_chat + flow_approve: asks the agent for a video and approves its quote only when it is at or below max_credits (default 10 = one 8 s Veo 3.1 Lite video on a free account), otherwise rejects. SPENDS FLOW CREDITS: tell the user the expected cost and check flow_credits first; never call it again to retry. Returns as soon as the render has started: 'started' (collect the mp4 with flow_wait, passing media ids or since), 'needs_answer' (the agent asked something: show the user and reply with flow_chat), 'over_budget' (nothing spent) or 'failed' (Flow failed the render right away; failures has its message). Every result includes the agent's messages. A source_video makes it an Omni video-to-video edit (20 credits at 720p, same length as the clip). Inputs given a role (start_frame, end_frame, ingredients, source_video: each a local file or a project media id) are numbered and explained to the agent; prefer them to plain attachments. Veo takes either frames (image-to-video) or ingredients (reference-to-video), not both: given both, the agent asks which to use (needs_answer, nothing spent).

Input Schema

NameRequiredDescriptionDefault
modelNoDefaults to the project's video model
promptYesThe video to make: shot size and camera move, subject, action, setting, style and lighting, audio
end_frameNoImage the video ends on (local path or media id)
media_idsNoMedia already in the project to attach (ids from flow_assets)
charactersNoFlow characters of this project to include, by name or id (flow_characters): they keep their look, and their voice in video
project_idNoExisting project (flow_projects). Use it to keep working on the same piece.
attachmentsNoOther local files, without a stated role; prefer the role fields above. Uploaded once per project
ingredientsNoCharacter, object, setting or style references to keep the look of (local paths or media ids); plain backgrounds work best
max_creditsNoHighest credit cost to approve (default 10). Above it the request is rejected and nothing is spent.
new_sessionNoStart a fresh agent chat in the project (media kept, conversation memory reset)
start_frameNoImage the video opens on (local path or media id), e.g. the last frame of the previous shot from flow_frame
aspect_ratioNo
source_videoNoVideo to edit or restyle (local path or media id): an Omni video-to-video edit
confirm_rightsNoThe user confirmed they hold the rights to the attached files; Flow asks this on upload
project_purposeNoFor a new project: one line on what it is for
new_project_titleNoInstead: create a new project with this title, for a new idea or deliverable

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so: it discloses credit spend, budget gating, the non-retry rule, and enumerates all four return states including which ones spend nothing ('over_budget' → nothing spent). The frames-vs-ingredients conflict path ('needs_answer, nothing spent') is exactly the kind of behavior an agent cannot infer elsewhere.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but nearly every clause carries decision-relevant information, and it is front-loaded with the shortcut framing and the credit warning. It is one long undifferentiated paragraph, though, so the return-state enumeration and the frames/ingredients rule are harder to scan than they should be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 16-parameter, no-annotation, no-output-schema mutation tool, the description covers cost, budget, return values, failure handling, follow-up tooling and parameter interaction rules. Nothing an agent needs to call this safely for the first time is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Adds genuine meaning beyond the 94%-covered schema: source_video is revealed to trigger an Omni video-to-video edit at 20 credits/720p, max_credits default is anchored to 'one 8 s Veo 3.1 Lite video', and role fields are explained as numbered to the agent. It does not touch model, characters, new_session, aspect_ratio or confirm_rights, but those are adequately described in schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('asks the agent for a video and approves its quote') and frames itself as a composite shortcut for flow_chat + flow_approve, which immediately distinguishes it from those siblings. The cost implication ('SPENDS FLOW CREDITS') is front-loaded in the second sentence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly prescribes pre-call behavior ('tell the user the expected cost and check flow_credits first'), an exclusions rule ('never call it again to retry'), and a preference between parameters ('prefer them to plain attachments'). It also names the downstream tools to use per outcome (flow_wait, flow_chat), leaving little to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.