{"id":16136,"plugin_id":"plugin_asdk_app_6a983157d7f88191b7424697ca84a535","kind":"skill","collection_source":null,"comparison_source":null,"observed_at":"2026-09-30T23:12:50.658Z","digest":"3d9b7d5920270d2bc55c56e9156921213d90de4ce5c60aa5bc74d9568eb429a0","against":null,"payload":{"name":"bankpilot-payment-monitoring","description":"Answer questions about a user's recurring bank payments with the BankPilot MCP tools (get_monitoring_status, list_transactions, list_rules, get_accounts). Use when the user asks whether monitored payments arrived, what is pending, overdue or missing (ausstehend, überfällig, fehlend), for payments to a specific counterparty or rule, for their monitoring rules, or whether a bank connection needs renewing. Read-only; German-first users.","included_files":[{"relative_path":"references/tools.md","size_in_bytes":2850}],"skill_md_contents":"---\nname: bankpilot-payment-monitoring\ndescription: Answer questions about a user's recurring bank payments with the BankPilot MCP tools (get_monitoring_status, list_transactions, list_rules, get_accounts). Use when the user asks whether monitored payments arrived, what is pending, overdue or missing (ausstehend, überfällig, fehlend), for payments to a specific counterparty or rule, for their monitoring rules, or whether a bank connection needs renewing. Read-only; German-first users.\n---\n\n# BankPilot payment monitoring\n\nUse this skill when the BankPilot app is connected and the user asks about\ntheir monitored recurring payments, their transactions, their monitoring\nrules, or the health of their bank connections. BankPilot is read-only: it\ncan report, it can never move money, change rules or touch bank logins.\n\n## Workflow\n\n1. Pick the one tool that answers the question (see the table below). One\n   call is almost always enough; do not \"warm up\" with other tools.\n2. Call it with the narrowest arguments that fit the question (`rule_id`,\n   `search`, date range, `limit`).\n3. Answer in the user's language (German by default), in the format rules\n   below, and state the last bank sync date whenever timing matters.\n4. If the user asks for something BankPilot cannot do, say so in one\n   sentence and point to the BankPilot app (see Limits). Do not call a tool\n   to \"try anyway\".\n\n## Which tool\n\n| Question | Tool | Notes |\n| --- | --- | --- |\n| Did all monitored payments arrive? What is pending / overdue / missing? Which payments are due? | `get_monitoring_status` | Already includes the last sync time and connections needing re-authentication. Never add `get_accounts` or `list_rules` for a status question. |\n| Payments to / from X, the last N payments of X, how much did I pay X | `list_transactions` | If X is a rule name, pass its `rule_id` (from a previous `list_rules` or status call); otherwise use `search`. Use `limit` for \"the last N\". |\n| Uncategorised payments, payments in a category, payments in a period, payments over/under an amount | `list_transactions` | `category: \"Uncategorised\"`, `from_date`/`to_date`, `min_amount`/`max_amount` (signed). |\n| What rules do I have? What is monitored? | `list_rules` | Show ended rules (`end_date` in the past) separately. |\n| Do I need to renew a bank connection? Which banks are linked? | `get_accounts` | Only for questions about connections themselves. |\n\n## Reading the data\n\n- Amounts are signed: negative = money out, positive = money in. Show them\n  the way the user reads them (e.g. \"1.214,24 €\" for an outgoing payment,\n  \"+1.000 €\" for income). Never flip a sign.\n- Rule status: `OK` = payments arrived as expected; `OVERDUE` = the last\n  payment is later than the cadence allows; `MISSING` = no matching payment\n  in the window at all. `expected_count` vs `actual_count` says how many\n  were due vs. seen.\n- `last_sync_finished_at` is when BankPilot last pulled data from the\n  banks. Payments after that date cannot be visible yet; say so instead of\n  calling something \"missing\".\n- `connections_needing_reauthentication` (status) or `needs_reauthentication`\n  (accounts): the bank link must be renewed in the BankPilot app before new\n  data can arrive. Mention it whenever it is non-empty.\n- `total_matches` vs `returned`: if more rows exist than were returned,\n  say how many there are in total.\n\n## Answer format\n\n- Lead with the answer in one sentence (\"Aktuell ist keine überwachte\n  Zahlung überfällig.\" / \"Two rules are overdue: …\").\n- Lists of payments: a table with date, counterparty, amount; newest first.\n  For a single counterparty, a column with the billing month (\"Beitragsmonat\")\n  is helpful when the description carries it.\n- Rules: name, expected amount (\"ca.\" when a tolerance applies), cadence\n  (`frequency_days` 30 = monatlich, 90 = alle 3 Monate, 365 = jährlich).\n- Point out changes the data shows (an amount that rose, a payment that\n  came early or late) in one short sentence after the table.\n- Do not invent categories, dates or reasons. If a field is null, leave it\n  out rather than guessing.\n\n## Limits (say these plainly, then stop)\n\n- No transfers, no payments, no standing orders: \"BankPilot kann keine\n  Überweisungen ausführen.\"\n- No creating, editing or deleting rules, categories or connections: these\n  are done in the BankPilot app (Regeln / Bankverbindungen tabs).\n- No bank credentials, IBANs beyond what a row shows, or data of other\n  people.\n- Questions unrelated to the user's payments do not use BankPilot at all.\n\nSee `references/tools.md` for the exact tool arguments and result fields.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}