BankBridge est en ligne.Lire l'article de lancement →

Donnez à votre agent
un accès en lecture seule à votre banque.

Posez vos questions sur vos soldes, dépenses, abonnements et placements. Votre agent lit vos comptes en direct, et rien n'est conservé.

Lecture seule. BankBridge ne peut jamais déplacer d'argent, payer de factures ni modifier vos comptes. Comment BankBridge protège vos données →

Utiliser votre banque

La démo utilise des données fictives. Sans inscription.

Fonctionne avec claude.ai (connecteur en un clic), Claude Code, et 27 autres.

Disponible dans l'annuaire des connecteurs Claude →

$5/mois ou $50/an par banque connectée · Annulez à tout moment.

What you can ask

Talk to your money in plain English.

Questions you'd normally ask an accountant. Answered instantly by your agent, against your actual numbers.

Spending
You

“How much did I spend on restaurants last month?”

Your agent

You spent $812.34 on restaurants in March across 44 transactions. That's up $180 from February. Biggest single hit: $112.50 at Kona Grill on the 22nd.

Subscriptions
You

“List every subscription I'm paying for.”

Your agent

I found 9 recurring charges adding up to $187/mo: Netflix ($15.49), Spotify ($10.99), Notion ($10), Anthropic ($20), Dropbox ($119.88/yr), Figma ($15), 1Password ($3), iCloud+ ($2.99), NYT ($17). Want me to flag any you haven't used lately?

Cashflow
You

“Am I making more than I spend?”

Your agent

Yes. In March you made $8,420 and spent $6,315, so you came out $2,105 ahead. Over the last 6 months your average savings rate is 23%.

Investments
You

“How are my holdings doing?”

Your agent

Portfolio is at $26,590, up +$5,930 (+28.7%) vs. cost basis. Biggest gainer: AAPL +34.8%. Biggest drag: NVDA at +17%, because you bought in later.

Numbers shown are illustrative. Your agent reads your actual accounts.

Security & privacy

Read-only, and nothing stored.

Your agent can look at your money. It can’t touch it. See exactly what your agent can and can’t see.

It can't move money

BankBridge asks your bank for read access to transactions and investments, and nothing else. There is no transfer, payment, or trading permission to grant, so neither BankBridge nor your agent can move money, pay a bill, or place a trade, even if a prompt goes wrong.

Your bank password never reaches us

You sign in to your bank in a secure window run by a regulated bank-data provider, the same infrastructure Venmo and Robinhood use. BankBridge and your agent never see your bank login.

Nothing kept after the answer

Each question is fetched live from your bank and the answer goes straight back to your agent. We don't store balances, transactions, or what you asked. We keep only the connection token, encrypted with AES-256-GCM.

You can see every call

The Activity page lists every tool call your agents make, which app made it, and from where, so anything you don't recognize stands out.

Turn it off anytime

Disconnect a bank or delete your account and the connection is revoked right away. If you cancel, it's revoked when your paid period ends.

How it works

From sign-in to your first answer in a few minutes.

Want to see the answers first? The demo runs the same tools on a made-up household, with no signup.

01

Sign in with your email

We email you a link. There's no password to create.

02

Pick a plan

$5 a month or $50 a year for your first bank, through Stripe Checkout. Cancel anytime from Settings.

03

Connect your bank

Sign in to your bank in its own secure window. BankBridge never sees your bank password and can never move money.

04

Ask your agent

Add BankBridge to claude.ai in one click or to Claude Code with one command, then ask your first question.

Why BankBridge

Stop exporting statements to ask one question.

Pasting a statement into a chat answers one question about one month. With BankBridge connected, your agent reads every account you connect as it is today, every time you ask.

BankBridgeExporting statements into a chatYour banking app
Ask questions in plain EnglishYes, in Claude or any of 29 agentsYes, about the files you uploadedMostly search and scroll
Every bank and card in one answerYes, every bank you connectOnly the statements you exportedOne bank per app
Up to dateRead live on every questionAs of the day you exportedYes
Work each monthNone after setupDownload, upload, repeatAdd it up yourself
Cost$5 per bank per monthFree, plus your timeFree

Building a finance agent for other people? See how BankBridge compares to building it yourself.

Supported banks

More than 12,000 US banks, cards, and brokerages.

These are a few of the big ones. Credit unions, neobanks, and brokerages connect too. US institutions only. Not sure about yours? Email hello@greatwork.company before you subscribe.

