# Satchel — your account, inside your AI > Your account, inside the AI you already use. Satchel puts a real Satchel business account inside any AI assistant that speaks MCP (Claude, Claude Code, Cursor, Codex, or any other MCP client). Ask about balances, review spending, chase payments, move money — in plain language, no dashboard. - Real Satchel API contract - Read-only by default - EMI-licensed rails - Sandbox in 60 seconds ## Who it's for Built for complex, cross-border businesses. - Dedicated IBANs - Physical & virtual cards - Multi-currency - Multi-account - A personal manager ## What it does — 7 MCP tools Every tool speaks the real Satchel Client Office API contract: seeded data in the sandbox, the exact same shapes when you go live (base URL + credentials change only). ### list_accounts Every account, IBAN and live balance — no dashboard, no login. > you › What accounts do I have? ``` Main EUR EE00 SPNK 0000 0001 €48,205.50 ★ master Client funds EE00 SPNK 0000 0002 €212,500.00 USD Payouts EE00 SPNK 0000 0003 $131,020.00 ``` ### get_balance Total position, grouped by currency, computed on the fly. > you › How much do we hold right now? ``` EUR €260,705.50 (2 accounts) USD $131,020.00 (1 account) — total across 3 accounts ``` ### list_cards Physical and virtual cards, masked and status-checked. > you › Show our cards. ``` Mastercard ••7781 EUR active Visa ••4402 USD active ``` ### list_transactions A human-readable ledger. Ask for the last N, any page. > you › Show the last 5 transactions. ``` -€18.40 Cloud infrastructure Jul 15 -€4,200 Supplier payout Jul 14 -€63.18 Office supplies Jul 14 +€12,900 Incoming SEPA — Client Jul 13 +€48,000 Settlement batch #204 Jul 01 ``` ### get_transaction Drill into any single payment by id — full reference and state. > you › Details on transaction 5015? ``` #5015 +€48,000.00 EXECUTED Settlement batch #204 INCOMING · ref STL-2026-07 · Jul 01 ``` ### financial_summary The intelligence tool: money in and out, top counterparties, recurring costs. > you › Summarise last month's cash flow. ``` In +€60,900 Out -€38,481 Net +€22,419 Top counterparty: Supplier Ltd (3 payouts, €12,600) Recurring: cloud, payroll, SaaS tooling ``` ### move_money Your agent can act — with your consent. Off by default, on when you say so. > you › Move €5,000 from Main to Client funds. ``` ✓ Transfer complete (#5038) Main EUR €43,205.50 Client funds €217,500.00 ``` ## Automate the routine ### Scheduled workflows Run it on a cadence — every Monday, at month-end, or when a threshold trips. Your assistant checks in so you don't have to. > you › Every Monday, summarise last week's cash flow and flag anything unusual. Downloadable Agent Skill: /skills/weekly-cash-flow-review.skill — open or attach the .skill file to install it where supported. For filesystem-based clients, unzip it into ~/.claude/skills/. ### Automate expense management Categorise spend, match it to counterparties, and keep the ledger tidy — reviewed by you, not typed by you. > you › Categorise this month's card spend and list anything uncategorised. Downloadable Agent Skill: /skills/expense-categoriser.skill — open or attach the .skill file to install it where supported. For filesystem-based clients, unzip it into ~/.claude/skills/. ### Create reports with AI Turn raw transactions into a clean report — cash flow, top counterparties, burn — in seconds, in plain language. > you › Build a Q3 cash-flow report and pull out the three biggest outflows. Downloadable Agent Skill: /skills/cash-flow-report.skill — open or attach the .skill file to install it where supported. For filesystem-based clients, unzip it into ~/.claude/skills/. Reports and reviews run read-only. Money-moving actions always ask first. ## Security model - **Every transfer is confirmed in the app.** Moving money always needs your tap. The assistant prepares the transfer; you approve it in the Satchel app with a second factor. No payment leaves without you. - **Read-only by default.** The connector ships read-only. Writes (move_money) stay off until you flip SATCHEL_ALLOW_WRITES — and never run in live mode without your confirmation. - **Short-lived sessions.** Access is a 30-minute session token, re-minted on demand. No long-lived secret sits in your chat history. - **You onboard through a person.** Live accounts are opened by a personal manager with full onboarding checks — no anonymous, self-serve account creation. - **Sandbox-first.** You start against seeded data that looks real but isn't. Going live is one env var and a real credential — nothing else changes. ## Connect your assistant One command detects your assistant (Claude Desktop, Claude Code, Cursor), backs up your config and writes one server block: ``` # in your satchel-punk checkout cd mcp && npm install && npm run connect ``` Demo sandbox key: `punk-demo-key` (username `demo@satchel.punk`). Manual config (claude_desktop_config.json): ```json { "mcpServers": { "satchel-punk": { "command": "npx", "args": [ "tsx", "/absolute/path/to/satchel-punk/mcp/src/index.ts" ], "env": { "SATCHEL_BASE_URL": "http://localhost:3000/api/sandbox", "SATCHEL_USERNAME": "demo@satchel.punk", "SATCHEL_PASSWORD": "punk-demo-key", "SATCHEL_MODE": "sandbox" } } } } ``` Environment variables: SATCHEL_BASE_URL, SATCHEL_USERNAME, SATCHEL_PASSWORD, SATCHEL_MODE (sandbox|live), SATCHEL_ALLOW_WRITES (writes stay off unless true). ## How to become a client 01. **Try it in the sandbox.** Grab a sandbox key, connect your assistant, and ask it about a live-shaped account — seeded data, real API shapes. 02. **Talk to a personal manager.** Ready for a real account? Ask for a manager in the form — they reach out to understand your business. 03. **Get onboarded and go live.** Complete onboarding, get your live credential, and flip one env var. Your assistant now speaks to your real account. Get a sandbox key or request a personal manager at the landing page form (#access). ## Pages - [About](/about) — Who builds this: the team behind Satchel (Satchelpay UAB, EMI licence No. 28), and why the account now speaks MCP. - [Security](/security) — The MCP security model in concrete terms: what the assistant can see, what it can do, and where the sandbox ends. - [Terms of service](/terms) — Terms for the sandbox and the waitlist. The sandbox is simulated data — no real funds move; the live service is governed by satchel.eu terms. - [Privacy policy](/privacy) — What personal data this site collects (a waitlist email — sandbox data is synthetic) and your GDPR rights. ## Legal Satchel operates under Satchelpay UAB (reg. No. 304628112), licensed by the Bank of Lithuania as an electronic money institution (licence No. 28). Satchel is an EMI, not a bank. Sandbox data is fictional and not financial advice.