npm package: @ktmcp-cli/pocketsmith
Description: Production-ready CLI for PocketSmith personal finance forecasting API
Author: KTMCP
Latest version: 1.0.0

> "Six months ago, everyone was talking about MCPs. And I was like, screw MCPs. Every MCP would be better as a CLI."
>
> — [Peter Steinberger](https://twitter.com/steipete), Founder of OpenClaw
> [Watch on YouTube (~2:39:00)](https://www.youtube.com/@lexfridman) | [Lex Fridman Podcast #491](https://lexfridman.com/peter-steinberger/)

# PocketSmith CLI

A production-ready command-line interface for the [PocketSmith](https://pocketsmith.com) 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 `--json` for 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 `--json` flag
- **AI-friendly** — AI agents can call CLIs just as easily as MCPs, with less overhead

## Installation

```bash
npm install -g @ktmcp-cli/pocketsmith
```

## Authentication Setup

PocketSmith uses API key authentication. Get your key from your PocketSmith account settings.

### 1. Get your API key

1. Log in to [pocketsmith.com](https://pocketsmith.com)
2. Go to **Account Settings** > **Manage API Keys**
3. Create a new Developer Key

### 2. Configure the CLI

```bash
pocketsmith config set --api-key YOUR_API_KEY
```

### 3. Verify

```bash
pocketsmith user me
```

## Commands

### Configuration

```bash
# Set API key
pocketsmith config set --api-key <key>

# Show current config
pocketsmith config show
```

### User

```bash
# Get current user info
pocketsmith user me
pocketsmith user me --json
```

### Accounts

```bash
# List all accounts
pocketsmith accounts list

# Get account details
pocketsmith accounts get <account-id>
```

### Transactions

```bash
# 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

```bash
# List all categories
pocketsmith categories list
```

### Budgets

```bash
# View budget analysis
pocketsmith budgets list
```

### Savings

```bash
# View savings goals
pocketsmith savings list
```

### Forecast

```bash
# Show financial forecast
pocketsmith forecast show
```

## JSON Output

All commands support `--json` for machine-readable output:

```bash
# 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](https://github.com/ktmcp-cli/pocketsmith).

## License

MIT — see [LICENSE](LICENSE) for details.

---

Part of the [KTMCP CLI](https://killthemcp.com) project — replacing MCPs with simple, composable CLIs.