Claude & MCP
Connect Hype Flow to claude.ai or Claude Code and drive the canvas from a conversation.
Hype Flow speaks MCP (Model Context Protocol), so Claude can operate it directly: create projects, build and wire canvases, run nodes and templates, and fetch the results — everything scoped to your account and organization.
Connect claude.ai
Section titled “Connect claude.ai”The fastest route is the Integrations page in the sidebar: pick Claude and use Set up in Claude, which opens a prefilled connector form. By hand:
-
In claude.ai, open Settings → Connectors and add a custom connector.
-
Use the server URL:
https://flow.hy.pe/mcp -
Claude sends you through Hype Flow’s sign-in (OAuth) — approve, and the connector is live.
From then on, any chat with the connector enabled can work your projects:
“Create a project called Autumn Drop, build a prompt → LLM → image-gen chain with Nano Banana Pro, run it, and show me the result.”
Connect Claude Code / other MCP clients
Section titled “Connect Claude Code / other MCP clients”For clients that authenticate with a token instead of a browser flow, create a
personal access token in your Hype Flow account settings and configure the
client against the same /mcp endpoint with the token as a bearer credential.
Treat the token like a password: it acts as you, and it can be revoked from
the same settings page.
Tool reference
Section titled “Tool reference”The connector exposes 62 tools (79 for super-admins). Claude sees the same graph you do — changes appear live on the canvas, and everything it does respects your organization’s permissions.
Account & workspace
Section titled “Account & workspace”| Tool | What it does |
|---|---|
whoami |
Your profile and the orgs you belong to. The first org listed is the default home for new projects. |
list_orgs |
The orgs you’re a member of, with your role and member/project counts. |
get_org |
One org’s details — name, slug, your role, auto-join domains. |
list_project_members |
Everyone with access to a project, whether through the org or a direct invite. |
Administration (super-admins only)
Section titled “Administration (super-admins only)”These appear in Claude’s tool list only when whoami reports
is_super_admin: true; anyone else is refused with “Superadmin only”. They
do what the /admin and /org pages do, so a client can be onboarded in
one conversation: create the org, invite each person, paste the links.
| Tool | What it does |
|---|---|
admin_create_org |
Create an organisation with Google sign-in enabled from the start. You become its owner unless you pass owner_email — that person is made owner right away (or on their first sign-in if they’ve never logged in). auto_join_domains lets anyone from those email domains join without an invite; leave it out for invite-only. Returns the org’s sign_in_url. |
admin_set_org_auth |
Enable Google sign-in on an existing org and set (or clear) its auto-join domains. Uses the platform’s Google client — a custom OAuth client stays in the web admin console, so no secret ever passes through a chat. |
admin_create_invitation |
Invite someone by email with a role. Returns invite_link — send that; they open it, sign in with the same email, and land in the org. Works for people with no account yet. Expires in 14 days by default (max 90). |
admin_list_invitations |
Pending invitations for an org, each with its invite_link; expired ones are flagged. |
admin_revoke_invitation |
Kill a pending invitation so its link stops working. |
admin_reissue_invitation |
Give a pending invitation a new link when the old one expired — same email, role and org, fresh 14-day expiry (up to 90). Returns the new invite_link; the old link stops working. Not possible once the invitation was accepted. |
admin_list_org_members |
Members of an org with their roles and user ids. |
admin_add_org_member |
Add someone who already has an account, with a role. If they’ve never signed in you’ll be told to invite them instead. |
admin_set_org_member_role |
Change a member’s role (owner / admin / member). The last owner can’t be demoted. |
admin_remove_org_member |
Remove a member. Their projects stay with the org. The last owner can’t be removed. |
Spend limits (same super-admin gate). Caps are USD per calendar month:
null = unlimited, 0 = blocked; a person’s override beats their role’s
default, and the org ceiling applies on top of both.
| Tool | What it does |
|---|---|
admin_get_org_limits |
One read of everything that gates an org’s spend: org ceiling, markup, per-role caps, per-user overrides, and every member with the cap that actually applies to them next to their month-to-date spend. Start here. |
admin_org_usage |
What the org spent in mtd, 24h, 7d or 30d — totals, per user, per model. |
admin_set_org_limits |
Change the org-wide monthly ceiling and/or the markup (percent on top of provider cost). Pass only what changes: omitted = keep, null = clear. Markup applies from now on; past invoices keep their percent. |
admin_set_role_limit / admin_clear_role_limit |
Default cap for everyone with a role (owner / admin / member). Clearing makes that role unlimited. |
admin_set_user_limit / admin_clear_user_limit |
One person’s own cap inside an org, by user_id or email, with optional notes. Clearing puts them back on their role’s default. |
Deleting an organisation is deliberately not available here — use the web admin console.
What Claude can’t see
Section titled “What Claude can’t see”Results name the model that ran (for example bytedance/seedance-2-5),
never the company that served it or where a file is stored. Error messages are
rewritten the same way before they reach Claude, and an unexpected server
failure comes back as Internal error … (ref xxxxxxxx) — quote the ref when
you report it. Super-admins see the unredacted text.
Projects
Section titled “Projects”| Tool | What it does |
|---|---|
list_projects |
Every project you can see — org projects plus ones shared with you directly. |
get_project |
One project’s details: name, org, enhancer prompt override, node count. |
create_project |
Create an empty project, in a named org or your default one. |
update_project |
Rename a project or change its enhancer prompt and video-generation defaults. |
Models & templates
Section titled “Models & templates”| Tool | What it does |
|---|---|
list_models |
The model catalog — every model id the canvas can dispatch, with its maker, kind (LLM / image / video / audio), and capabilities. |
list_templates |
Published templates, each with its input/output ports and a run-cost estimate. |
run_template |
Run a published template end-to-end with your inputs; validation happens before anything is dispatched or billed. |
Canvas
Section titled “Canvas”| Tool | What it does |
|---|---|
list_canvas_node_types |
The catalog of node types the canvas supports — inputs, outputs, and params for each. |
list_canvas_nodes |
Every node on a project’s canvas, with position and params. |
get_canvas_node |
One node by id — full output value plus fresh presigned output_urls. Cheaper than re-listing a big canvas. |
list_canvas_edges |
Every wire on the canvas. |
create_canvas_node |
Add a node. Leave the position out and the server places it in a free slot. |
update_canvas_node |
Patch a node’s params (merged with what’s there), label, or position. |
connect_canvas_nodes |
Wire two nodes together, with explicit handle names for multi-port nodes. |
disconnect_canvas_nodes |
Remove a wire. |
delete_canvas_node |
Remove a node and every edge touching it. |
tidy_graph |
Re-lay the whole canvas into left-to-right flow order. Discards hand-placed positions, so it’s best right after a build. |
Running & generations
Section titled “Running & generations”| Tool | What it does |
|---|---|
run_canvas_node |
Run a node through the real job queue. Upstream nodes must have run first. Bills like any generation. With wait: false it returns a job_id + SSE stream_url in under a second; pass an idempotency_key so retries never double-bill. |
get_job |
Instant status snapshot of one queued run — the poll target for wait: false submits and timed-out waits. |
regenerate_collection_images |
Re-run selected images from a node’s latest image-collection batch, by grid number. |
list_generations |
A shot’s generation history, newest first, filterable by status. |
list_project_generations |
Generation history across the whole project, filterable by type and status. |
get_generation |
Full detail on one generation, bundled with its asset metadata and a fresh download URL. |
approve_generation |
Mark a generation as the approved take for its shot (or clear the approval). |
Storyboard
Section titled “Storyboard”| Tool | What it does |
|---|---|
list_shots |
A project’s shots in storyboard order, with action, framing, camera, mood, and approval state. |
get_shot |
One shot’s full detail, including its approved generation. |
create_shot |
Append a new shot at the end of the storyboard. |
update_shot |
Edit a shot’s text fields, duration, locked flag, or per-shot video model override. |
copy_shot |
Duplicate a shot as an unapproved variant, optionally without its refs, frames, or model override. |
delete_shot |
Delete a shot (unless locked) and re-pack the storyboard order. |
reorder_shots |
Renumber the storyboard to match a supplied shot list. |
set_shot_start_frame |
Pin an image as the literal first frame of the shot’s video. Needs a frame-capable model. |
set_shot_end_frame |
Pin the last frame. Requires a start frame; frames and reference images are mutually exclusive at dispatch. |
dispatch_shot |
Fire a video generation for a shot, with rate limits, retry-safe deduplication, and a dry_run mode that shows the full plan without spending anything. |
assemble_storyboard |
Stitch every approved clip into a single MP4 in shot order. All shots must be approved and share a resolution. |
Reference images
Section titled “Reference images”Project-level references apply to every generation in the project; shot-level references stack on top for that shot. Both are capped at 12.
| Tool | What it does |
|---|---|
list_project_references |
The project-level reference images, in the order they feed the model. |
add_project_reference |
Attach an existing image asset as a project-wide reference. |
remove_project_reference |
Detach a project-level reference; the asset itself is kept. |
reorder_project_references |
Set the order references fill the model’s image slots. |
list_shot_references |
The extra references attached to one shot. |
add_shot_reference |
Attach an image asset as a shot-level reference. |
remove_shot_reference |
Detach a shot-level reference; the asset itself is kept. |
reorder_shot_references |
Reorder one shot’s references. |
Assets & uploads
Section titled “Assets & uploads”| Tool | What it does |
|---|---|
list_assets |
A project’s uploaded and generated media, with kind, MIME type, dimensions, and size. |
get_asset |
One asset’s metadata. |
view_asset |
Show an asset in the chat — images render inline; video and audio return a clickable link. |
get_asset_url |
Just the presigned download URL (valid about an hour). |
upload_asset |
Bring an asset in from a URL or inline bytes, or validate an existing asset_id. |
request_upload_urls |
Batch-create presigned upload URLs so files go straight from disk to storage — the right path for local files and batches. |
finalize_uploads |
Confirm presigned uploads landed; the server verifies each object before marking it ready. |
request_upload_chunked |
Plan an upload carried through the MCP connection itself — the fallback for sandboxed clients with no direct network access. |
upload_asset_chunk |
Send one chunk of a planned chunked upload, in any order. |
finalize_chunked_upload |
Reassemble the chunks, verify size and checksum, and mark the asset ready. |
Library
Section titled “Library”| Tool | What it does |
|---|---|
list_library_entries |
The project library — characters, styles, elements, negatives — each with its @-tag slug. |
create_library_entry |
Add a library entry other prompts can fold in by referencing @<slug>. |
update_library_entry |
Patch a library entry. |
delete_library_entry |
Remove a library entry permanently. |
Good patterns
Section titled “Good patterns”- The fast path for agents: build nodes without positions (the server
auto-places them), wire, then
tidy_graphonce; generate withwait: false+ anidempotency_keyso submits return in under a second and render in parallel; track withget_jobor the SSEstream_url; read results withget_canvas_node. Retry only with the same idempotency key. - Batch work: “Run the product-shot template once for each of these five photos.”
- Scaffold, then refine by hand: let Claude build the graph shape; do the prompt craft yourself on the canvas.
- Report back: “List yesterday’s generations in Autumn Drop and give me the three best hero candidates.”