# petty cash [Health: Active]

**Category:** 💰 Finance & Fintech  
**Repository:** https://github.com/theluckystrike/mcp-petty-cash  
**GitHub Stars:** 0  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/petty-cash

## Description
A petty cash float on the imprest system: vouchers, reconciliation and the replenishment.

## Tools
Capabilities this server exposes over MCP:

- **float_open** — Open a float on the imprest system: name, currency, imprest amount in minor units, custodian. Returns `FLOAT-YYYY-NNNN` and the opening journal
- **topup_record** — Record cash going into the tin: amount, date, source. Marks every voucher up to that date reimbursed
- **voucher_add** — Record one voucher out of the tin: amount, date, category, description, payee, receipt reference. Returns `VOU-YYYY-NNNN
- **voucher_delete** — Delete a voucher entered wrongly, while it is still uncounted
- **reconcile** — Count the cash: the expected balance, the difference, the vouchers since the last count, all marked reconciled, and the count recorded
- **replenish_request** — What restores the imprest: the amount, the vouchers it covers, the per-category `expense_add` payload and the double entry. Writes nothing
- **float_report** — Balance against imprest, unreconciled vouchers, the last count, and the history of every difference a count found
- **license_status** — Free or Pro, and the key

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "petty-cash": {
    "command": "npx",
    "args": ["-y","@theluckystrike/mcp-petty-cash"]
  }
}
```

## Documentation

## What petty cash does

The petty cash MCP server keeps a petty cash book for floats operated under the imprest system. A float has a name, currency, imprest amount in minor units, and custodian. The server assigns identifiers such as `FLOAT-YYYY-NNNN` for floats and `VOU-YYYY-NNNN` for vouchers.

It records cash entering the tin, vouchers paid from it, and physical cash counts. Reports show the balance against the imprest, vouchers that have not been reimbursed or reconciled, the most recent count, and the history of differences found during counts.

The server does not post transactions to an accounting system. Instead, it returns an opening journal, a double-entry replenishment, and per-category `expense_add` data for another process or person to use.

## How it works

Open a float with `float_open`, then use `voucher_add` for each payment from the tin. Voucher fields include the amount, date, category, description, payee, and receipt reference. An incorrectly entered voucher can be removed with `voucher_delete` while it remains uncounted.

Use `topup_record` when cash is added to the tin. The operation records the amount, date, and source, and marks vouchers through that date as reimbursed. `reconcile` compares the expected balance with the counted cash, reports the difference and vouchers covered by the count, and marks those vouchers reconciled.

`replenish_request` calculates what is needed to restore the float to its imprest amount. Its result includes the covered vouchers, category totals, and accounting entries, but it writes nothing. This calculation uses the actual balance, so a cash shortage or overage is not silently treated as an expense category.

## Setup and configuration

You can use the hosted streamable-HTTP endpoint at `https://mcp.zovo.one/mcp/petty-cash`. Obtain a token from the connect or token endpoint, then send it as an `Authorization: Bearer` header. Clients that cannot set headers can use the token-path form instead. Calls without a token receive an authorization failure.

For local use, clone the repository, run `npm install && npm run build`, and configure the MCP client to launch `node` with the built `dist/index.js` path. A downloadable `.mcpb` bundle is also available for Claude Desktop. The package is not currently published to npm, so an `npx` installation does not work.

Local data is stored under `${XDG_DATA_HOME:-~/.local/share}/mcp-servers/petty-cash/` in `floats.json`, `vouchers.json`, and `counter.json`. The local implementation makes no network calls and verifies license keys offline.

## Tools and capabilities

- `float_open`: Create an imprest float and return its opening journal.
- `topup_record`: Record cash entering the tin and mark applicable vouchers reimbursed.
- `voucher_add`: Add a payment voucher and return its identifier.
- `voucher_delete`: Remove an uncounted voucher entered incorrectly.
- `reconcile`: Record a cash count and identify the difference and covered vouchers.
- `replenish_request`: Produce replenishment amount, category payload, and double entry without writing changes.
- `float_report`: Return balances, unreconciled vouchers, last count, and difference history.
- `license_status` and `license_activate`: Inspect or activate the server license.

## Limitations and notes

All amounts use integer minor units. The free tier supports one float and 20 vouchers per calendar month; reconciliation, deletion, and top-up recording remain available, while replenishment requests and reports require Pro. Pro removes the float and voucher limits and enables those additional operations.

The server stores and calculates records but does not connect to, or post into, another bookkeeping system. Hosted use sends requests to the hosted endpoint, while the local version keeps its data on the machine.

_Full upstream README: https://allmcps.com/mcp/petty-cash/readme_

