## Inspiration
Every small-business owner we know runs the same painful ritual at
month-end:
export transactions from the bank, paste them into a spreadsheet, guess at
categories, eyeball the numbers, and hope they set aside enough for tax.
The
data lives in five different places and the "analysis" is manual, late, and
error-prone.
We didn't want to build another chatbot that answers questions about finances. We wanted an agent that actually does the month-end review — plans the steps, moves the data, reasons over it, and leaves the owner with a finished report and a concrete to-do list. The hard part isn't the math; it's getting clean, trustworthy data in front of the model. That's exactly where Fivetran became the agent's superpower.
## What it does
Suite is a financial-operations platform for small businesses. Its flagship is the Financial Review Agent, a multi-step mission that runs end to end with the owner in control:
- Checks connected accounts (bank links via Plaid).
- Triggers a Fivetran sync through the Fivetran MCP server — landing the business's operational MongoDB data into BigQuery.
- Verifies the sync completed before trusting the numbers.
- Retrieves the latest transactions from the Fivetran-synced BigQuery warehouse.
- Categorizes every transaction.
6–8. Computes revenue, expenses, net cash flow, and an estimated tax
reserve.
- Compares actuals against budget targets.
- Detects anomalies — expense spikes vs. the prior period and
dangerous
category concentration. - Generates an executive summary and recommendations with Gemini.
- Takes action — writes action items / tasks, not just text.
- Saves the report.
Every one of these 13 steps streams live to the dashboard over Server-Sent
Events, so the user watches the agent plan and execute in real time — and
stays
in the loop the whole way.
## How we built it
- Google Cloud Agent Builder + Gemini (Vertex AI) are the brain. Gemini turns the computed figures — revenue, expenses, cash flow, anomalies — into a plain-English executive summary and 2–3 specific, prioritized recommendations.
- Fivetran (the superpower) is the data backbone. The agent calls the Fivetran MCP server to trigger and verify a connector sync, moving transaction documents out of MongoDB and into BigQuery, where the agent can reason over a clean, query-able analytical warehouse instead of brittle ad-hoc exports.
- BigQuery is the analytical layer. Fivetran's MongoDB connector lands
each
document in a JSON
datacolumn, so we extract fields withJSON_VALUE/JSON_QUERYand respect_fivetran_deletedfor correctness. - NestJS (API) orchestrates the mission and owns the tool surface the agent acts through (accounts, transactions, budgets, reports, recommendations, tasks, tax estimation).
- Next.js (web dashboard) renders the live agent run, the resulting
report,
and the generated action items. - MongoDB is the operational source of truth; Plaid provides the bank connections; the whole thing is a Turborepo + pnpm monorepo.
## Challenges we ran into
- Trusting the data before reasoning on it. An agent that reasons over a half-finished sync produces confidently wrong numbers. We made the agent explicitly trigger the Fivetran sync and verify its status as discrete, visible steps before reading a single transaction.
- Bridging document data and a SQL warehouse. Fivetran lands MongoDB
documents as JSON in BigQuery; getting typed, analytics-ready rows out of
that
meant careful
JSON_VALUE/JSON_QUERYextraction and soft-delete handling. - Making autonomy observable. A black-box agent is impossible to trust, so we built the whole run around a live SSE step-stream — the user sees each plan step start, run, and finish with a human-readable detail line.
- Graceful degradation. Each capability (Fivetran, BigQuery, Gemini) checks whether it's configured and falls back cleanly, so the agent keeps finishing the mission even when one integration is unavailable.
## What we learned
- An agent is only as good as its data pipeline. Fivetran + MCP turned
"the
data is scattered and stale" from the hardest problem into a single, agent-triggerable step — that's what let the rest of the mission be reliable. - "Show your work" is a feature, not a nicety. Streaming the 13 steps made the agent feel trustworthy and kept a human in control of a financial workflow.
- Separating the brain (Gemini) from the hands (typed tools) and the data (Fivetran → BigQuery) kept each part testable and swappable.
## What's next
- Richer MCP-driven actions (schedule reviews, file reminders, draft vendor-renegotiation emails).
- Multi-entity / multi-currency consolidation.
Forecasting and cash-runway projection on top of the BigQuery warehouse.
data is scattered and stale" from the hardest problem into a single, agent-triggerable step — that's what let the rest of the mission be reliable.
"Show your work" is a feature, not a nicety. Streaming the 13 steps made the agent feel trustworthy and kept a human in control of a financial workflow.
Separating the brain (Gemini) from the hands (typed tools) and the data (Fivetran → BigQuery) kept each part testable and swappable.
## What's next
- Richer MCP-driven actions (schedule reviews, file reminders, draft vendor-renegotiation emails).
- Multi-entity / multi-currency consolidation.
- Forecasting and cash-runway projection on top of the BigQuery warehouse.
Built With
- bigquery
- fivetran
- gemini
- github-jobs
- google-cloud-agent-builder
- model-context-protocol
- mongodb
- nestjs
- next.js
- node.js
- plaid
- pnpm
- python
- react
- resend
- server-sent-events
- turborepo
- typescript
- vertex-ai

Log in or sign up for Devpost to join the conversation.