plaid
Scannednpx machina-cli add skill aneym/agent-skills/plaid --openclawPlaid — Financial Data Skill
Query connected bank accounts for balances, transactions, and spending insights via Plaid API.
Environment Variables
Required:
PLAID_CLIENT_ID— Plaid client IDPLAID_SECRET— Plaid secret keyPLAID_ENV—production,sandbox, ordevelopment
Optional:
PLAID_TOKENS_PATH— Override token storage path (default:$OPENCLAW_WORKSPACE/state/plaid-tokens.json)
Load from a .env file:
export $(grep -E '^PLAID_(CLIENT_ID|SECRET|ENV)=' /path/to/.env | xargs)
Install Dependencies
cd {baseDir} && npm install
First-Time Setup: Connect a Bank
node {baseDir}/scripts/server.js
Opens at http://localhost:3456. Connect multiple banks — server stays running. Tokens saved automatically.
Query Balances
node {baseDir}/scripts/balances.js [--json]
Query Transactions
node {baseDir}/scripts/transactions.js [options]
Options: --days N (default 30), --search "query", --category "food", --account "checking", --json
Financial Insights
node {baseDir}/scripts/insights.js [--days N] [--json]
Returns: cash flow summary, category breakdown, top merchants, recurring/subscription detection, card usage, credit utilization.
Notes
- Plaid categorizes transactions automatically (FOOD_AND_DRINK, TRANSPORTATION, etc.)
- Charge cards (Amex Gold/Platinum) don't report credit limits — utilization only reflects revolving cards
transactionsSyncis used for efficiency — first call may be slower as Plaid builds the cursor- Token storage is a JSON file in the agent workspace; back it up if needed
Overview
Plaid-based skill to connect bank accounts and pull real-time balances, transactions, and spending insights. It supports balances, transaction history, and financial summaries with automatic category tagging.
How This Skill Works
The skill uses Plaid API with credentials (PLAID_CLIENT_ID, PLAID_SECRET, PLAID_ENV) and stores tokens in a JSON file. Start with the first-time setup by running node {baseDir}/scripts/server.js to connect banks; multiple banks can be connected and tokens saved automatically. You can query balances with balances.js, transactions with transactions.js, and insights with insights.js, using flags like --days, --search, --category, --account, and --json as needed.
When to Use It
- A user asks for current balances on bank or credit card accounts.
- A user requests recent transactions or spending history.
- A user needs a cash-flow or category breakdown over a period.
- A user wants to connect a new bank account or re-link existing accounts.
- A user needs a financial summary including recurring payments or utilization insights.
Quick Start
- Step 1: Set up environment variables PLAID_CLIENT_ID, PLAID_SECRET, PLAID_ENV and optional PLAID_TOKENS_PATH.
- Step 2: Run node {baseDir}/scripts/server.js to connect banks; the server opens at http://localhost:3456 and tokens are saved automatically.
- Step 3: Query data with node {baseDir}/scripts/balances.js, node {baseDir}/scripts/transactions.js, or node {baseDir}/scripts/insights.js (use flags as needed).
Best Practices
- Set PLAID_CLIENT_ID, PLAID_SECRET, and PLAID_ENV in the environment; use production or sandbox as appropriate.
- Store tokens securely in PLAID_TOKENS_PATH (default: state/plaid-tokens.json) and back up the file.
- Run the first-time setup with node {baseDir}/scripts/server.js to connect banks; tokens are saved automatically.
- Use balances.js for real-time balances, transactions.js for history, and insights.js for cash flow and category breakdown.
- Remember Plaid categorizes transactions automatically; note that charge cards (e.g., Amex) don't report credit limits and utilization reflects revolving cards.
Example Use Cases
- User asks for the current balance of their checking account.
- User wants to see last 30 days of transactions and a top merchants list.
- User requests a spending category breakdown and cash flow summary.
- User wants to connect a new bank account or update linked accounts.
- User asks for credit utilization and recurring payments detection.