
This playbook is part of our MCP playbooks, within The MCP Guide. Want help setting it up for your team? Request a free MCP readiness review.
A cash flow report answers three questions: how much cash you have, what's coming in, and what's going out. Owners and finance leads usually build it in a spreadsheet each week from the bank, the ledger and the payment processor. With MCP (Model Context Protocol, the standard that lets AI apps read business tools), an assistant can pull those numbers directly and write a one-page summary for you to check.
This is one of the safest MCP workflows, because every step can run read-only. The tools below are the ones each vendor documents as of October 2026.
Key Takeaways
- A cash report needs three inputs: current cash, receivables (money owed to you) and payables (money you owe).
- Xero's hosted connector, QuickBooks's connector and LedgerMCP (built by eSEOspace) all document cash flow or cash position tools.
- Stripe's server adds balance and payout data if customers pay you through Stripe.
- No step here needs write access, so connect read-only where you can.
- Keep the forecast assumptions human; LedgerMCP's own projection says it does not model everyday future spending.
What you need
- An MCP client such as Claude or ChatGPT.
- Your ledger's server (pick one):
- Xero. The hosted connector lists
get_cash_position,get_aged_receivables,get_aged_payables,get_bills,get_repeating_invoicesandget_repeating_bills, and connects read-only, per Claude's Xero listing. Profile: Xero MCP server. - QuickBooks Online. The hosted connector lists
cash-flow-quickbooks-accountandqbo_accounting_get_ar_aging_summaryon Claude's QuickBooks listing. Intuit's local server hasget_cash_flow,get_aged_receivablesandget_aged_payables. Profile: QuickBooks MCP server. - LedgerMCP (built by eSEOspace). Its docs list
run_cash_flow,cash_calendar,list_bank_accounts,list_documentsandlist_recurring. Profile: LedgerMCP MCP server. - Optional: Stripe. Stripe's MCP server supports "Retrieve balance," "List all payouts" and "List all balance transactions," plus a
get_balance_summarytool in public preview.
The workflow
- Get cash today. In Xero, call
get_cash_position. In LedgerMCP,list_bank_accountsshows ledger balances next to the bank's own reported balances, which is a quick way to spot a missing feed. In QuickBooks, the balance sheet tool (qbo_accounting_get_balance_sheet) gives cash accounts as of a date. - Add money in transit from Stripe. Use
stripe_api_readwith "Retrieve balance" for available and pending funds, and "List all payouts" for transfers on their way to your bank. - List what's coming in. Pull aged receivables:
get_aged_receivablesin Xero,qbo_accounting_get_ar_aging_summaryin QuickBooks, or open and overdue invoices fromlist_documentsin LedgerMCP. Xero'sget_repeating_invoicesshows scheduled billing. - List what's going out. Pull aged payables and bills:
get_aged_payablesandget_billsin Xero,get_aged_payablesin Intuit's local server, or bills fromlist_documentsin LedgerMCP. Add recurring charges from Xero'sget_repeating_billsor LedgerMCP'slist_recurring, which also flags missed payments and price changes. - Run the statement for the period. For last month or quarter, run the cash flow statement:
cash-flow-quickbooks-account(QuickBooks),get_cash_flow(Intuit local), orrun_cash_flow(LedgerMCP). LedgerMCP's docs say its cash flow "Always ties: opening + net change = closing." - Draft a short outlook. LedgerMCP's
cash_calendarshows 45 days of actual and 30 days of projected balances. Its docs say the projection is deterministic and that everyday future spending is not modeled. For other ledgers, ask the AI to lay known receivables and bills on a weekly grid, and add your own assumptions. - Write the one-pager. Cash now, expected in, expected out, the low point, and the three items that matter most. A person reads it before anyone acts on it.
Example prompts
- "What's our cash position today, and what do aged receivables and aged payables look like?" (Xero:
get_cash_position,get_aged_receivables,get_aged_payables) - "Show the statement of cash flows for last quarter and explain the three biggest changes." (QuickBooks:
cash-flow-quickbooks-account) - "What is my Stripe available and pending balance, and which payouts are on the way?" (Stripe:
stripe_api_readwith Retrieve balance and List all payouts) - "Show my cash calendar and list any recurring bill that was missed or changed price." (LedgerMCP:
cash_calendar,list_recurring)
Guardrails
- Read-only access. Xero's hosted connector is read-only by design. LedgerMCP offers read-only keys that "can run every list and report but never write." For Stripe, scope an agent API key to the reads you need, or use OAuth and grant limited permissions.
- No money moves from this workflow. Stripe's Treasury tools such as
send_moneyandtransfer_moneyexist in public preview. Don't grant them for reporting. Stripe says certain writes, such as outbound payments, need human confirmation. - Check the numbers against the bank. A report is only as good as the last sync. Compare cash with your bank's balance before you share the report.
- Assumptions belong to people. Payroll timing, a big customer paying late, or a tax payment are judgment calls.
- See excessive permissions in MCP and the MCP security center.
What the one-pager should look like
Keep the format the same every week, so changes stand out. A simple layout:
| Section | What goes in it |
|---|---|
| Cash now | Bank balances plus Stripe available and pending funds |
| In, next 30 days | Receivables by due date, repeating invoices, expected payouts |
| Out, next 30 days | Bills by due date, recurring charges, payroll and tax dates you add |
| Low point | The lowest projected balance and the week it lands |
| Watch list | Late customers, missed recurring bills, price changes |
Ask the AI to cite which tool each number came from. That makes the report easy to check, and it shows when a figure was estimated rather than read from a system.
What to measure
- How often the report's cash figure matches the bank on the first check.
- Lead time: from week end to a report in the owner's hands.
- Forecast error: last week's expected in and out against what actually happened.
- Receivables and payables past 60 days, week by week.
- Surprises: payments nobody expected, in either direction.
Next step
Use this report as the input to a month-end close, and see more finance workflows in the MCP playbooks hub.
Frequently asked questions
Does Xero's MCP connector give a cash flow forecast?
Claude's Xero listing shows get_cash_position, aged receivables and payables, and repeating invoices and bills. It does not list a forecast tool, so the AI builds the outlook from those inputs.
Can I include Stripe payouts?
Yes. Stripe's MCP docs list "Retrieve balance," "List all payouts" and "List all balance transactions" among the supported API methods, read through stripe_api_read.
Does LedgerMCP forecast cash?
LedgerMCP (built by eSEOspace) has cash_calendar, which shows 45 days of actual and 30 days of projected balances. Its docs say everyday future spending is not modeled, so treat it as a known-items view.
Does any of this need write access?
No. Every step reads data. Use read-only connectors or keys and keep payment tools switched off.











