BrandBrain Flow Orchestrator
NPM · BRANDBRAIN-FLOW-ORCHESTRATOR-MCP · SCANNED SEP 26
Compose BrandBrain asset flows, run mock/live generation, and fetch outputs
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 35 of 100 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency19
- Repository check failed: the declared repository URL returned HTTP 404. See how to fix → View diagnostics → Fail
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 0 days ago).Pass
- Security-disclosure policy not yet verified: we couldn't inspect the source repository.Unverified
Schema Quality & AI Usability73
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 4410 tokens (~122/item across 36 items; 36 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management3
- Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage88
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 65% of tool parameters carry a description.Partial
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 4 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "logout_brandbrain" implies "revoke" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 36 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the BrandBrain Flow Orchestrator MCP server?
BrandBrain Flow Orchestrator runs locally as an npm package, launched with npx -y brandbrain-flow-orchestrator-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · brandbrain-flow-orchestrator-mcp
claude mcp add dev-brandbrain-flow-orchestrator -- npx -y brandbrain-flow-orchestrator-mcp
{
"mcpServers": {
"dev-brandbrain-flow-orchestrator": {
"command": "npx",
"args": [
"-y",
"brandbrain-flow-orchestrator-mcp"
]
}
}
} {
"servers": {
"dev-brandbrain-flow-orchestrator": {
"command": "npx",
"args": [
"-y",
"brandbrain-flow-orchestrator-mcp"
]
}
}
} codex mcp add dev-brandbrain-flow-orchestrator -- npx -y brandbrain-flow-orchestrator-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"dev-brandbrain-flow-orchestrator": {
"type": "local",
"command": [
"npx",
"-y",
"brandbrain-flow-orchestrator-mcp"
],
"enabled": true
}
}
} openclaw mcp add dev-brandbrain-flow-orchestrator --command npx --arg -y --arg brandbrain-flow-orchestrator-mcp
mcp_servers:
dev-brandbrain-flow-orchestrator:
command: "npx"
args: ["-y", "brandbrain-flow-orchestrator-mcp"] {
"McpServers": {
"dev-brandbrain-flow-orchestrator": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"brandbrain-flow-orchestrator-mcp"
]
}
}
} assistant mcp add dev-brandbrain-flow-orchestrator -t stdio -c npx -a -y brandbrain-flow-orchestrator-mcp
{
"mcpServers": {
"dev-brandbrain-flow-orchestrator": {
"command": "npx",
"args": [
"-y",
"brandbrain-flow-orchestrator-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 26 Sept 26 +10
- Known CVEs: unverified → pass ▲ security
- Schema quality: 3980 → 4410 ▼ functional
- Stability: unverified → 0.03 ▲ functional
- Dependency health: unverified → 0.82 ▲ functional
- Package version: 0.2.1 → 0.4.0 functional
- Package version: 0.2.1 → 0.3.0 functional
- 25 Sept 26 52
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 26 Sept 2026 · Analysed npm/brandbrain-flow-orchestrator-mcp@0.4.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Background: How many MCP packages publish verified provenance →
Dependencies 100 packages
| Packages resolved | 100 |
|---|---|
| Stale | 35 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
add_flow_node ~243
Add one node to the stored flow graph. Wire it with connect_flow_nodes, then validate_asset_flow before running.
| Name | Type | Req | Description |
|---|---|---|---|
| assetRef | string | – | – |
| description | string | – | – |
| globalRules | array | – | – |
| id | string | – | – |
| label | string | – | – |
| mimeType | string | – | – |
| modelId | string | – | – |
| negativeConstraints | array | – | – |
| palette | array | – | – |
| position | object | – | – |
| provider | string | – | – |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| stageIndex | number | – | – |
| stageLabel | string | – | – |
| status | string | – | – |
| storagePath | string | – | – |
| strategy | string | – | – |
| text | string | – | – |
| themeStyle | string | – | – |
| title | string | – | – |
| tone | string | – | – |
| type | string | yes | Node kind: prompt/style/reference feed a generate node; generate calls a provider; output is a display sink; frame/note are canvas annotations. |
No output schema declared.
No examples provided.
add_flow_reference_image ~213
Upload a local image file (png/jpeg/webp/gif/svg, ≤10 MB) as a session-scoped reference — the backend stores it immutably and the reference node points at its storage key. Use connectToNodeId to feed a generate node, then validate_asset_flow before running.
| Name | Type | Req | Description |
|---|---|---|---|
| connectToNodeId | string | – | Generate node the reference should feed (edges it in when creating a new node). |
| filePath | string | yes | Local image file (png/jpeg/webp/gif/svg) to attach as a generation reference. Read by this MCP process and uploaded to the session — keep it under 10 MB. |
| label | string | – | Short label for the reference node on the canvas. |
| nodeId | string | – | Reference node to create or update. Defaults to reference_<filename>; pass an existing reference node id to replace its image. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
apply_flow_edits ~81
Apply a batch of graph edits (add/update/remove nodes, connect/disconnect edges) atomically to the stored flowSpec. Preferred over individual calls for multi-step edits; validate afterwards.
| Name | Type | Req | Description |
|---|---|---|---|
| ops | array | yes | – |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
approve_and_run_asset_set_plan ~177
Approve the exact manifest revision/hash AND start its run in one durable idempotent call. In live mode this is a paid provider call — confirm the exact scope and cost with the user first.
| Name | Type | Req | Description |
|---|---|---|---|
| expectedFlowRevision | integer | yes | Flow revision from the current session — stale values are rejected. |
| expectedManifestRevision | integer | yes | The exact manifest revision the user approved. |
| idempotencyKey | string | – | – |
| manifestContentHash | string | yes | – |
| mode | string | – | mock = free dry run. live = paid provider generation — confirm with the user first. |
| planNodeId | string | yes | The asset_set plan node's id in the graph. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
approve_asset_set_plan ~158
Record the user's explicit approval of the exact persisted manifest revision and content hash. Never call before the user has seen and approved that manifest; approval alone does not start a run.
| Name | Type | Req | Description |
|---|---|---|---|
| expectedFlowRevision | integer | yes | Flow revision from the current session — stale values are rejected. |
| expectedManifestRevision | integer | yes | The exact manifest revision the user approved. |
| manifestContentHash | string | yes | Content hash of the approved manifest, from update_asset_set_plan's response — proves the user approved this exact draft. |
| planNodeId | string | yes | The asset_set plan node's id in the graph. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
compare_image_models ~168
Clone a single-generate-node flow once per candidate model (same prompt/style/references), preflight each, and start sibling runs to compare engines. live charges per sibling and needs a total ceiling.
| Name | Type | Req | Description |
|---|---|---|---|
| maxTotalUsdMicros | integer | – | Live only: the most the whole comparison may cost, in USD micros. The sum of the siblings' preflight ceilings must fit or nothing is started. |
| mode | string | – | mock = free dry run. live = paid provider generation — confirm with the user first. |
| models | array | yes | The engines to compare — one sibling session per entry. Discover provider/modelId pairs with list_image_models. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
connect_flow_nodes ~117
Create a directed edge from one node to another in the stored flow graph; invalid node-kind pairs are rejected.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| sourceNodeId | string | yes | Upstream node id (prompt/style/reference → generate, generate → output). |
| sourcePort | string | – | – |
| targetNodeId | string | yes | Downstream node id. |
| targetPort | string | – | Named input port for multi-input nodes. |
No output schema declared.
No examples provided.
create_asset_flow ~177
Create a persisted flow session from a templateId, a free-text goal, or an explicit flowSpec. A goal is patched into the scaffold's brief prompt node — asset-set templates have none, so express intent via update_asset_set_plan instead. Returns the stored session including canvas_url to share with the user.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | – | Optional description stored on the session. |
| flowSpec | object | – | Complete flow document to persist verbatim, instead of scaffolding from a template/goal. |
| goal | string | – | Free-text intent, patched into the scaffold's brief prompt node. Asset-set templates have no prompt node — express intent via update_asset_set_plan for those. |
| templateId | string | – | Starter template id from list_asset_flow_templates. |
| title | string | yes | Human-readable flow name shown on the canvas. |
No output schema declared.
No examples provided.
disconnect_flow_nodes ~89
Remove a directed edge between two nodes in the stored flow graph.
| Name | Type | Req | Description |
|---|---|---|---|
| edgeId | string | – | Edge id to remove; alternatively pass sourceNodeId + targetNodeId. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| sourceNodeId | string | – | – |
| targetNodeId | string | – | – |
No output schema declared.
No examples provided.
edit_asset_flow ~127
Replace a session's title/description, and optionally REPLACE the entire stored flowSpec (full overwrite — get_asset_flow first). For targeted graph changes prefer add_flow_node, update_flow_node, connect_flow_nodes, or apply_flow_edits.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | – | – |
| flowSpec | object | – | Complete replacement for the stored graph — not a merge. Fetch the current spec with get_asset_flow first. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| title | string | – | – |
No output schema declared.
No examples provided.
estimate_asset_flow_run_cost ~133
Estimate what a flow's generate nodes would cost to run, priced from the image-model catalogue (1024² high estimate per image). Pass targetNodeId to scope to the single node a run would execute — one run bills only its target. Free to call — use before a live run to sanity-check spend, or to compare models before set_generate_target.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| targetNodeId | string | – | Restrict the estimate to one generate node; all generate nodes when omitted. |
No output schema declared.
No examples provided.
get_asset_flow ~64
Fetch a stored session with its full flowSpec graph. Inspect before editing; use list_asset_flows when you only need metadata across flows.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
get_asset_flow_run ~87
Inspect a stored run's status, per-node traces, artifacts and errors. Use to confirm the real outcome of a finished or failed task before reporting it.
| Name | Type | Req | Description |
|---|---|---|---|
| runId | string | yes | Run id from list_asset_flow_runs or a finished task. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
get_asset_flow_task ~73
Poll a task started by start_asset_flow_run or start_regenerate_asset_flow_node until completed/failed. Then verify the persisted outcome with get_asset_flow_run — a task report alone is not proof.
| Name | Type | Req | Description |
|---|---|---|---|
| taskId | string | yes | Task id returned by start_asset_flow_run or start_regenerate_asset_flow_node. |
No output schema declared.
No examples provided.
get_asset_set_plan_history ~81
Fetch an asset-set plan's manifest revisions and approval events. Use to audit what was proposed and approved before any run.
| Name | Type | Req | Description |
|---|---|---|---|
| planNodeId | string | yes | The asset_set plan node's id in the graph. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
get_flow_outputs ~96
Fetch a run's durable outputs with metadata, artifact_url (fetchable with this server's auth), open_in_browser link for humans, and a bounded inline preview. The way to view results — never regenerate to fetch outputs.
| Name | Type | Req | Description |
|---|---|---|---|
| runId | string | – | Defaults to the session's latest run. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
get_flow_processor_health ~40
Report local processor readiness and pinned revisions (split, background removal, vectorisation). Required check before relying on zero-token local stages in asset-set flows.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_flow_trace ~83
Get a run's per-node trace: status, duration, resolved prompts, provider request details, artifacts, errors. Use to diagnose a failed or surprising run.
| Name | Type | Req | Description |
|---|---|---|---|
| runId | string | – | Defaults to the session's latest run. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
list_asset_flow_runs ~80
List recorded runs for a session (id, mode, status, timing). Use to find a runId for get_asset_flow_run, get_flow_trace, or get_flow_outputs.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
list_asset_flow_templates ~45
List canonical starter flow templates (id, title, pattern). First step when the user describes a goal but no existing flow; pass the chosen template id to create_asset_flow.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_asset_flows ~105
List stored flow canvases (id, title, revision, updated_at, node/edge counts, canvas_url). query and limit filter client-side; archived:true lists read-only retained history. Use to find or resume an existing flow.
| Name | Type | Req | Description |
|---|---|---|---|
| archived | boolean | – | List archived, read-only flows instead of active flows. |
| limit | integer | – | Max flows to return (default all). |
| query | string | – | Case-insensitive match against title, description and id. |
No output schema declared.
No examples provided.
list_image_models ~158
List every provider's image models with lifecycle status, reference-image support, and the preflight cost ceiling for one 1024² image. Call before choosing a generate model — the only way to discover OpenRouter model ids. Supports sortByCost and maxPerProvider to surface the cheapest options quickly.
| Name | Type | Req | Description |
|---|---|---|---|
| includeRetired | boolean | – | Retired models are hidden unless this is true. |
| maxPerProvider | integer | – | Cap models listed per provider (cheapest first when sortByCost is set). |
| provider | string | – | "openai", "gemini" or "openrouter"; every provider when omitted. |
| sortByCost | boolean | – | Sort each provider's models cheapest-first and order providers by their cheapest model. |
No output schema declared.
No examples provided.
login_brandbrain ~47
Open BrandBrain sign-in in the user's browser and store a local session shared by MCP clients on this machine. Call when a tool reports not authenticated; verify afterwards with whoami_brandbrain.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
logout_brandbrain ~34
Revoke the stored BrandBrain session and remove local credentials for every client sharing it. Use to switch accounts or end access.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
open_flow ~79
Open the flow's canvas editor in the user's default browser and return its URL. Side effect: opens a window on the user's machine — when they only need the link, return canvas_url from list_asset_flows instead.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
open_flow_gallery ~73
Open the flow's run gallery (every run's output images with per-image cost and trace) in the user's default browser and return its URL. Opens a window on the user's machine.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
regenerate_asset_flow_node ~143
Regenerate a single target node in the stored flow session as a task-backed run. Requires MCP task augmentation; clients without it should call start_regenerate_asset_flow_node and poll get_asset_flow_task instead.
| Name | Type | Req | Description |
|---|---|---|---|
| mode | string | – | mock = free dry run. live = paid provider generation — confirm with the user first. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| targetNodeId | string | yes | Node to rerun from. An output node resolves to its generate producer and re-runs paid generation — never use this to fetch outputs (use get_flow_outputs). |
No output schema declared.
No examples provided.
remove_flow_node ~76
Remove a node (and its edges) from the stored flow graph. Run validate_asset_flow afterwards.
| Name | Type | Req | Description |
|---|---|---|---|
| nodeId | string | yes | Node id in the stored graph — its edges are removed too. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
run_asset_flow ~196
Execute the stored flow session in mock or live mode as a task-backed run. Requires MCP task augmentation; clients without it should call start_asset_flow_run and poll get_asset_flow_task instead.
| Name | Type | Req | Description |
|---|---|---|---|
| idempotencyKey | string | – | Dedupe key so retries do not launch duplicate runs; reuse the same key to re-attach to the first dispatch. |
| mode | string | – | mock = free dry run. live = paid provider generation — confirm with the user first. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| targetNodeId | string | – | Run only the subgraph feeding this node. A root run defaults to the backend's first generate target, so a multi-branch graph generates one image per run unless a branch is named here. Ignored for ass… |
No output schema declared.
No examples provided.
set_generate_target ~196
Set the output target on a generate node (surface, aspect ratio, size hint, composition/text policy). Run validate_asset_flow afterwards.
| Name | Type | Req | Description |
|---|---|---|---|
| aspectRatio | string | – | e.g. '1:1', '16:9', '9:16'. |
| compositionRules | array | – | Composition constraints, e.g. 'negative space top-left for headline'. |
| copySafety | string | – | How to leave room for copy, e.g. 'clean negative space'. |
| nodeId | string | yes | The generate node's id. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| sizeHint | string | – | – |
| surface | string | – | Output surface, e.g. 'hero', 'banner', 'story'. |
| textPolicy | string | – | GENERATE_TEXT_POLICY_* — DISALLOW for clean plates with no rendered text. |
No output schema declared.
No examples provided.
start_asset_flow_run ~246
Start a background mock or live run; returns a task to poll with get_asset_flow_task. live spends real provider money — confirm scope and cost with the user first; refused unless BRANDBRAIN_MAX_PROVIDER_SPEND_USD_MICROS is set in the server env. One run executes only the targeted generate node (targetNodeId): downstream generate nodes are paid-call boundaries — run them as separate targeted runs, each billed independently.
| Name | Type | Req | Description |
|---|---|---|---|
| idempotencyKey | string | – | Dedupe key so retries do not launch duplicate runs; reuse the same key to re-attach to the first dispatch. |
| mode | string | – | mock = free dry run. live = paid provider generation — confirm with the user first. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| targetNodeId | string | – | Run only the subgraph feeding this node. A root run defaults to the backend's first generate target, so a multi-branch graph generates one image per run unless a branch is named here. Ignored for ass… |
No output schema declared.
No examples provided.
start_regenerate_asset_flow_node ~148
Start a background regeneration from a target node; poll it with get_asset_flow_task. Warning: targeting an output node re-runs its paid generate producer — use get_flow_outputs on a finished run to fetch results instead.
| Name | Type | Req | Description |
|---|---|---|---|
| mode | string | – | mock = free dry run. live = paid provider generation — confirm with the user first. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| targetNodeId | string | yes | Node to rerun from. An output node resolves to its generate producer and re-runs paid generation — never use this to fetch outputs (use get_flow_outputs). |
No output schema declared.
No examples provided.
update_asset_set_plan ~254
Atomically update an asset-set plan node's authoring fields and persist a complete draft manifest proposal; requires expected revisions from the current session. Configure before asking the user to approve.
| Name | Type | Req | Description |
|---|---|---|---|
| brief | string | yes | Creative brief for the whole set — subject, style, palette. |
| desiredPurpose | string | yes | What the assets are for, e.g. 'iOS tab icons'. |
| expectedFlowRevision | integer | yes | Flow revision from the current session — stale values are rejected to prevent lost updates. |
| expectedManifestRevision | integer | yes | Manifest revision the draft builds on; 0 for the first proposal. |
| label | string | yes | Short asset-set name, e.g. 'app icon set'. |
| manifest | object | yes | Complete draft manifest object the backend will validate and persist. |
| planNodeId | string | yes | The asset_set plan node's id in the graph. |
| requestedCount | integer | yes | How many assets the manifest should propose. |
| requestedFormats | – | yes | Output formats: ["png"] or ["png","svg"] — svg adds local vectorisation. |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
update_flow_node ~222
Update fields on one node in the stored flow graph (prompt text, model, processor options). Run validate_asset_flow afterwards.
| Name | Type | Req | Description |
|---|---|---|---|
| assetRef | string | – | – |
| description | string | – | – |
| globalRules | array | – | – |
| label | string | – | – |
| mimeType | string | – | – |
| modelId | string | – | – |
| negativeConstraints | array | – | – |
| nodeId | string | yes | Node id in the stored graph — from get_asset_flow. |
| palette | array | – | – |
| position | object | – | – |
| provider | string | – | – |
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
| stageIndex | number | – | – |
| stageLabel | string | – | – |
| status | string | – | – |
| storagePath | string | – | – |
| strategy | string | – | – |
| text | string | – | – |
| themeStyle | string | – | – |
| title | string | – | – |
| tone | string | – | – |
No output schema declared.
No examples provided.
validate_asset_flow ~62
Run backend validation on the stored graph. Call after every material edit and before every run — invalid graphs are refused at run time.
| Name | Type | Req | Description |
|---|---|---|---|
| sessionId | string | yes | Persisted flow session id (flow_session_…) from create_asset_flow or list_asset_flows. |
No output schema declared.
No examples provided.
whoami_brandbrain ~39
Show the stored BrandBrain session (identity and expiry, never tokens). Call first to confirm the signed-in agent identity before editing or running flows.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
What is the BrandBrain Flow Orchestrator MCP server?
BrandBrain Flow Orchestrator is an MCP server listed in the public MCP registry as dev.brandbrain/flow-orchestrator. Compose BrandBrain asset flows, run mock/live generation, and fetch outputs. This page covers its npm package (brandbrain-flow-orchestrator-mcp).
Is the BrandBrain Flow Orchestrator MCP server safe to use?
BrandBrain Flow Orchestrator scores 62 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 26 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the BrandBrain Flow Orchestrator MCP server expose?
BrandBrain Flow Orchestrator exposes 36 tools: login_brandbrain, whoami_brandbrain, logout_brandbrain, list_asset_flow_templates, list_asset_flows, and 31 more. Their descriptions and schemas cost roughly 4,410 tokens of context every time the server is loaded.
Is the BrandBrain Flow Orchestrator MCP server still maintained?
BrandBrain Flow Orchestrator is still listed as active in the MCP registry. We last reached this channel on 26 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the BrandBrain Flow Orchestrator MCP server under?
BrandBrain Flow Orchestrator declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.