Skip to main content
Glama
shaack

mcp-for-money-money

by shaack
README.md
# mcp-for-money-money

Ein kleiner MCP-Server (Model Context Protocol), der MoneyMoney auf dem Mac per
AppleScript kapselt. Er liefert die Soll-Liste der Abbuchungen für den
Rechnungsabgleich (siehe HowTo „Eingangsrechnungen sammeln mit Apple Mail",
Schritt 1). Geschwister-Server zu `mcp-for-apple-mail`: MoneyMoney liefert die
Buchungstage, Apple Mail liefert die PDFs.

## Tools

| Tool | Zweck |
|------|-------|
| `export_accounts` | Kontenliste als plist, zeigt die exakten Kontonamen |
| `export_transactions` | Umsätze eines Kontos im Zeitraum (bookingDate, amount, name, purpose) |

## Installation

```bash
npm install
```

Kein Build-Schritt: reines ESM-JavaScript, läuft direkt mit Node (>= 18).

## Voraussetzung

MoneyMoney muss laufen und **entsperrt** sein. Ist die Datenbank gesperrt,
schlägt der Export mit einer AppleScript-Fehlermeldung fehl (der Server reicht
sie durch).

## Lokal testen

```bash
npm run inspect
```

## Registrieren

Claude Code:

```bash
claude mcp add money-money -- node /absolute/path/to/mcp-for-money-money/src/index.js
```

Claude Desktop, in `~/Library/Application Support/Claude/claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "money-money": {
      "command": "node",
      "args": [
        "/absolute/path/to/mcp-for-money-money/src/index.js"
      ]
    }
  }
}
```

## Beispielablauf

1. `export_accounts`, um den exakten Kontonamen zu sehen.
2. `export_transactions` mit `account: "My Checking Account"`, `fromDate: "2026-04-01"`,
   `toDate: "2026-06-30"`. Das plist enthält je Buchung bookingDate, amount, name
   und purpose, in Buchungsreihenfolge je Tag. Daraus die Soll-Liste bauen.
3. Danach mit `mcp-for-apple-mail` die passenden PDF-Rechnungen sammeln und gegen
   diese Liste abhaken. Maßgeblich ist der Abbuchungstag, nicht das Rechnungsdatum.

TDQS

A3.8/5.0

Scored across 2 tools

Disambiguation5/5

The two tools target completely distinct resources and operations: one exports the account list, the other exports transactions for a specific account. Their purposes are clearly separated with no overlap.

Naming Consistency5/5

Both tools follow the exact same verb_noun pattern: export_accounts and export_transactions. The naming is perfectly consistent and predictable.

Tool Count3/5

With only 2 tools, the server feels thin for what appears to be a specialized MoneyMoney integration, though it may be justified if these are the only needed operations. This is borderline given the narrow domain scope.

Completeness3/5

The two tools cover the core data export flows (getting account references and exporting transactions), but there are no update/delete/cancel operations. For a read-only export purpose this may be complete, yet the transaction export lacks flexibility (e.g., no filtering by type, no summary/aggregation options).

Maintenance

ActivitySlowing
ResponsivenessNo issues