@ktmcp-cli/pocketsmith
v1.0.0
Published
Production-ready CLI for PocketSmith personal finance forecasting API
Downloads
86
Maintainers
Readme
"Six months ago, everyone was talking about MCPs. And I was like, screw MCPs. Every MCP would be better as a CLI."
— Peter Steinberger, Founder of OpenClaw Watch on YouTube (~2:39:00) | Lex Fridman Podcast #491
PocketSmith CLI
A production-ready command-line interface for the PocketSmith personal finance forecasting API. Manage accounts, transactions, budgets, categories, and financial forecasts directly from your terminal.
Disclaimer: This is an unofficial CLI tool and is not affiliated with, endorsed by, or supported by PocketSmith Limited.
Features
- User — Get current user info and profile
- Accounts — List and inspect all financial accounts
- Transactions — List, get, and create transactions with filtering
- Categories — Browse expense/income categories
- Budgets — View budget analysis and tracking
- Savings — View savings goals and balances
- Forecast — Access financial forecast data
- JSON output — All commands support
--jsonfor scripting and piping - Colorized output — Clean, readable terminal output with chalk
Why CLI > MCP
MCP servers are complex, stateful, and require a running server process. A CLI is:
- Simpler — Just a binary you call directly
- Composable — Pipe output to
jq,grep,awk, and other tools - Scriptable — Use in shell scripts, CI/CD pipelines, cron jobs
- Debuggable — See exactly what's happening with
--jsonflag - AI-friendly — AI agents can call CLIs just as easily as MCPs, with less overhead
Installation
npm install -g @ktmcp-cli/pocketsmithAuthentication Setup
PocketSmith uses API key authentication. Get your key from your PocketSmith account settings.
1. Get your API key
- Log in to pocketsmith.com
- Go to Account Settings > Manage API Keys
- Create a new Developer Key
2. Configure the CLI
pocketsmith config set --api-key YOUR_API_KEY3. Verify
pocketsmith user meCommands
Configuration
# Set API key
pocketsmith config set --api-key <key>
# Show current config
pocketsmith config showUser
# Get current user info
pocketsmith user me
pocketsmith user me --jsonAccounts
# List all accounts
pocketsmith accounts list
# Get account details
pocketsmith accounts get <account-id>Transactions
# List transactions for an account
pocketsmith transactions list <account-id>
# Filter by date
pocketsmith transactions list <account-id> --start-date 2024-01-01 --end-date 2024-01-31
# Search transactions
pocketsmith transactions list <account-id> --search "grocery"
# Get a specific transaction
pocketsmith transactions get <transaction-id>
# Create a transaction
pocketsmith transactions create <account-id> \
--date 2024-01-15 \
--amount -42.50 \
--payee "Whole Foods"Categories
# List all categories
pocketsmith categories listBudgets
# View budget analysis
pocketsmith budgets listSavings
# View savings goals
pocketsmith savings listForecast
# Show financial forecast
pocketsmith forecast showJSON Output
All commands support --json for machine-readable output:
# Get all accounts as JSON
pocketsmith accounts list --json
# Pipe to jq for filtering
pocketsmith accounts list --json | jq '.[] | select(.type == "bank") | {id: .id, name: .title, balance: .current_balance}'
# Get transactions as JSON
pocketsmith transactions list <account-id> --json | jq '.[] | select(.amount < 0) | {date: .date, payee: .payee, amount: .amount}'Contributing
Issues and pull requests are welcome at github.com/ktmcp-cli/pocketsmith.
License
MIT — see LICENSE for details.
Part of the KTMCP CLI project — replacing MCPs with simple, composable CLIs.
