Home · Setup · Windsurf

MCP Petty Cash in Windsurf

A petty cash float on the imprest system: vouchers out of the tin, a count that reconciles them to the minor unit, and the replenishment that puts the float back. You open a tin with an imprest amount and a custodian, and then you type the receipts as they come: amount in whole minor units, date, category, description, payee, receipt reference. Whenever you count the cash, reconcile tells you what the paperwork said the tin should hold, what you actually counted, the difference to the minor unit, and every voucher that count covers, all marked reconciled. A count is treated as a FACT, so it moves the book balance: the difference is carried forward as an over or short rather than re-reported at every later count, which is what makes a tin that is short by a little every month readable as a run rather than as one number. When the tin runs low, replenish_request works out what the cheque has to be, and this is the decision the whole server rests on: it is imprest minus balance, never the sum of the vouchers. The two differ by exactly what the counts found over or short. The difference comes back as its own cash_over_short journal line rather than folded into an expense category where it would look like postage, and under the imprest system the petty_cash account does not move at a replenishment at all: the journal credits cash and debits the expenses per category, in the cash book's own account ids, so a category spelled Office Supplies, office supplies and OFFICE SUPPLIES is one account and not three. A voucher larger than the balance on its own date is refused, and so is a back-dated one that would make any LATER day negative, which the at-the-date check alone does not catch. A reconciled voucher cannot be deleted, because the cash it took out was already counted. No balance is stored anywhere: every balance is derived on the call from the imprest, the top-ups, the vouchers and what each count found.

Nine tools against Cascade's ceiling of 100, and it pairs naturally with mcp-cash-book and mcp-expense-tracker, whose account ids and expense payload it speaks; budget the three at roughly 25 tools when you decide what else fits alongside them.

What you get in Windsurf

You sayTool
Open a EUR 500 office float on 2026-03-01, Anna holds the tin.float_open
Stamps 1,250 minor units on 2026-03-02, postage. Taxi 3,480 on the 5th, travel, receipt 4471.voucher_add
I counted 29,795 in the tin on 2026-03-31. What is the difference, and what does the replenishment cheque have to be?reconcile

The cheque is not the sum of the vouchers, and nothing in the voucher trail says so. Measured on this server's worked month: a 50,000 minor unit imprest, five vouchers totalling 20,194, so the paperwork says the tin holds 29,806 on the 31st. It holds 29,795. The count is short by exactly 11 minor units, eleven cents no receipt will ever explain. The replenishment is therefore 20,205, not 20,194. Reimbursing the voucher total instead is not obviously wrong: it is what the paperwork adds up to, it reconciles against the receipts, and the next count comes back short by 11 again, which reads as a fresh 11 rather than the same one. The unit suite runs three cycles of exactly that and the float ends at 49,967 against a 50,000 imprest, 33 minor units light, with three clean-looking reconciliations behind it, each reporting a difference of exactly 11 and nothing worse. The tin gets smaller and no single number in the record ever looks wrong.

Install it in Windsurf

The file is mcp_config.json, and the key inside it is mcpServers.

ScopePath
macOS, Windows and Linux~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "petty-cash": {
      "command": "npx",
      "args": ["-y", "@theluckystrike/mcp-petty-cash"]
    }
  }
}

Save and reopen the MCP Servers list; Cascade picks it up without restarting the editor.

The npm publish of @theluckystrike/mcp-petty-cash is pending; until then use the .mcpb bundle or a clone and build from the latest release.

No install: the hosted endpoint

The same server runs at https://mcp.zovo.one/mcp/https://mcp.zovo.one/mcp/petty-cash over MCP streamable HTTP, no install. Mint a free token with curl https://mcp.zovo.one/mcp/token, or use a Pro key. It has no filesystem, so a file comes back as a one-hour download link.

{
  "mcpServers": {
    "petty-cash": {
      "url": "https://mcp.zovo.one/mcp/https://mcp.zovo.one/mcp/petty-cash",
      "headers": { "Authorization": "Bearer <token>" }
    }
  }
}

Windsurf notes worth knowing first

Read this first: mcp_config.json applies to the legacy Cascade agent only. The Devin Local agent, the default for new tabs, takes its servers from the Devin CLI config files, so a correct entry here can still be invisible in a fresh tab. The other hard number is a cap: Cascade reaches at most 100 tools at once, and every enabled server spends from it.

Free: reconcile is free and unlimited on every tier. Whether the cash in the tin matches the paperwork is the question this server exists to answer, and a free tier that withholds the answer is a demo rather than a tool, so the count and its difference are never metered. voucher_delete and topup_record are free for the same reason: a voucher typed in twice would otherwise cost a slot with no way back but a key, and the cash physically going back into the tin is not a feature to sell. The meter is on the volume of record keeping instead: one float, and twenty vouchers a calendar month, which is a real one-tin office. Pro is $19 once, verified offline.

Questions

Where does Windsurf keep its MCP config?

~/.codeium/windsurf/mcp_config.json, under mcpServers. Reach it from the MCPs icon at the top right of the Cascade panel, or Devin Settings, Cascade, MCP Servers.

I edited the file and a new tab still cannot see MCP Petty Cash.

That file applies to the legacy Cascade agent only. The Devin Local agent, the default for new tabs, reads its servers from the Devin CLI config files instead. Check which agent the tab runs.

How many servers can I load at once?

Cascade reaches at most 100 tools at any one time, and every enabled server spends from that single budget. MCP Petty Cash contributes 9 tools, so keep the enabled list short rather than counting servers.

Related

MCP Petty Cash in detail · The same server in VS Code and Cline · Every server in Windsurf · Guides · Windsurf docs · Buy Pro