System Atlas

upload_flows

Upload hand-offs between components (from/to by component id, clientId or label) with a flow type. Re-uploading the same flow updates it. Needs an editor key.

Write · editor keyMCP tool

Parameters

  • workspacestringrequired

    Workspace slug

    min 1 charmax 80 chars
  • companystringoptional

    Company slug; defaults to the workspace's own company

    min 1 charmax 80 chars
  • flowsobject[]required
    min 1 itemmax 200 items
  • flows[].fromstringrequired

    Component id, clientId or label

    min 1 charmax 200 chars
  • flows[].tostringrequired
    min 1 charmax 200 chars
  • flows[].flowTypeenumrequired
    moneyinformationmaterialworkenergycontrol
  • flows[].labelstringoptional
    max 200 chars
  • flows[].directionenumoptionaldefault "one_way"
    one_waytwo_way

Example call

Agents call tools by name; you rarely write this by hand. It is here so you can test the server from a shell or your own code.

{
  "name": "upload_flows",
  "arguments": {
    "workspace": "acme-builders",
    "flows": [
      {
        "from": "tool/excel-estimates",
        "to": "tool/quickbooks",
        "flowType": "information",
        "label": "approved budget"
      }
    ]
  }
}

Response

The result is one text content block holding this JSON (abbreviated here). Errors come back with isError: true and a message such as Error 401: … or Invalid input: ….

Response
{
  "company": {
    "slug": "client",
    "name": "Acme Builders"
  },
  "results": [
    {
      "from": "tool/excel-estimates",
      "to": "tool/quickbooks",
      "edgeId": "4b1e…",
      "created": true,
      "connectionType": null
    }
  ]
}

Over REST

The same call without MCP: POST/api/v1/workspaces/:slug/upload/flows