finops-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FINOPS_DEMO | No | Set to 1 to run with the fictional demo data and no Stripe account needed. | |
| STRIPE_API_KEY | No | Restricted read-only Stripe API key with Read access to Invoices, Payouts, Balance, Balance transactions, and Disputes. A full sk_live_ key works but prints a warning. | |
| FINOPS_BILLS_DB | No | Optional path to the invoice-intake bills register SQLite database containing approved and exported bills that are not marked paid. Without it, payables explains how to set it and the forecast has no outgoing bills. | |
| FINOPS_DEFAULT_TERMS_DAYS | No | Payment terms for bills with no printed due date (default 30). | 30 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| receivablesA | Open customer invoices in Stripe with days overdue and an aging bucket. min_days_overdue=1 lists only overdue invoices; 0 lists everything still open. |
| invoice_detailA | One Stripe invoice: customer, lines, totals, payment attempts and the hosted invoice link. |
| payoutsB | Recent Stripe payouts to the bank, newest first, with arrival date and status. |
| payout_breakdownA | What one payout is made of: gross, fees and net per category (sales, refunds, chargebacks, fees), mapped to journal accounts, and whether the lines add up to the amount that hit the bank. |
| disputesB | Stripe disputes (chargebacks) with the evidence deadline and days left to respond. |
| payablesA | Approved supplier bills not yet paid, due within the window (overdue ones included). Needs FINOPS_BILLS_DB (an invoice-intake register) or demo mode. |
| balanceA | Stripe balance per currency: available (can be paid out now) and pending (still settling). |
| cash_forecastA | Day-by-day cash forecast for one currency: bank balance you give + Stripe available today, Stripe pending and payouts in transit, customer invoices on their due date, approved bills on theirs. Returns each day with movement, the lowest point and the first day cash goes negative. The assumptions list in the result must be shown to the user with the numbers. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| weekly_cash_review | A Monday finance check-in: what's owed to us, what we owe, and whether cash holds for two weeks. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Each tool targets a distinct resource: receivables vs payables vs payouts vs disputes vs balance vs cash_forecast are clearly differentiated, and the two detail tools (invoice_detail, payout_breakdown) are unambiguously paired with their list counterparts via descriptions. There is no meaningful overlap that would cause misselection.
All names are lowercase noun phrases in a coherent style: plural nouns for collections (receivables, payouts, disputes, payables) and underscored compounds for detail/derived views (invoice_detail, payout_breakdown, cash_forecast). Minor deviation from a strict single convention (singular 'balance', no verb prefix) but overall predictable and readable.
Eight tools is well-scoped for a read-only FinOps reporting server, covering AR, AP, payouts, disputes, balance and forecasting without redundancy. Each tool earns its place.
Strong read-only lifecycle coverage for cash-flow reporting, including aging, payout reconciliation, disputes and a forward forecast. Minor gaps remain, such as no dedicated refunds tool or customer-level aggregation, but core financial workflows are covered.