ExpenseBot

Manage Expenses from Inside ChatGPT or Claude — No App Switching

Submit receipts, scan Gmail, query spending, and build a Schedule C summary from inside the AI assistant you already use — no separate app, no context switch.

You already type everything into ChatGPT or Claude. Drafting emails, summarizing meetings, debugging spreadsheets, planning your week. Receipts and expense questions sit somewhere else — a separate app, a separate login, a separate context switch. That gap is what this guide closes.

ExpenseBot ships a remote MCP server at mcp.expensebot.ai that any MCP-compatible AI assistant can connect to. Once it's wired up — five minutes for ChatGPT, three for Claude.ai — you can submit receipts, scan Gmail for missed receipts, query spending by category, build a Schedule C or T2125 summary, log mileage, and surface forgotten subscriptions, all from inside the chat you already have open.

Below: why it's worth doing, eight real prompts with the responses you'll get, step-by-step setup for ChatGPT and Claude.ai (and a developer path for Claude Desktop, Cursor, and other clients), five workflows that replace standalone apps, and the security model.

Skip the read — go to the install page.

/mcp has copy-paste configs for ChatGPT, Claude.ai, Claude Desktop, Cursor, and Claude Code.

Connect ExpenseBot to my AI →

Why Manage Expenses from Your AI Assistant?

The case for keeping expense management inside ChatGPT or Claude is simple: you're already there. The receipts arrive in Gmail (which you already check), the questions you'd ask an accountant ("how much did I spend on travel this quarter?") are exactly the kind you'd type into a chat, and the friction that keeps most freelancers from logging expenses on time is the friction of opening another app.

Snap a photo of a receipt, paste it into the chat, and say "log this." It's parsed, categorized, and dropped into your Google Sheet before you finish reading the AI's confirmation. Ask "am I profitable this year?" while you're already drafting an email to a client. Ask "build me a Schedule C summary" while you're already on a call about taxes with your accountant. The AI assistant becomes your expense manager, your bookkeeper, and — once a quarter — your tax prep assistant.

Most users who try this never go back to opening a separate expense app. The capture-when-you-think-of-it pattern is what makes year-end painless, and the cheapest way to make capture happen is to put it where you're already typing.

What You Can Do (Real Prompts, Real Results)

Eight examples — these are the prompts users send most often, with the response ExpenseBot returns. Each maps to one tool the AI calls under the hood; you don't need to know which one.

Submit a receipt photo

You: "Submit this Uber receipt" (photo attached)

ExpenseBot: Logged Uber, $24.18, 2026-05-14, category Travel, written to row 412 of your sheet.

Scan Gmail for receipts you missed

You: "Scan my Gmail for receipts I missed last month"

ExpenseBot: Scanning April. Found 14 new receipts — 9 added, 3 already in the sheet, 2 flagged for manual review (vendor not recognized).

Query spending by category

You: "How much did I spend on software this year?"

ExpenseBot: $1,847.22 across 23 transactions year-to-date. Top three: Adobe Creative Cloud ($659.88), GitHub ($240), Notion ($192).

Income by client

You: "Revenue by client this quarter"

ExpenseBot: Acme Corp $18,400, Smith Consulting $9,200, Northwind Studios $4,650. Total Q2: $32,250.

Profit and loss

You: "Am I profitable this year?"

ExpenseBot: Income $94,300, expenses $21,840, net profit $72,460. Margin 77%. Up 12% vs. the same period last year.

Tax-form summary

You: "Build my Schedule C summary"

ExpenseBot: Built Schedule C summary for 2026 YTD. Line 1 gross receipts $94,300, Line 28 total expenses $21,840, Line 31 net profit $72,460. Report saved — link in your sheet.

Mileage entry

You: "Log 47 miles to Client — Acme, round trip to their office"

ExpenseBot: Logged 47.0 miles at 72.5¢/mile = $34.08 deductible. Tagged Client – Acme. Row added.

Subscription audit

You: "What subscriptions am I paying for?"

ExpenseBot: 17 recurring charges detected. Monthly total $284.40. Three to review: Vimeo Pro (last used 4 months ago), Audible (charged twice in May), Calendly (charged but you also pay for HubSpot scheduling).

