mcp-for-money-money
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-for-money-moneyexport transactions from "My Checking Account" between 2026-04-01 and 2026-06-30"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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 |
| Kontenliste als plist, zeigt die exakten Kontonamen |
| Umsätze eines Kontos im Zeitraum (bookingDate, amount, name, purpose) |
Related MCP server: banktivity-mcp
Installation
npm installKein 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
npm run inspectRegistrieren
Claude Code:
claude mcp add money-money -- node /absolute/path/to/mcp-for-money-money/src/index.jsClaude Desktop, in ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"money-money": {
"command": "node",
"args": [
"/absolute/path/to/mcp-for-money-money/src/index.js"
]
}
}
}Beispielablauf
export_accounts, um den exakten Kontonamen zu sehen.export_transactionsmitaccount: "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.Danach mit
mcp-for-apple-maildie passenden PDF-Rechnungen sammeln und gegen diese Liste abhaken. Maßgeblich ist der Abbuchungstag, nicht das Rechnungsdatum.
Available Tools
2 toolsexport_accountsKonten auflistenA
Exportiert die Kontenliste aus MoneyMoney als plist. Zeigt die exakten Kontonamen für den account-Parameter von export_transactions. MoneyMoney muss entsperrt sein.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It does disclose the unlock requirement as a prerequisite, which is useful operational context. However, it doesn't clarify the read-only nature explicitly or what the exact output format/return value looks like beyond mentioning 'plist', leaving some behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at three short sentences, front-loaded with the primary action. Every sentence earns its place: what it does, why it's useful, and a key prerequisite. Zero waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has zero parameters, no output schema, and a single sibling tool, the description covers the essential context well. It explains the relationship to export_transactions (which is the main contextual gap a user faces) and the unlock prerequisite. Minor gap: no mention of output format details beyond 'plist', but this is minor for a parameterless listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, so the description doesn't need to explain parameter semantics. The baseline of 4 for zero-parameter tools applies here, as there's nothing to compensate for. The description efficiently communicates all the relevant meaning for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is specific and clear: it exports the account list from MoneyMoney as a plist file. It explicitly states the purpose is to reveal exact account names for use with the account parameter of the sibling tool export_transactions, which strongly distinguishes it from that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states a clear prerequisite ('MoneyMoney muss entsperrt sein' / MoneyMoney must be unlocked) and its usage context (to get exact account names for export_transactions). It doesn't explicitly state when NOT to use it, but the context of revealing exact account names makes the use case clear given the sibling relationship.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_transactionsUmsätze exportierenA
Exportiert die Umsätze eines Kontos in einem Zeitraum. Das plist enthält bookingDate, amount, name und purpose je Buchung, in Buchungsreihenfolge je Tag. Das ist die Soll-Liste der Abbuchungen für den Rechnungsabgleich. MoneyMoney muss entsperrt sein.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | Exportformat, Vorgabe plist | |
| toDate | Yes | Enddatum YYYY-MM-DD (inklusive) | |
| account | Yes | Exakter Kontoname, z. B. "My Checking Account" (siehe export_accounts) | |
| fromDate | Yes | Startdatum YYYY-MM-DD (inklusive) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses the output format (plist with bookingDate, amount, name, purpose in booking order per day) and a critical prerequisite: MoneyMoney must be unlocked. This is useful operational context beyond a simple read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, covering purpose, output semantics, use-case context, and prerequisites in a few sentences. Slightly dense with technical terms but no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the output structure and unlock requirement well. However, it doesn't mention behavior for the CSV format option (a parameter with enum), nor describe error cases (e.g., invalid account name). For a tool with 4 params, no output schema, and no annotations, some gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema documents all parameters (dates, account, format). The description adds value by noting the account needs to be the exact name and referencing export_accounts as the source for account names, plus clarifying date inclusivity implicitly. The plist output details supplement what the schema lacks.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it exports a Konto's transactions in a date range, with a specific verb and resource. However, it does not differentiate from its sibling tool export_accounts, which could cause confusion about which export tool to use.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates it's the target list ('Soll-Liste') for invoice reconciliation, giving some usage context. However, it doesn't explicitly say when to use this vs export_accounts, and no exclusion criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v0.1.0- First observed
export_accounts - First observed
export_transactions
TDQS
Scored across 2 tools
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.
Both tools follow the exact same verb_noun pattern: export_accounts and export_transactions. The naming is perfectly consistent and predictable.
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.
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
Related MCP Connectors
Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
Query your real net worth, spending, transactions, budgets and portfolio from any MCP client.
MCP server for Codat — companies, connections, invoices, bills and financial statements.
Related MCP Servers
- AlicenseBqualityBmaintenanceMCP server for macOS Apple apps. Enables read/write access to Notes, Reminders, Calendar, Contacts, and Safari using SQLite and JXA, all running locally.428173 npm3MIT
- AlicenseNot gradedqualityFmaintenanceMCP server for accessing and managing Banktivity personal finance data, enabling account, transaction, and budget operations through natural language.3MIT
- AlicenseBqualityBmaintenanceLocal MCP server for macOS native apps: Mail, Calendar, Reminders, Notes, Messages, and Contacts. Enables reading and organizing your Mac life through a single stdio process using AppleScript/JXA.4012 npmMIT
- AlicenseAqualityCmaintenanceMCP server that encapsulates Apple Mail on macOS via AppleScript, enabling invoice PDF search, attachment saving, and message flagging through natural language.5MIT