gflow-cli
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GFLOW_CLI_FLOW_HOST | No | Flow frontend host to use (e.g., labs.google or flow.google.com). | |
| GFLOW_CLI_OUTPUT_DIR | No | Directory where generated outputs are saved. | |
| GFLOW_CLI_STORAGE_URI | No | URI for external storage (S3, MinIO, or Google Cloud Storage) to route outputs. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| gflow_generate_imageA | Generate an image using Google Flow's Imagen model. Produces 1-4 images from a text prompt. Models: nano2 (fast), nano2-lite (lightweight), nano-pro (balanced), image4 (highest quality). Aspects: 1:1, 9:16, 16:9, 4:3, 3:4. The prompt supports @AssetName mentions to tag saved project characters/assets by name (resolves to referenceEntities/referenceImages). Reference a SAVED named asset via @Name; reference an arbitrary one-off image via reference_images. See docs/REFERENCE_STRATEGIES.md. On accounts served from flow.google.com, use an existing project and local reference files; UUID/entity references and image4 are not ported to that composer yet and fail before submit; retrying will not clear it. Returns local file paths to the generated images. |
| gflow_generate_videoA | Generate a video using Google Flow's Veo model. Modes: t2v (text-to-video), i2v (image-to-video), r2v (reference-to-video). Aspects: 9:16, 16:9. Optional model (veo_lite/veo_fast/veo_quality/omni_flash), duration (seconds), and count select the Veo model, clip length, and batch size (CLI parity). The prompt supports @CharacterName mentions to tag saved project characters by name (resolves to referenceEntities). Reference a SAVED character via @Name; pass one-off ingredient images via reference_images. See docs/REFERENCE_STRATEGIES.md. Optional ui_mode ('classic'/'auto') verifies the classic editor pre-submit and aborts before spending credits if unreachable; 'agentic' is not supported for video. Returns the local file path to the generated video. |
| gflow_list_toolsA | List available gflow prompt tools (name, title, description, category). |
| gflow_get_creditsA | Read the current Google Flow credit balance for one saved profile or all profiles. This is read-only and spends no credits. Set all_profiles=true when choosing an account for generation; partial profile failures remain visible in the result. |
| gflow_character_listA | List the saved Flow CHARACTER entities in a project, with their entity ids. Read-only and spends no credits. Call this to discover what you can attach: an id goes to reference_entities on the generate tools, and a display_name can be used as an @Name mention in a prompt (same wire, they dedupe). Drives a browser session, so it is slower than the catalog tools. |
| gflow_character_voicesA | List the preset voices available for a Flow Character's TTS. Static lookup — no network, no browser, no cost. Call it before creating a character to choose a valid voice name. |
| gflow_character_showA | Show one saved Flow CHARACTER entity by id or by exact display name. Read-only and spends no credits. Exactly one of entity_id or name is required; an ambiguous name is an error rather than a guess, which is the reason to prefer the id. Drives a browser session. |
| gflow_download_mediaA | Fetch an already-generated VIDEO from Flow by its media ID and write it to disk. For a generation that finished and was billed but whose download failed — the clip is in the Flow project and the local catalog shows no file for it. Spends no credits: the generation was already paid for. The bytes are verified against the size Flow reports before the file is written. Video only: an image media ID is refused immediately (exit 11) because the signed URL this needs comes from a record only a clip's route emits. See issue #877. The transfer already retries a dropped connection internally, so a failure marked retryable means wait a moment and call again — never immediately, and never in a tight loop: each call opens a browser under a per-profile lease, and a second concurrent call fails on that lease instead (exit 11). |
| gflow_list_projectsA | List all projects in the local gflow catalog. Returns project IDs, names, and creation dates from the SQLite database. |
| gflow_auth_statusA | Non-interactive, credit-free Flow session probe (#497). Call this BEFORE a generation tool to fail fast on expired auth — the queue is async, so an auth failure otherwise surfaces only later from the daemon. Never starts an interactive login flow; may boot a short-lived headless browser only if cookie decryption requires the Playwright fallback. May take up to ~45s on a slow network. |
| gflow_instructions_listB | List a Flow project's persistent Agent-Mode instruction cards (reads the live server brief). Credits-free. |
| gflow_instructions_addA | Add a persistent instruction card to a Flow project's Agent-Mode brief (credits-free). Each ref is classified automatically: local image path → uploaded as an image reference; asset UUID → image reference; anything else → character id/name. |
| gflow_instructions_set_enabledB | Enable or disable one instruction card on a Flow project's brief, selected by title or card id (exactly one). Credits-free. |
| gflow_instructions_rmB | Remove one instruction card from a Flow project's brief, selected by title or card id (exactly one). Credits-free. |
| gflow_instructions_toggle_modeA | Turn a Flow project's brief master switch on or off. When off, NO cards apply even if individually enabled. Cards are left untouched. Credits-free. |
| gflow_instructions_applyA | Declaratively FULL-SYNC a Flow project's brief: REPLACES all existing instruction cards with the given set (destructive — cards not listed are removed). Each card is {'title', 'text', 'ref': [...], 'enabled'}. Credits-free. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| expand_prompt | [DEPRECATED: use the creative-director tool] Build the 5-component prompt formula. This is a *prompt template* — it returns an instruction string for the calling client's own model to expand. It is superseded by the ``creative-director`` tool, which performs the rewrite server-side (calls Gemini directly), strips banned keywords, supports domain styles, and records provenance. Reach it via ``gflow_list_tools`` / the ``tools`` array param on the generation tools, or ``gflow tools run creative-director`` / ``--tool`` on the CLI. This template is retained for backward compatibility (some MCP clients surface prompts as user-pickable templates, a distinct UX from agent-invoked tools) and is slated for removal in a future major release. See docs/PROMPT_EXPANSION.md. Inputs: - subject: The primary subject of the generation. - action: Description of actions or motion (optional). - setting: Setting/location/background (optional). - camera: Camera angle, lens type, framing, movement (optional). - lighting: Light source, mood, color palette, atmosphere (optional). |
| create_character | Create a consistent character profile prompt structure for Google Flow character models. Inputs: - name: The name of the character. - gender: Gender profile of the character (default: neutral). - appearance: Appearance traits (hair, eyes, facial features) (optional). - clothing: Clothing style and colors (optional). |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| MCP Agent Guide | Instructions for AI agents on how to use gflow-cli tools. Read this BEFORE making any tool calls. |
| Known Issues | Index of current known issues (titles + status). Read gflow://docs/known-issues/{slug} for one issue's full text. |
| Database Schema | SQLite database schema for gflow.db — operations catalog. |
TDQS
Scored across 16 tools
Most tools target clearly distinct resources or actions: image generation, video generation, character reads, project listing, credits, auth, and instruction management are easy to separate. The only mild overlap is between instruction add/apply and set_enabled/toggle_mode, but the descriptions do explain the differences.
All tool names use a consistent gflow_ prefix and snake_case, with readable, domain-oriented labels. However, the internal ordering is mixed: some are verb_noun (list_projects, generate_image) while domain-specific tools use noun_verb (character_list, instructions_add).
16 tools is slightly above the typical 3-15 sweet spot, but the server spans generation, characters, instructions, projects, credits, auth, and media download. The count is reasonable for that breadth and does not feel bloated.
Generation and instruction CRUD are well covered, but there are notable gaps: no tools to create/update/delete projects or characters, and no asset listing/management despite @AssetName references being central to generation. These omissions limit full lifecycle coverage.