Chase
Bank of America
Wells Fargo
Citi
Capital One
U.S. Bank
PNC
TD Bank
Truist
American Express
Discover
Ally
Charles Schwab
Fidelity
Vanguard
E*TRADE
Robinhood
SoFi
Navy Federal
USAA
Marcus
Regions
Citizens Bank
Fifth Third
KeyBank
Huntington
M&T Bank
HSBC
Santander
Synchrony
Barclays
Morgan Stanley
Merrill
Varo
Chime
Integrations

Works with every major agent.

A one-click connector for claude.ai, a plugin for Claude Code, and standard remote MCP for everything else. 29 hosts have step-by-step setup guides.

Slash commands, everywhere

19 ready-made prompts. One tap on the + button.

BankBridge ships 19 polished prompt templates. Monthly reports, subscription audits, budget drafts, portfolio checks. In Claude iOS and Android, they appear under the + button in the input bar. In Claude Desktop and Cowork, same place. In Claude Code, type / and pick one. One tap fills the full multi-step prompt; your agent does the rest.

/monthly-check
One-page cashflow, top categories, subscriptions, investment delta.
/subscriptions
Every recurring charge, sorted, with age + price-drift flags.
/portfolio-health
Total value, gain/loss, concentration. Flags >20% positions.
/budget-draft
Draft a realistic budget from your actual last-3-months spending.
/price-creep
Subs whose price went up. Catch hikes before your card does.
/year-in-review
Spotify-Wrapped for your money. Top merchants, fun stats.

Plus 13 more: /balances, /weekly-review, /spending-by, /compare-months, /category-deep-dive, /cashflow-trend, /dividends, /monthly-chart, /category-pie, /tax-prep, /duplicate-check, /fraud-check, /monthly-report.

What your agent can do

Ask anything about your money.

12 tools across accounts, transactions, spending, and investments. Your agent decides which to call.

Prompt

“How much did I spend on food last month?”

tool calllist_transactions
list_transactions({ category: "FOOD_AND_DRINK", start_date: "2026-03-01", end_date: "2026-03-31" })
{
  transactions: [
    { date: "2026-03-28", merchant: "Blue Bottle",   amount: 6.50  },
    { date: "2026-03-27", merchant: "Whole Foods",   amount: 84.23 },
    { date: "2026-03-25", merchant: "Sweetgreen",    amount: 14.95 },
    ... 41 more
  ],
  total_count: 44,
  has_more: false
}
Prompt

“What's my cashflow for March?”

tool callget_monthly_cashflow
get_monthly_cashflow({ month: "2026-03" })
{
  income:    8420.00,
  expenses:  6315.47,
  net:       2104.53,
  top_expense_categories: [
    { category: "RENT_AND_UTILITIES", amount: 2400.00 },
    { category: "FOOD_AND_DRINK",     amount:  812.34 },
    { category: "TRANSPORTATION",     amount:  340.12 }
  ]
}
Prompt

“Show me all my Netflix charges.”

tool callget_merchant_history
get_merchant_history({ merchant: "Netflix" })
{
  merchant: "Netflix",
  charge_count: 24,
  first_charge: "2024-04-12",
  last_charge:  "2026-03-12",
  average_amount: 15.49,
  total_spent:   371.76
}
Prompt

“What are my recurring subscriptions?”

tool callget_recurring_charges
get_recurring_charges({})
[
  { merchant: "Netflix",   amount: 15.49, frequency: "monthly" },
  { merchant: "Spotify",   amount: 10.99, frequency: "monthly" },
  { merchant: "Notion",    amount: 10.00, frequency: "monthly" },
  { merchant: "Anthropic", amount: 20.00, frequency: "monthly" },
  { merchant: "Dropbox",   amount: 119.88, frequency: "yearly" }
]
Prompt

“How are my investments doing?”

tool calllist_holdings
list_holdings({})
[
  { ticker: "AAPL", qty: 50.0, value: 12405.00, gain_loss: 3205.00 },
  { ticker: "MSFT", qty: 24.0, value:  9901.20, gain_loss: 2101.20 },
  { ticker: "NVDA", qty: 30.0, value:  4284.00, gain_loss:  624.00 }
]
Prompt

“Break down my spending by category.”

