Agent Plugins Marketplace
← All plugins

bank-feed

v0.12.2

Read-only bank account information (PSD2 AIS via Enable Banking), the finance data tools, local transaction annotations (tags, notes) with note search, batch annotation and spend-by-tag aggregation, deterministic auto-tagging rules applied at ingest, and ledger backups with a protected restore.

Claude Code1 Skill1 MCP serverstdio

By Nicola Bonzanni0 GitHub starsUpdated 1 hour ago

Directory evidence

Runtimes
Claude Code
Parsed components
2 skill or MCP entries
Source updated
Sep 30, 2026
Manifest status
Canonical path parsed

The directory validates manifest shape and source location. It does not execute the plugin or provide a security endorsement. Review the indexing methodology →

Install bank-feed for Claude Code

Installs for the current user
claude plugin marketplace add IchenDEV/agent-plugin-mkt
claude plugin marketplace update agent-plugin-marketplace
claude plugin install bank-feed@agent-plugin-marketplace

Paste and run these commands in a terminal with Claude Code. They add and refresh the PluginsMP catalog, then install this plugin.

The installer fetches third-party code from the source repository shown on this page. This directory validates manifest structure and source location, but does not perform a security audit; review the manifest, components, and source before installing.

Get the source manually
git clone https://github.com/bonzanni/casa-plugin-quarterly-accounting

Clone the source repository, then follow its setup instructions to add the plugin to a compatible client. The plugin root is tests/upstream/component-v0.13.2/plugins/bank-feed/.

Plugin files

tests/upstream/component-v0.13.2/plugins/bank-feed/
├── .claude-plugin/plugin.json
├── skills/bank-accounts/SKILL.md
└── .mcp.json

Included Skills1

bank-accountsskills/bank-accounts/SKILL.md

Bank-account and transaction methodology for the finance specialist — the authorization nudge loop, cache-age and coverage-hole honesty, deterministic arithmetic, untrusted provider text, the two-tap link, the sandbox dry-run bank choice, the opt-in mailbox ferry for the sign-in email, the resident reminder duty, the escape from a refused renewal, what the irreversible tools really do to bank access, how to annotate transactions with tags and notes, and the weekly backup and what a restore does and does not undo.

MCP servers1

bank-feedstdio
command
python3
args
${CLAUDE_PLUGIN_ROOT}/server/bank_feed_server.py
env.CASA_BANKFEED_EB_PRIVATE_KEY
${CASA_PLUGIN_BANKFEED_EB_PRIVATE_KEY}
env.CASA_BANKFEED_EB_APP_ID
${CASA_PLUGIN_BANKFEED_EB_APP_ID}
env.CASA_BANKFEED_EB_CP_TOKEN
${CASA_BANKFEED_EB_CP_TOKEN:-}
env.OP_SERVICE_ACCOUNT_TOKEN
${OP_SERVICE_ACCOUNT_TOKEN}
env.BANKFEED_OP_VAULT
${BANKFEED_OP_VAULT:-}
env.ONEPASSWORD_DEFAULT_VAULT
${ONEPASSWORD_DEFAULT_VAULT}
env.BANKFEED_EB_ENVIRONMENT
${BANKFEED_EB_ENVIRONMENT:-}

MCP configuration uses runtime-provided plugin path placeholders such as ${PLUGIN_ROOT} or ${CLAUDE_PLUGIN_ROOT}. Review the manifest for the runtime-specific expansion rules.

Plugin manifests1

