openFlow is a remote MCP server that gives an AI agent 35 tools, among them add_account_token, check_credits, check_job. It answers at https://openflowmcp.com/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 6 of 6 times since 11 September 2026; the last check, on 22 October 2026, succeeded.
Omni Flash and Veo video, Nano Banana images on Google Flow, from any MCP client
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
add_account_token | Attach one of YOUR OWN Google accounts to the pool using an oauth_token captured on the USER'S OWN machine (password/2FA never leave it). This is the self-serve onboarding path — no server-side browser, no SSH. HOW TO GET oauth_token — RUN Inputs: email, oauth_token, reset_day |
check_credits | Check projects for a farm account (or all). NOTE: for the credit BALANCE and a full at-a-glance overview, prefer `flow_dashboard()` — it returns real credit numbers per account + totals. This tool only returns the project list. Inputs: account |
check_job | Check the status/result of a job previously returned by generate_image, generate_video, generate_video_from_image, or generate_video_with_reference. Besides status/result it reports PROGRESS, so you can tell the person something truthful in Inputs: job_id, include_preview |
create_character | Create a new, empty Flow character (just gets you an entity_id — no portrait/body, no description yet). Plain HTTP, no browser involved. Low-level building block — for "make me a character from a description and generate its portrait", call Inputs: account |
create_character_from_description | Invent a new character from a text description and generate its portrait — the full "make me a character, no photo involved" path in ONE call, instead of gluing together create_character + update_character + generate_character_image yoursel Inputs: name, description, account, display_name, portrait_prompt, model |
create_character_from_photo | Create a new Flow character whose portrait (and optionally body) is a REAL PHOTO, not a text description or generation. Both photos become the character's slot-0 (portrait) and slot-1 (body) images directly — Flow's own upload mechanism in Inputs: account, photo_base64, body_photo_base64, physical_description, name |
create_project | Create a NEW Flow project on one of your farm accounts and return its project_id. Use this to give every one of YOUR OWN clients their own namespace: create a project per client once, then pass that project_id to generate_image / generate_v Inputs: account, name |
edit_video | Rewrite a video this service already generated, from a plain description: "make the sky stormy", "take the passer-by out of the shot", "warmer light". media_id: the id from a previous generate_video* result. Only our own videos can be edite Inputs: prompt, media_id, video_model_key, aspect, include_preview |
extend_video | Continue a video this service already generated — Flow writes what happens next. media_id: the id from a previous generate_video* result (the bare id, not the /v1/media/... path). Only videos made through this service can be extended: the i Inputs: prompt, media_id, video_model_key, aspect, project_id, include_preview |
fetch_media | Download a generated media file (video, frame) and return its bytes, base64-encoded, so the file can be saved or shown even though the media endpoint isn't publicly reachable with your MCP key. THIS IS THE EXPENSIVE PATH — prefer `download_ Inputs: path, force_bytes, max_kb |
flow_dashboard | The account-pool control panel: for EVERY farm account, the real credit balance, subscription tier, project count, and health status, plus totals — one call, formatted for reading. Use this to answer "how many accounts, how many credits on |
flow_health | Check whether the Flow generation backend is reachable and see current queue depth (queued + warming + running jobs). Note: the Android emulator is now OFF — generation runs on a pure-HTTP token path, so there's no warm-up delay anymore. |
flow_status | What this key still needs before it can do everything — READ-ONLY, spends nothing. Call this BEFORE the first generation of a session, whenever a call is refused, and whenever the user asks why something does not work. It answers in one sho |
generate_character_expression_sheet | Generate a single image showing the character's FACE with several different expressions in one row, labeled — an "expression sheet". Same job type and same history as generate_character_turnaround — see its docstring for the full story: the Inputs: entity_id, account, character_slot_index, expressions |
generate_character_image | Generate a portrait or body image for an existing Flow character. entity_id: the character's entityId — from create_character or create_character_from_photo, or create_character_from_description's own result (which already calls this for sl Inputs: prompt, entity_id, character_slot_index, model, aspect |
generate_character_turnaround | Generate a single image showing the character's FULL BODY from 3 angles (front/side/back) in one row, labeled — a "turnaround sheet". Pure HTTP as of 2026-07-26 — no browser involved (see below for what changed and what that does and does N Inputs: entity_id, account, character_slot_index, outfit_description |
generate_image | Generate an image from a text prompt via Google Flow. model — pass ONE of these exact ids (from GET v1/flow/models, verified 2026-07-25): NARWHAL = "Nano Banana 2" — the DEFAULT, ~30s GEM_PIX_2 = "Nano Banana Pro" — highest quality, ~40s, h Inputs: prompt, model, aspect, image_inputs, control_images, seed |
generate_scene | Build a location precisely from a scene-layout/v2 map and generate its plate. This is the "exact location building" path: instead of describing the room in prose (which the model reinterprets — furniture drifts, depths change between shots) Inputs: scene_layout, camera_id, aspect, style, extra, seed |
generate_video | Generate a video from a text prompt via Google Flow (Veo models). video_model_key options: abra_t2v_4s (default, 7 credits), veo_3_1_t2v_lite (10cr, visibly cleaner), veo_3_1_t2v (100cr, "Quality" tier), veo_3_1_t2v_fast (20cr). project_id: Inputs: prompt, video_model_key, aspect, beats, project_id, include_preview |
generate_video_between_frames | Generate the transition between TWO given frames: the video starts at the first image and ends at the second one, Flow invents everything in between. This is Flow's "Кадры" with both slots filled — a different mechanism from generate_video_ Inputs: prompt, start_image_base64, end_image_base64, video_model_key, aspect, beats |
generate_video_from_image | Generate a video that starts from a given image (i2v — image-to-video). start_image_base64: raw base64-encoded image bytes, no data: URI prefix. Mutually exclusive with reference-image (r2v) generation. For "make content that looks like thi Inputs: prompt, start_image_base64, video_model_key, aspect, beats, project_id |
generate_video_with_reference | Generate a video using up to 3 reference images (r2v — e.g. a consistent character/subject across the video). reference_images_base64: raw base64-encoded image bytes (no data: URI prefix), up to 3. Mutually exclusive with start-image (i2v) Inputs: prompt, reference_images_base64, video_model_key, aspect, project_id, include_preview |
generate_with_face | Generate a NEW image of the SAME PERSON/character as an existing photo or portrait — dress them differently, move them somewhere else, make an avatar. This is the tool for "here is my photo, now put me in a suit / in a park", and also the O Inputs: prompt, photo_media_id, character, aspect, model, project_id |
list_characters | List the characters YOU created (create_character_from_description, or create_character_from_photo with name=...) and can now generate more images of via generate_with_face(character=<name>, prompt=...). Read-only, no Flow calls, no credits |
list_models | List every valid model id this service accepts — READ-ONLY, spends no credits, calls nothing outside this service. Call this BEFORE generate_image/generate_video if you're unsure of an exact id: guessing (e.g. the family key "nano_banana_pr |
music_chat | Talk to the Google Flow Music Producer agent instead of one-shotting a track. Use this when the work is a conversation rather than a single brief: asking what it can do, having it write lyrics first, or editing a track it already made ("dro Inputs: message, conversation_id, model |
music_credits | Check remaining flowmusic credits and subscription tier. |
music_download | Download the raw .m4a file of a track to the server. Inputs: clip_id |
music_generate | Generate a full song from a text brief via Google Flow Music (Lyria). prompt — free text: genre, mood, BPM, instruments, and whether you want vocals or an instrumental (e.g. "dreamy synthwave, retro 80s, 110 bpm, instrumental"). The Produce Inputs: prompt, model, lyrics, conversation_id |
music_get | Get metadata for a single music track. Inputs: clip_id |
music_list | List the user's music tracks. Inputs: limit |
music_stems | Split a track we generated into stems (vocals, instrumental, drums, bass, …). clip_id — the id of a clip returned by music_generate (or music_video's song). Runs on the same account that made the track. Returns {"stems": {name: "/v1/media/. Inputs: clip_id |
update_character | Save a character's display name and/or personality notes. Without this, a character stays 'Untitled Character' with no description even after portrait/body images exist. account must be whichever farm account's project owns this entity_id. Inputs: entity_id, account, display_name, personality_notes |
upscale_image | Upscale an existing generated image (from a prior generate_image call) to a higher resolution, via Flow's own Download panel -- the same "1K/2K/4K" picker shown when downloading an image in the Flow UI. account must be whichever farm accoun Inputs: media_id, account, target_resolution |
upscale_video | Upscale an existing generated video (from a prior generate_video call) to a higher resolution, via Flow's own grid-view download menu (the "270p/720p/1080p/4K" picker). account must be whichever farm account's project owns media_id (generat Inputs: media_id, account, target_resolution |
Every block below points at https://openflowmcp.com/mcp. Pick your client and copy.
claude mcp add --transport http openflow https://openflowmcp.com/mcp
{
"mcpServers": {
"openflow": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://openflowmcp.com/mcp"]
}
}
}{
"mcpServers": {
"openflow": {
"url": "https://openflowmcp.com/mcp"
}
}
}{
"servers": {
"openflow": {
"type": "http",
"url": "https://openflowmcp.com/mcp"
}
}
}{
"context_servers": {
"openflow": {
"url": "https://openflowmcp.com/mcp"
}
}
}{
"mcpServers": {
"openflow": {
"serverUrl": "https://openflowmcp.com/mcp"
}
}
}{
"mcpServers": {
"openflow": {
"url": "https://openflowmcp.com/mcp"
}
}
}name: openFlow
version: 0.0.1
schema: v1
mcpServers:
- name: openFlow
type: streamable-http
url: https://openflowmcp.com/mcp{
"mcpServers": {
"openflow": {
"httpUrl": "https://openflowmcp.com/mcp"
}
}
}{
"mcpServers": {
"openflow": {
"type": "http",
"url": "https://openflowmcp.com/mcp"
}
}
}{
"mcpServers": {
"openflow": {
"url": "https://openflowmcp.com/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fopenflowmcp.com%2Fmcp&type=streamable_http&id=openflow&name=openFlow
It answered our last check on 22 October 2026 in 123 ms. Over 6 checks since 11 September 2026 it answered 6. Status here comes from Neuronto's own probes, not from the publisher.
35, as returned by the server's own tools/list on 17 September 2026: add_account_token, check_credits, check_job, create_character, create_character_from_description, create_character_from_photo, create_project, edit_video, and 27 more.
It answered our last check on 22 October 2026 in 123 ms. Over 6 checks since 11 September 2026 it answered 6.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://openflowmcp.com/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: io.github.molkex. Endpoint host: openflowmcp.com. ARD identifier: urn:air:io.github.molkex:mcp:omni-flash-veo3-nano-banana.
First indexed 10 September 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.