tool callget_spending_summary
get_spending_summary({ group_by: "category", start_date: "2026-03-01" })
[
  { group: "RENT_AND_UTILITIES", total: 2400.00, count:  4 },
  { group: "FOOD_AND_DRINK",     total:  812.34, count: 44 },
  { group: "TRANSPORTATION",     total:  340.12, count: 18 },
  { group: "ENTERTAINMENT",      total:  120.00, count:  6 }
]
The full surface

All 11 read tools, with real input and output.

Every tool your agent can call, with an example input and the exact shape it returns. Amounts are in dollars. Positive transaction amounts = money spent, negative = money received. The 12th tool, connect_bank, only returns a link you open yourself.

Show the tool reference
01list_accounts

All connected accounts with current balances. No input. Returns everything your agent has access to.

Example input
{}
Example output
{
  "accounts": [
    {
      "id": "acc_blgvvBlXw3",
      "name": "My Checking",
      "official_name": "ACME Bank Everyday Checking",
      "institution": "ACME Bank",
      "type": "depository",
      "subtype": "checking",
      "mask": "0000",
      "current_balance": 110.00,
      "available_balance": 100.00,
      "limit": null,
      "currency": "USD",
      "last_updated": "2026-04-12T09:14:22Z",
      "needs_reauth": false
    },
    {
      "id": "acc_3gE5gUdEC7",
      "name": "My Credit Card",
      "institution": "ACME Bank",
      "type": "credit",
      "subtype": "credit card",
      "mask": "3333",
      "current_balance": 410.00,
      "available_balance": null,
      "limit": 2000.00,
      "currency": "USD",
      "last_updated": "2026-04-12T09:14:22Z",
      "needs_reauth": false
    }
  ]
}
02get_account

Full detail for a specific account by id.

Example input
{ "account_id": "acc_blgvvBlXw3" }
Example output
{
  "id": "acc_blgvvBlXw3",
  "name": "My Checking",
  "official_name": "ACME Bank Everyday Checking",
  "institution": "ACME Bank",
  "institution_id": "ins_109508",
  "type": "depository",
  "subtype": "checking",
  "mask": "0000",
  "current_balance": 110.00,
  "available_balance": 100.00,
  "limit": null,
  "currency": "USD",
  "last_synced_at": "2026-04-12T09:14:22Z",
  "needs_reauth": false
}
03list_transactions

Transactions with filters. Date range, amount range, category, account, pending. Paginated. Newest first. Positive amount = money spent, negative = money received.

Example input
{
  "category": "FOOD_AND_DRINK",
  "start_date": "2026-03-01",
  "end_date": "2026-03-31",
  "limit": 50
}
Example output
{
  "transactions": [
    {
      "id": "tx_lPNjeW1nR6",
      "account_id": "acc_3gE5gUdEC7",
      "account_name": "My Credit Card",
      "account_mask": "3333",
      "date": "2023-09-24",
      "datetime": "2023-09-24T11:01:01Z",
      "name": "PURCHASE WM SUPERCENTER #1700",
      "merchant_name": "Walmart",
      "amount": 72.10,
      "currency": "USD",
      "category": "GENERAL_MERCHANDISE",
      "category_detailed": "GENERAL_MERCHANDISE_SUPERSTORES",
      "pending": false,
      "payment_channel": "in store"
    }
  ],
  "total_count": 342,
  "returned": 1,
  "offset": 0,
  "has_more": true
}
04search_transactions

Case-insensitive substring match on both the raw transaction name and the merchant name.

Example input
{ "query": "Netflix", "limit": 10 }
Example output
{
  "transactions": [
    {
      "id": "tx_abc123",
      "account_id": "acc_3gE5gUdEC7",
      "account_name": "My Credit Card",
      "account_mask": "3333",
      "date": "2026-03-12",
      "name": "NETFLIX.COM",
      "merchant_name": "Netflix",
      "amount": 15.49,
      "currency": "USD",
      "category": "ENTERTAINMENT",
      "category_detailed": "ENTERTAINMENT_TV_AND_MOVIES",
      "pending": false,
      "payment_channel": "online"
    }
  ],
  "total_count": 24,
  "returned": 1,
  "offset": 0,
  "has_more": true
}
05get_spending_summary

Aggregate spending (expenses only) grouped by category, merchant, month, or week. Top N groups by total.

