Flow
Menu

Look up

Reference

Every REST operation and the MCP tool generated from it, derived from the spec the operation is implemented against.

The REST API is the source of truth and the MCP surface is generated from it. So is this: 37 operations, 35 of them on the MCP surface, one page each, naming the call and the tool together.

Captures

ingest-captureIngest something with no decision taken yetPOST /api/v1/captures
list-capturesThe inbox — everything not yet triagedGET /api/v1/captures
triage-captureThe one path out of the inboxPOST /api/v1/captures/{id}/triage

Feedback

report-errorReport a bug, an idea or a question about Flow itselfPOST /api/v1/feedback

Ingest endpoints

create-ingest-endpointPublish a URL something else can post into the inboxPOST /api/v1/ingest-endpoints
get-ingest-endpointOne endpoint, and the deliveries its rules droppedGET /api/v1/ingest-endpoints/{id}
list-ingest-endpointsThe endpoints this account has publishedGET /api/v1/ingest-endpoints
revoke-ingest-endpointClose an endpoint for goodDELETE /api/v1/ingest-endpoints/{id}
rotate-ingest-endpoint-tokenMint a new token at the same URLPOST /api/v1/ingest-endpoints/{id}/rotate
update-ingest-endpointChange what an endpoint takes and stamps, keeping its URLPATCH /api/v1/ingest-endpoints/{id}

Projects

accept-invitationAccept an invitationPOST /api/v1/invitations/{id}/accept
add-project-memberAdd somebody to a projectPOST /api/v1/projects/{id}/members
create-projectCreate a projectPOST /api/v1/projects
create-teamCreate a team in a projectPOST /api/v1/projects/{id}/teams
decline-invitationDecline an invitationDELETE /api/v1/invitations/{id}
get-projectRead one project, with its members and teamsGET /api/v1/projects/{id}
list-invitationsList your open invitationsGET /api/v1/invitations
list-projectsList the projects you belong toGET /api/v1/projects
remove-project-memberRemove somebody from a project, or leave itDELETE /api/v1/projects/{id}/members/{user}
update-projectRename a project, or change what it points atPATCH /api/v1/projects/{id}
update-teamRename a team, or replace its membersPATCH /api/v1/teams/{id}

References

retract-referenceWithdraw a reference without erasing itDELETE /api/v1/tasks/{id}/references

Runs

list-agent-runsList runs and what they costGET /api/v1/agent-runs
upsert-agent-runRecord an agent run, or update the one at this addressPOST /api/v1/agent-runs
retract-linkWithdraw an edge without erasing itDELETE /api/v1/task-links

Tasks

confirm-taskConfirm a commitment is still truePOST /api/v1/tasks/{id}/confirm
get-taskRead one task with everything hanging off itGET /api/v1/tasks/{id}
list-tasksList tasksGET /api/v1/tasks
reconcile-taskClear a flag a write raised without being refusedPOST /api/v1/tasks/{id}/reconcile
updateTaskUpdate a task in placePATCH /api/v1/tasks/{id}
update-tasksUpdate tasks in place — one, or severalPATCH /api/v1/tasks/batch
upsert-tasksCreate or resolve tasks — one, or several linked to each otherPOST /api/v1/tasks/batch

Views

get-nextThe ready set, ranked — or any slice of open work you ask forGET /api/v1/next
get-orderThe blocks DAG in topological wavesGET /api/v1/order
getSnapshotThe rows a graph is drawn fromGET /api/v1/snapshot
render-graphRender a neighbourhood as a diagramGET /api/v1/graph
validate-projectThe validator — every inconsistency Flow's own arithmetic can findGET /api/v1/projects/{id}/validate

What is deliberately not here

Signing in (/api/auth), API keys (/api/account) and the OAuth endpoints at the root have no spec, and that is the decision rather than an omission: a path outside/api/v1 gets no MCP tool, so keeping them specless is what keeps a credential-minting call off the surface an agent can reach.

Reconnecting after a release

An MCP client reads the tool list once, at connect. An operation renamed or added after that is invisible to it until it reconnects. Flow releases often, so a session left open across one is running against a tool list that may already be behind the35 tools this build serves. The server names its own build in the same handshake a client already makes: this deployment answers as v0.119.0. There is no push notice yet when the number moves. Reconnect after a release you know happened, or when a call that should exist answers "not found."