Finmaro 2.4 — Live agent workflows shipped this week Read changelog →
API reference

REST, MCP, SDKs.

Programmatic access to every Finmaro primitive. TypeScript and Python SDKs, plus a Model Context Protocol server for agent-to-agent workflows.

Authentication

All requests are authenticated with a workspace-scoped bearer token.

curl https://api.finmaro.com/v1/workflows \
  -H "Authorization: Bearer $FINMARO_TOKEN"

Workflows

List, inspect, and trigger workflows. POST /v1/workflows/:id/runs starts a new run.

POST /v1/workflows/cash_forecast/runs
{
  "scenario": "base",
  "horizon_weeks": 13,
  "notify": ["#finance"]
}

Runs

A run is the immutable execution record. Fetch its trace, outputs, and confidence score.

GET /v1/runs/run_8H32 → {
  "status": "succeeded",
  "confidence": 0.97,
  "trace_url": "...",
  "outputs": [...]
}

Evals

Score Finmaro against your golden dataset. Used internally on every PR; exposed so customers can do the same.

Webhooks

Subscribe to run.succeeded, run.failed, review.requested, and 12 other events.

TypeScript SDK

import Finmaro from "@finmaro/sdk";
const f = new Finmaro({ token: process.env.FINMARO_TOKEN });
const run = await f.workflows.run("cash_forecast", { scenario: "base" });

Python SDK

from finmaro import Finmaro
f = Finmaro(token=os.environ["FINMARO_TOKEN"])
run = f.workflows.run("cash_forecast", scenario="base")

MCP server

Expose Finmaro to any MCP-compatible agent (Claude, Cursor, internal tools) with one command:

npx @finmaro/mcp serve --token $FINMARO_TOKEN

Hire the CFO your business actually needs.