Example input
{
  "group_by": "category",
  "start_date": "2026-03-01",
  "end_date": "2026-03-31",
  "limit": 5
}
Example output
{
  "group_by": "category",
  "start_date": "2026-03-01",
  "end_date": "2026-03-31",
  "groups": [
    { "group": "RENT_AND_UTILITIES", "total": 2400.00, "transaction_count": 4,  "average": 600.00 },
    { "group": "FOOD_AND_DRINK",     "total":  812.34, "transaction_count": 44, "average":  18.46 },
    { "group": "TRANSPORTATION",     "total":  340.12, "transaction_count": 18, "average":  18.90 },
    { "group": "ENTERTAINMENT",      "total":  120.00, "transaction_count":  6, "average":  20.00 },
    { "group": "GENERAL_MERCHANDISE","total":   94.23, "transaction_count":  3, "average":  31.41 }
  ]
}
06get_recurring_charges

Auto-detected subscriptions. Classifies by median interval between charges. Weekly, biweekly, monthly, quarterly, yearly.

Example input
{ "min_occurrences": 3 }
Example output
{
  "recurring": [
    { "merchant": "Netflix",   "amount": 15.49,  "frequency": "monthly",  "last_charge": "2026-04-12", "charge_count": 24, "total_spent": 371.76 },
    { "merchant": "Spotify",   "amount": 10.99,  "frequency": "monthly",  "last_charge": "2026-04-08", "charge_count": 18, "total_spent": 197.82 },
    { "merchant": "Anthropic", "amount": 20.00,  "frequency": "monthly",  "last_charge": "2026-04-03", "charge_count": 11, "total_spent": 220.00 },
    { "merchant": "Dropbox",   "amount": 119.88, "frequency": "yearly",   "last_charge": "2025-11-14", "charge_count":  3, "total_spent": 359.64 }
  ]
}
07get_monthly_cashflow

Income vs. expenses for a month, plus top income sources and expense categories.

Example input
{ "month": "2026-03" }
Example output
{
  "month": "2026-03",
  "income":   8420.00,
  "expenses": 6315.47,
  "net":      2104.53,
  "top_income_sources": [
    { "source": "ACME Corp Payroll", "amount": 8200.00 },
    { "source": "Stripe payout",     "amount":  220.00 }
  ],
  "top_expense_categories": [
    { "category": "RENT_AND_UTILITIES", "amount": 2400.00 },
    { "category": "FOOD_AND_DRINK",     "amount":  812.34 },
    { "category": "TRANSPORTATION",     "amount":  340.12 }
  ]
}
08get_merchant_history

All transactions for a specific merchant plus aggregate stats. Fuzzy substring match. Same engine as search_transactions.

Example input
{ "merchant": "Netflix" }
Example output
{
  "merchant": "Netflix",
  "charge_count": 24,
  "total_spent": 371.76,
  "average_amount": 15.49,
  "first_charge": "2024-04-12",
  "last_charge":  "2026-04-12",
  "transactions": [
    {
      "id": "tx_nflx24", "account_name": "My Credit Card", "account_mask": "3333",
      "date": "2026-04-12", "name": "NETFLIX.COM", "merchant_name": "Netflix",
      "amount": 15.49, "category": "ENTERTAINMENT", "pending": false
    }
  ],
  "total_matching": 24,
  "has_more": true
}
09list_categories

Transaction categories actually present in your data, with counts and totals. Use before filtering by category to see what's available.

Example input
{}
Example output
{
  "categories": [
    { "category": "RENT_AND_UTILITIES", "transaction_count":  24, "total_amount": 14400.00 },
    { "category": "FOOD_AND_DRINK",     "transaction_count": 186, "total_amount":  3420.12 },
    { "category": "GENERAL_MERCHANDISE","transaction_count":  92, "total_amount":  2104.84 },
    { "category": "TRANSPORTATION",     "transaction_count":  48, "total_amount":  1286.40 },
    { "category": "ENTERTAINMENT",      "transaction_count":  41, "total_amount":   612.80 },
    { "category": "INCOME",             "transaction_count":  24, "total_amount": 50520.00 }
  ]
}
10list_holdings

Current investment positions with gain/loss vs. cost basis. cost_basis, gain_loss, and gain_loss_pct may be null if the institution doesn't report cost basis for that security.

