Skip to main content
Glama

Google Flow Agent MCP Server by useapi.net (third-party)

Chat with the Flow agent

flow_agent_chat

Send a message to Google Flow's agent (it plans, writes storyboards and generates images and videos with Flow's models in the account's Flow project) and get its answer. Without chatId a new chat starts; with chatId the message continues that chat (one turn at a time per chat). Images, videos, voices and characters go in as referenceImage_N / referenceVideo_1 / referenceAudio_N / character_N and are named in the message as @referenceImage_1… (find them with flow_upload_image, flow_list_assets, flow_list_voices and flow_list_characters; references must belong to the chat's account). Sending waits for Google to accept the turn (usually 3-40 s), then follows the agent up to ~50 s in all and returns chatId, turn, status (completed / waiting_approval / failed / running), the agent's text, its tool calls, media (referenceId + url) and a pending permission request. When status is running, call flow_agent_get_chat (chatId, wait: true, after: lastEventId) for the rest. Chatting is free; what the agent generates costs Flow credits (in ask mode it asks first). POST /agent/chats or POST /agent/chats/{chatId}/messages, then GET /agent/chats/{chatId}/stream.

Input Schema

NameRequiredDescriptionDefault
emailNoNew chats only: the Google Flow account. When omitted, the account of the references, else one picked by the load balancer.
chatIdNoContinue this chat (from an earlier flow_agent_chat or flow_agent_list_chats). Omit to start a new chat.
messageYesWhat you say to the agent, up to 20000 characters. May name references as @referenceImage_1, @referenceAudio_1, @character_1…
projectIdNoNew chats only: a Flow project id for the chat, instead of the account's own agent project.
character_1NoA character: a reference id of the chat account's character (flow_list_characters). Name it @character_1 in the message to point the agent at it; unnamed, it is attached only.
character_2NoA character: a reference id of the chat account's character (flow_list_characters). Name it @character_2 in the message to point the agent at it; unnamed, it is attached only.
character_3NoA character: a reference id of the chat account's character (flow_list_characters). Name it @character_3 in the message to point the agent at it; unnamed, it is attached only.
character_4NoA character: a reference id of the chat account's character (flow_list_characters). Name it @character_4 in the message to point the agent at it; unnamed, it is attached only.
character_5NoA character: a reference id of the chat account's character (flow_list_characters). Name it @character_5 in the message to point the agent at it; unnamed, it is attached only.
character_6NoA character: a reference id of the chat account's character (flow_list_characters). Name it @character_6 in the message to point the agent at it; unnamed, it is attached only.
character_7NoA character: a reference id of the chat account's character (flow_list_characters). Name it @character_7 in the message to point the agent at it; unnamed, it is attached only.
referenceAudio_1NoA voice: a built-in voice name (Achird, Achernar, Algieba, Algenib, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Puck, Pulcherrima, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi) or a reference id of the chat account's custom voice (flow_list_voices). Name it @referenceAudio_1 in the message to point the agent at it; unnamed, it is attached only.
referenceAudio_2NoA voice: a built-in voice name (Achird, Achernar, Algieba, Algenib, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Puck, Pulcherrima, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi) or a reference id of the chat account's custom voice (flow_list_voices). Name it @referenceAudio_2 in the message to point the agent at it; unnamed, it is attached only.
referenceAudio_3NoA voice: a built-in voice name (Achird, Achernar, Algieba, Algenib, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Puck, Pulcherrima, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi) or a reference id of the chat account's custom voice (flow_list_voices). Name it @referenceAudio_3 in the message to point the agent at it; unnamed, it is attached only.
referenceAudio_4NoA voice: a built-in voice name (Achird, Achernar, Algieba, Algenib, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Puck, Pulcherrima, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi) or a reference id of the chat account's custom voice (flow_list_voices). Name it @referenceAudio_4 in the message to point the agent at it; unnamed, it is attached only.
referenceAudio_5NoA voice: a built-in voice name (Achird, Achernar, Algieba, Algenib, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Puck, Pulcherrima, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi) or a reference id of the chat account's custom voice (flow_list_voices). Name it @referenceAudio_5 in the message to point the agent at it; unnamed, it is attached only.
referenceImage_1NoAn image: a reference id of the chat account's image (from flow_upload_image, flow_list_assets, or the media referenceId of an earlier agent turn). Name it @referenceImage_1 in the message to point the agent at it; unnamed, it is attached only.
referenceImage_2NoAn image: a reference id of the chat account's image (from flow_upload_image, flow_list_assets, or the media referenceId of an earlier agent turn). Name it @referenceImage_2 in the message to point the agent at it; unnamed, it is attached only.
referenceImage_3NoAn image: a reference id of the chat account's image (from flow_upload_image, flow_list_assets, or the media referenceId of an earlier agent turn). Name it @referenceImage_3 in the message to point the agent at it; unnamed, it is attached only.
referenceImage_4NoAn image: a reference id of the chat account's image (from flow_upload_image, flow_list_assets, or the media referenceId of an earlier agent turn). Name it @referenceImage_4 in the message to point the agent at it; unnamed, it is attached only.
referenceImage_5NoAn image: a reference id of the chat account's image (from flow_upload_image, flow_list_assets, or the media referenceId of an earlier agent turn). Name it @referenceImage_5 in the message to point the agent at it; unnamed, it is attached only.
referenceImage_6NoAn image: a reference id of the chat account's image (from flow_upload_image, flow_list_assets, or the media referenceId of an earlier agent turn). Name it @referenceImage_6 in the message to point the agent at it; unnamed, it is attached only.
referenceImage_7NoAn image: a reference id of the chat account's image (from flow_upload_image, flow_list_assets, or the media referenceId of an earlier agent turn). Name it @referenceImage_7 in the message to point the agent at it; unnamed, it is attached only.
referenceVideo_1NoA video: a reference id of the chat account's video (from flow_list_assets type video, or the media referenceId of an earlier agent turn). Name it @referenceVideo_1 in the message to point the agent at it; unnamed, it is attached only.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations: discloses the blocking wait profile (3-40 s to accept, up to ~50 s total), the full status enum returned, the cost model (chatting free, generation costs Flow credits, ask mode prompts first), and the cross-account constraint that references must belong to the chat's account. None of this is derivable from readOnlyHint/openWorldHint/idempotentHint.

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?

Front-loads purpose, then chat-continuation semantics, then reference naming, then timing/return behavior — a sensible ordering with no filler prose. The trailing raw HTTP route list (POST /agent/chats, GET .../stream) is the one part that does not clearly earn its place for an agent caller.

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?

With no output schema, the description carries the return contract itself (chatId, turn, status, agent text, tool calls, media referenceId+url, pending permission request) and the recovery path via flow_agent_get_chat. Nothing needed to call it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description restates the @referenceImage_N / @character_N naming convention and the chatId-new-chat rule that the schema already documents per property, adding little beyond the structured fields.

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 (send a message) and resource (Google Flow's agent), and even scopes what the agent does internally (plans, writes storyboards, generates images/videos). It is clearly distinguishable from siblings like flow_agent_get_chat and flow_agent_list_chats.

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 states when to omit chatId (start a new chat) vs. supply it (continue, one turn at a time per chat), and names the fallback: when status is running, call flow_agent_get_chat with chatId, wait: true, after: lastEventId. It also points to the lookup tools (flow_upload_image, flow_list_assets, flow_list_voices, flow_list_characters) needed to obtain references.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources