On this page

Automation

get-process-flow

Fetch a process flow by id or by exact name, including its agents and wiring. Needs the fabric:orchestrate.read grant.

curl -sS -X POST https://fabric.wexa.ai/mcp/$FABRIC_PROJECT_ID \
  -H "authorization: Bearer $FABRIC_API_KEY" \
  -H "Mcp-Session-Id: $MCP_SESSION_ID" \
  -H "content-type: application/json" -H "accept: application/json" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"get-process-flow","arguments":{"flow_name":"docs-fixture-flow"}}}'
{
  "content": [
    {
      "type": "text",
      "text": "{\"lifecycle_id\":\"qlc_000179\",\"result\":{\"_id\":\"6ab1945e7566f41b5c28e308\",\"name\":\"docs-fixture-flow\",\"description\":\"A stable process flow the documentation cites.\",\"initialAgent\":\"6ab1948bf90472594bd3e7d5\"}}"
    }
  ],
  "isError": false
}

Parameters

ParameterTypeRequiredNotes
flow_namestringOptionalLookup by exact process flow name when the id is unknown. Names are not unique: if several process flows share it the call fails and lists their ids, and you pass process_flow_id instead. A name that matches no process flow in this project is refused.
process_flow_idstringOptionalProcess flow id. A process flow in this project.
Show full response

A real response, captured from a live call to get-process-flow:

agents came back populated and is shown as … here, because the real value runs to thousands of characters. Read it from your own call rather than from this page.

{
  "lifecycle_id": "qlc_000179",
  "result": {
    "_id": "6ab1945e7566f41b5c28e308",
    "agents": "\u2026",
    "anomaly_detection": {
      "instructions": "",
      "is_enabled": false
    },
    "created_at": 1790022750.16452,
    "cron_details": {
      "agentflow_id": "",
      "collection_name": null,
      "count": null,
      "executed_by": null,
      "filters": null,
      "frequency": "",
      "goal": {
        "display_template": "",
        "template": ""
      },
      "limit": null,
      "projectID": "",
      "query": {},
      "query_limit": null
    },
    "default_goal": "",
    "description": "A stable process flow the documentation cites.",
    "failover_agentflow_ids": null,
    "image": "https://files.example.com/connectors/knowledge_base.jpeg",
    "initialAgent": "6ab1948bf90472594bd3e7d5",
    "isActive": true,
    "is_cron_scheduled": false,
    "is_deleted": false,
    "kind": "flow",
    "last_used": 1790022750.16453,
    "name": "docs-fixture-flow",
    "organization_id": "6a79a770b6c128ccc24bfca8",
    "projectID": "6aa9beb7ec8121a43b6c791b",
    "role": "tester",
    "type": "master",
    "unique_id": "1lk3gh5",
    "updated_at": 1790022795.122162
  }
}
More details

Every parameter is optional: get-process-flow answers a bare call. The result carries the process flow with its agents and wiring; agents is the populated list of the process flow's agents, and the full response shows it as … because the real value runs to thousands of characters.

To build one, see create-process-flow; to change an agent in it, update-process-flow.

Not marked consequential: it is audited lightly and the project's write gate never holds it.

Every tool call works the same way: How every tool call works.