tests/upstream/component-v0.13.2/plugins/bank-feed/.claude-plugin/plugin.json
{
  "name": "bank-feed",
  "version": "0.12.2",
  "description": "Read-only bank account information (PSD2 AIS via Enable Banking), the finance data tools, local transaction annotations (tags, notes) with note search, batch annotation and spend-by-tag aggregation, deterministic auto-tagging rules applied at ingest, and ledger backups with a protected restore.",
  "author": {
    "name": "Nicola Bonzanni"
  },
  "casa": {
    "callbacks": [
      {
        "name": "authorize"
      }
    ],
    "setupTool": "setup_bank_feed",
    "setupProvides": [
      "CASA_PLUGIN_BANKFEED_EB_PRIVATE_KEY",
      "CASA_PLUGIN_BANKFEED_EB_APP_ID"
    ],
    "protectedTools": [
      {
        "name": "unlink_bank",
        "summary": "Revokes the Enable Banking consent identified by {consent_ref}. Refresh stops for that bank's accounts until it is re-linked. Local history is not erased."
      },
      {
        "name": "purge",
        "summary": "Deletes transactions before {before_date} with notes and tags (all = every one, plus balances). user_work={user_work}: erase also wipes ALL notes, tags, rules and account settings. Backup first."
      },
      {
        "name": "forget_local_account",
        "summary": "Erases account {account_id} locally: its history, notes, tags, balances, coverage, sync and link-attempt records. Tagging rules stay. Revokes no bank consent. Backup first."
      },
      {
        "name": "delete_all_data",
        "summary": "Erases the ENTIRE local finance ledger for every linked account: every transaction, balance, session and sync record. The most destructive of these actions. Cannot be undone."
      },
      {
        "name": "label_account",
        "summary": "Changes account {account_id}'s label, category or included status. Excluding it removes the account from every balance and transaction total shown until it is re-included."
      },
      {
        "name": "accept_app_reregistration",
        "summary": "Authorizes setup_bank_feed to REGISTER A REPLACEMENT Enable Banking application because the previously bound one vanished from the control panel. Every bank must be re-linked afterwards."
      },
      {
        "name": "restore_backup",
        "summary": "Replaces the ENTIRE local finance ledger with backup {backup_id}: transactions, tags, notes and rules as they were then. Bank links are kept live, never taken from the backup."
      }
    ],
    "resultContract": {
      "version": 1,
      "tools": {
        "accept_app_reregistration": {
          "result": "safe"
        },
        "add_note": {
          "result": "safe"
        },
        "add_rule": {
          "result": "safe"
        },
        "apply_rules": {
          "result": "safe"
        },
        "backup": {
          "result": "safe"
        },
        "balance_total": {
          "result": "safe"
        },
        "bank_feed_signin": {
          "result": "safe"
        },
        "collect_authorization": {
          "result": "safe"
        },
        "consent_status": {
          "result": "safe"
        },
        "delete_all_data": {
          "result": "safe"
        },
        "delete_tag": {
          "result": "safe"
        },
        "export_history": {
          "result": "safe"
        },
        "forget_local_account": {
          "result": "safe"
        },
        "get_balances": {
          "result": "safe"
        },
        "get_transaction": {
          "result": "safe"
        },
        "label_account": {
          "result": "safe"
        },
        "link_bank": {
          "result": "capability",
          "provides": [
            "approval_link"
          ],
          "delivers": {
            "approval_link": "operator_link"
          }
        },
        "list_accounts": {
          "result": "safe"
        },
        "list_backups": {
          "result": "safe"
        },
        "list_banks": {
          "result": "safe"
        },
        "list_rules": {
          "result": "safe"
        },
        "list_tags": {
          "result": "safe"
        },
        "list_transactions": {
          "result": "safe"
        },
        "purge": {
          "result": "safe"
        },
        "remove_rule": {
          "result": "safe"
        },
        "rename_account": {
          "result": "safe"
        },
        "rename_tag": {
          "result": "safe"
        },
        "replace_rule": {
          "result": "safe"
        },
        "restore_backup": {
          "result": "safe"
        },
        "spend_by_tag": {
          "result": "safe"
        },
        "sync": {
          "result": "safe"
        },
        "tag_transaction": {
          "result": "safe"
        },
        "unlink_bank": {
          "result": "safe"
        },
        "untag_transaction": {
          "result": "safe"
        }
      }
    },
    "provides_tools": [
      "mcp__plugin_bank-feed_bank-feed__list_accounts",
      "mcp__plugin_bank-feed_bank-feed__get_balances",
      "mcp__plugin_bank-feed_bank-feed__balance_total",
      "mcp__plugin_bank-feed_bank-feed__list_transactions",
      "mcp__plugin_bank-feed_bank-feed__get_transaction",
      "mcp__plugin_bank-feed_bank-feed__list_tags",
      "mcp__plugin_bank-feed_bank-feed__tag_transaction",
      "mcp__plugin_bank-feed_bank-feed__untag_transaction",
      "mcp__plugin_bank-feed_bank-feed__add_note",
      "mcp__plugin_bank-feed_bank-feed__rename_tag",
      "mcp__plugin_bank-feed_bank-feed__delete_tag",
      "mcp__plugin_bank-feed_bank-feed__spend_by_tag",
      "mcp__plugin_bank-feed_bank-feed__add_rule",
      "mcp__plugin_bank-feed_bank-feed__replace_rule",
      "mcp__plugin_bank-feed_bank-feed__list_rules",
      "mcp__plugin_bank-feed_bank-feed__remove_rule",
      "mcp__plugin_bank-feed_bank-feed__apply_rules",
      "mcp__plugin_bank-feed_bank-feed__setup_bank_feed",
      "mcp__plugin_bank-feed_bank-feed__bank_feed_signin",
      "mcp__plugin_bank-feed_bank-feed__list_banks",
      "mcp__plugin_bank-feed_bank-feed__link_bank",
      "mcp__plugin_bank-feed_bank-feed__collect_authorization",
      "mcp__plugin_bank-feed_bank-feed__consent_status",
      "mcp__plugin_bank-feed_bank-feed__accept_app_reregistration",
      "mcp__plugin_bank-feed_bank-feed__sync",
      "mcp__plugin_bank-feed_bank-feed__label_account",
      "mcp__plugin_bank-feed_bank-feed__rename_account",
      "mcp__plugin_bank-feed_bank-feed__export_history",
      "mcp__plugin_bank-feed_bank-feed__unlink_bank",
      "mcp__plugin_bank-feed_bank-feed__purge",
      "mcp__plugin_bank-feed_bank-feed__forget_local_account",
      "mcp__plugin_bank-feed_bank-feed__delete_all_data",
      "mcp__plugin_bank-feed_bank-feed__backup",
      "mcp__plugin_bank-feed_bank-feed__list_backups",
      "mcp__plugin_bank-feed_bank-feed__restore_backup"
    ]
  }
}

If you maintain this plugin, link to this source-backed listing from your README so users can review its manifest and indexed components.

[bank-feed on Agent Plugins Marketplace](https://pluginsmp.com/plugins/bank-feed)