That last one comes up more than expected — see our deeper guide on the subscription tracker for how ExpenseBot surfaces forgotten recurring charges, and our profit by client page for the per-tag P&L view that powers the revenue-by-client answer above.

Setup — Connect ExpenseBot to ChatGPT (5 Minutes)

ChatGPT supports custom connectors on Plus and Pro plans through Developer Mode. The flow is short — paste a URL, sign in with Google, allow the scopes.

  1. Open ChatGPT, click Settings, then Apps & Connectors.
  2. Turn on Developer Mode (one-time setting per account).
  3. Click "Add custom app."
  4. Paste https://mcp.expensebot.ai/mcp into the server URL field and click Connect.
  5. ChatGPT redirects to a Google sign-in. Sign in with the Google account you use for ExpenseBot, then click Allow on the consent screen.
  6. Back in ChatGPT you'll see 35 tools listed under the new ExpenseBot connector. Try: "Use ExpenseBot to look up my pricing."

Developer Mode is the standard pre-verified flow — ChatGPT shows a one-time "developer connector" warning the first time you add it. The directory listing is pending. Functionality and scopes are identical to any directory-listed connector.

Setup — Connect ExpenseBot to Claude.ai (3 Minutes)

Claude.ai (Anthropic's web app) supports custom connectors on the Pro plan. The flow is even shorter — there's no OAuth metadata to fill in, Claude.ai discovers it automatically.

  1. Open Claude.ai, click your name in the sidebar, then Settings.
  2. Open the Connectors tab and click "Add custom connector."
  3. Server URL: https://mcp.expensebot.ai/mcp. Leave the OAuth client ID and secret fields blank — Claude.ai handles dynamic client registration automatically.
  4. Click Add, then Connect. Sign in with your ExpenseBot Google account when prompted.
  5. Try it: attach a receipt photo to a new chat and say "Submit this receipt to ExpenseBot."

That's it. The 35 tools are now available across any conversation — no project or prompt setup needed.

Setup — Claude Desktop, Cursor, and Other AI Clients

Claude Desktop, Cursor, Claude Code, Continue, Cline, Windsurf, and any other MCP-compatible client use a JSON config file pointing at the @expensebot/mcp-server-auth npm package. One-line setup for Claude Code:

claude mcp add expensebot -- npx -y @expensebot/mcp-server-auth --token=YOUR_TOKEN_HERE

For Claude Desktop and Cursor, add the following block to the client's MCP config:

{
  "mcpServers": {
    "expensebot": {
      "command": "npx",
      "args": ["-y", "@expensebot/mcp-server-auth", "--token=YOUR_TOKEN_HERE"]
    }
  }
}

Generate the token at Settings → AI Assistant Tokens in your ExpenseBot account. For full per-client instructions (config file paths, gotchas, multi-device rotation), the /mcp landing page has the canonical setup for each client.

5 Workflows That Replace Separate Apps

Each of these is a thing most freelancers do with a dedicated app or a manual process. Once ExpenseBot is wired into your AI, the same thing happens inline.

Workflow 1 — Receipt capture

Old way: open the expense app, tap the camera, take a photo, wait for OCR, pick a category, save.

New way: drop the photo into the chat and type "log this." Done.

Workflow 2 — Missed-receipt audit

Old way: log into a separate tool, run a Gmail scan, wait, then review results.

New way: "Scan my Gmail for receipts I missed last month." Results inline.

Workflow 3 — Category breakdown

Old way: open the spreadsheet, build a pivot table, filter by category, sum amounts.

New way: "How much did I spend on [category]?" Total plus breakdown comes back in seconds.

Workflow 4 — Year-end tax prep

Old way: reconstruct the year in a spreadsheet, map every expense to a Schedule C line, total each line, email the result to your accountant.

New way: "Build my Schedule C summary." Report generated, link in chat, totals already on the right lines. See the Schedule C expense tracker for the full report breakdown.

Workflow 5 — Per-client P&L

Old way: set up Projects in QuickBooks, tag every transaction, build a custom report.

New way: tag with Client – Acme on capture; ask "profit by client this quarter." Ranked list with income, expenses, net, and margin per client.

What About Security?

Custom connectors are a real attack surface — handing an AI access to your financial data is not something to do lightly. Here's what the connection actually does and how to revoke it.

  • OAuth 2.1 with PKCE. No token copy/paste for ChatGPT and Claude.ai — the browser handles auth the same way every modern sign-in flow does. Tokens never appear in the chat or on your clipboard.
  • 6 fine-grained scopes. You consent to specific capabilities at the OAuth screen — read expenses, write expenses, read income, write income, run reports, scan Gmail — and can refuse any of them.
  • Revoke anytime. Open ExpenseBot Settings → AI Assistant Tokens and click Revoke. The MCP server validates every call against the active token list; once revoked, that token stops working immediately.
  • All actions audit-logged. Every tool call is logged in Firestore against the token ID with timestamp, tool name, and result. You have a record of exactly what your AI did with your data.
  • CASA Tier 2 certified. The data path is certified for Google Workspace under the Cloud Application Security Assessment standard.

Your data continues to live in the same Google Sheet inside your Google Drive — the MCP server is a thin authenticated layer that reads and writes that sheet on demand. No bulk copy of your expense data sits in an ExpenseBot-owned database for AI consumption. If you stop using the connector tomorrow, your spreadsheet keeps working exactly the way it always did.

Ready to wire it up?

The /mcp page has the exact server URL, one-click token generator, and per-client configs.

Connect to my AI assistant →

Once you've got it running, the natural next read is the launch post for the full 35-tool inventory, or the AI expense tracker page for the broader AI-first workflow.

Frequently Asked Questions

Do I need a paid ChatGPT or Claude account?
Yes — custom connectors require ChatGPT Plus/Pro or Claude Pro. Free tiers don't include connector support. Once you're on a paid tier of either, adding ExpenseBot takes a few minutes and there's no additional charge from ExpenseBot to use the connector.
Is my financial data safe?
Yes. The connection uses OAuth 2.1 with PKCE (the modern standard browsers use for sign-in flows), there are 6 granular scopes you control, every tool call is audit-logged, the data path is CASA Tier 2 certified for Google Workspace, and you can revoke access at any time from Settings → AI Assistant Tokens. Your data continues to live in your Google Sheet inside your Google Drive — the MCP server is a thin authenticated layer, not a copy.
Can I submit receipt photos directly in the chat?
Yes. Paste or attach a receipt photo and say "Submit this to ExpenseBot." The AI hands the image to ExpenseBot's submit_receipt tool, ExpenseBot extracts vendor, date, total, tax, and line items, picks a category, and writes the row to your Google Sheet. The chat reply confirms what was logged and where.
Does this work for Canadian taxes (T2125)?
Yes. Income and expense totals follow both Schedule C (US) and T2125 (Canada) rules automatically, based on the country setting in your ExpenseBot account. Ask for "my T2125 line totals" or "Schedule C summary" and you get the right form's numbers without changing anything.
What's Developer Mode?
Developer Mode is the standard pre-verified connector flow inside ChatGPT and Claude.ai. ChatGPT shows a one-time "developer connector" warning when you add a custom server — functionality is identical to a verified directory listing. ExpenseBot's directory listing is pending. The OAuth flow, scopes, and tool surface are the same either way.
Can I use this AND the regular ExpenseBot web app?
Yes. Same account, same data, same Google Sheet. The AI assistant is an additional interface — not a replacement. Most users keep the web app open for the dashboard and reports, and use ChatGPT or Claude for quick capture ("log this Uber") and natural-language queries ("profit by client this quarter"). Both write to the same source of truth.
Can ChatGPT categorize expenses?
Yes — when connected to ExpenseBot via MCP, ChatGPT can categorize expenses into Schedule C or T2125 tax lines, search your expense history, generate reports, and even submit receipts. The AI categorization is based on vendor, amount, and description — matching how your accountant would categorize them.
Share:

Track Mileage Automatically with ExpenseBot

Google Maps calculates your distances. Current IRS & CRA rates applied automatically. Tax-ready mileage log in seconds.

No credit card required · Deploys in 30 seconds