Example input
{}
Example output
{
  "holdings": [
    {
      "id": "hold_aapl_001", "account_id": "acc_brk_001", "account_name": "Brokerage",
      "ticker": "AAPL", "name": "Apple Inc.", "type": "equity",
      "quantity": 50.0, "price": 248.10, "value": 12405.00,
      "cost_basis": 9200.00, "gain_loss": 3205.00, "gain_loss_pct": 34.84,
      "currency": "USD"
    },
    {
      "id": "hold_nvda_001", "account_id": "acc_brk_001", "account_name": "Brokerage",
      "ticker": "NVDA", "name": "NVIDIA Corporation", "type": "equity",
      "quantity": 30.0, "price": 142.80, "value": 4284.00,
      "cost_basis": 3660.00, "gain_loss": 624.00, "gain_loss_pct": 17.05,
      "currency": "USD"
    },
    {
      "id": "hold_msft_001", "account_id": "acc_brk_001", "account_name": "Brokerage",
      "ticker": "MSFT", "name": "Microsoft Corporation", "type": "equity",
      "quantity": 24.0, "price": 412.55, "value": 9901.20,
      "cost_basis": 7800.00, "gain_loss": 2101.20, "gain_loss_pct": 26.94,
      "currency": "USD"
    }
  ]
}
11list_investment_transactions

Buys, sells, cash events, fees, transfers. Dividends appear as type='cash' + subtype='dividend'. Filter by the `subtype` field to isolate them.

Example input
{ "type": "sell", "start_date": "2020-01-01" }
Example output
{
  "transactions": [
    {
      "id": "inv_pK99jB9e7m",
      "account_id": "acc_brk_001",
      "account_name": "Brokerage",
      "date": "2020-05-28",
      "name": "SELL Awesome Fund Institutional Class",
      "type": "sell",
      "subtype": "sell",
      "ticker": "AWSMX",
      "security_name": "Awesome Fund Institutional Class",
      "quantity": -47.74,
      "price": 27.53,
      "amount": -1289.01,
      "fees": 7.99,
      "currency": "USD"
    }
  ],
  "total_count": 1,
  "returned": 1,
  "offset": 0,
  "has_more": false
}
Pricing

$5 a month per bank. Or $50 a year.

You pay for the banks you connect. The annual plan works out to about $4.17 a month per bank, $10 a year less than paying monthly.

Annual
Monthly
1 bank
$50/yr
$5/mo
2 banks
$100/yr
$10/mo
3 banks
$150/yr
$15/mo
Each extra bank
+$50/yr
+$5/mo
  • ✓All 12 tools on every plan, including investments
  • ✓Up to 24 months of transaction history
  • ✓Works in claude.ai, Claude Code, and 27 more agents
  • ✓Read-only. Nothing can move money
  • ✓Add or remove banks anytime. The price follows, prorated
  • ✓Cancel anytime. Your bank connections are deleted when the paid period ends
Use your own bank
Not sure yet?
first. Payments run through Stripe.
Questions

Before you connect a bank

Can BankBridge or my agent move money?

No. The bank connection is read-only: it can read balances, transactions, and investment data, and nothing else. BankBridge has no tool that can transfer money, pay a bill, place a trade, or change anything at your bank, so there is nothing for an agent to misuse, even if a prompt goes wrong.

What does BankBridge store?

Your email address, your subscription status, your bank connection tokens (encrypted with AES-256-GCM), your API keys (as SHA-256 hashes, plus an encrypted copy of your personal key so the dashboard can show it to you again), and a call log of which tool your agent called, when, from which app and IP address. It does not store balances, transactions, holdings, or what your agent asked. Every question is fetched live from your bank and forgotten after the answer goes back to your agent.

What if my bank doesn't connect?

Connecting takes a minute or two: you pick your bank, sign in on your bank's own screen, and choose which accounts to share. If yours won't connect, email hello@greatwork.company and we'll work through it with you. You can cancel anytime from Settings and you won't be charged again. To see what your agent can answer before you pay, try the demo.

Do I need to be technical?

No. In claude.ai you add BankBridge from the Claude Connectors Directory, sign in with your email, and start asking. It then works in the Claude apps on your phone and computer too. Claude Code and other developer tools take a one-line install, and the dashboard gives you the exact command.

How do I cancel?

Open Settings in the dashboard and cancel from the billing page. You won't be charged again, and access continues to the end of the period you already paid for. When that period ends, your bank connections are revoked and deleted. Already-billed periods are not refunded.

More answers in the FAQ and on the security page.

Ask your agent where your money went.

Read-only access to every bank you connect, in claude.ai, Claude Code, and 27 more agents. $5 a month per bank, or $50 a year.

Use your own bank

The demo uses sample data and needs no signup. Cancel a subscription anytime from Settings.

Listed on