Chris EichlerAI-first Product
& Marketing

Receipts via MCP


Matching receipts to transactions is exactly the kind of work nobody wants to do. It isn't hard, it's just boring, so it sits there until the day before your accountant needs it. That's where AI works best for me: on the routine, not the creative part.

The setup has three parts and takes about 15 minutes. You need:

  • Claude on a paid plan (Pro, Max, Team or Enterprise). Scheduled tasks are only available there.
  • A Qonto account where you are Owner, Admin or Accountant. Other roles need an Owner to enable access first.
  • Gmail, personal or through Google Workspace.

Step 1: Connect Gmail

Gmail is one of the Google Workspace connectors Anthropic provides itself.

  1. Open Claude (web or desktop app) and go to Customize → Connectors.
  2. Find Gmail and click Connect.
  3. Sign in with your Google account and confirm the permissions.

From now on, Claude can search your inbox and read emails. In a chat, you switch the connector on or off via "+" → Connectors.

Step 2: Connect Qonto via MCP

Qonto runs its own MCP server. No API key needed, sign-in works via OAuth.

  1. Go to Customize → Connectors → Browse connectors.
  2. Search for Qonto and click Connect.
  3. Sign in to Qonto in the pop-up, pick your organization and confirm the permissions.
  4. A green dot next to Qonto means you're connected.

If Qonto doesn't show up in the directory, add it by hand: Customize → Connectors → "+ Add" → "Add custom connector", name Qonto, URL:

https://mcp.qonto.com/mcp

Test it in a new chat:

Show me my last 5 transactions in Qonto.

On first use, Claude asks whether it may use the tool. Allow always saves you the prompt for the read-only tools.

Not on Qonto?

I looked for other banks with their own official MCP server (as of October 2026). There are some, but for freelancers in Germany, Qonto is so far the only one that covers transactions, receipts and invoices end to end.

BankWhereWhat works via MCPStatus
Memo BankFranceread transactions, read and attach receipts, no transferslive, for SMEs
Vivid BusinessDE, ATso far only account opening in chat, balance and transactions announcedbeta
MercuryUSAread transactions, payment requests optionallive
Grasshopper BankUSAread onlylive

You connect all four the same way as Qonto: from Claude's connector directory or as a custom connector with the URL from the bank's docs. For Memo Bank this guide works almost one to one, just swap "Qonto" for "Memo Bank" in the prompt.

For N26, Revolut Business, Finom, Kontist, Holvi, Wise and the German savings banks, I found no official MCP server. Third-party tools can connect accounts via open banking, but that means handing your bank data to yet another company. I'd look at that very carefully first.

Step 3: Run the match once by hand

Before you automate anything, try it once in a chat with both connectors on. You'll see whether the matches are right and can tune the prompt to your vendors.

Match my expenses in Qonto against the invoices in Gmail.

1. Get all outgoing Qonto transactions from last month
   that don't have a receipt attached yet.
2. For each transaction, find the matching invoice in Gmail:
   vendor or sender, amount, date plus/minus 7 days.
   Emails with a PDF attachment take priority.
3. Give me a table: date, vendor, amount, matching email
   (sender, subject, date, attachment name) or "missing".
4. At the end, list every transaction without a match again.

Don't change anything in Qonto and don't send any emails.

For me, subscriptions like software and hosting almost always land cleanly in the table, because sender and amount are unambiguous. Card payments in physical stores are the hard part: there's often no email at all.

Step 4: Set up the scheduled task

Now it should run without you. Scheduled tasks live in Claude Cowork in the desktop app.

  1. In the left sidebar, click Scheduled → New task.
  2. Choose Set up manually.
  3. Name: Receipt check.
  4. Frequency: weekly, Monday morning.
  5. Paste the prompt below and save.

Claude doesn't offer a monthly interval, only hourly, daily, weekly and weekdays. So the task runs every Monday, checks the date first and only does the work on the first Monday of the month.

First check today's date. If today is not the first Monday
of the month, reply only "No check today" and stop.

Otherwise: match my expenses in Qonto against the invoices in Gmail.

1. Get all outgoing Qonto transactions from last month
   that don't have a receipt attached yet.
2. For each transaction, find the matching invoice in Gmail:
   vendor or sender, amount, date plus/minus 7 days.
   Emails with a PDF attachment take priority.
3. Give me a table: date, vendor, amount, matching email
   (sender, subject, date, attachment name) or "missing".
4. At the end, list every transaction without a match again.

Don't change anything in Qonto and don't send any emails.

The task runs on Anthropic's servers, so your computer can sleep. You'll find the result under Scheduled next to the task.

Common mistakes

  • Claude doesn't open the PDF invoice. That's not a bug, it's the limit of the Gmail connector: it only sees an attachment's name and type, not its content. For matching that's enough, because amount and vendor usually sit in the email body or subject. You attach the receipt in Qonto yourself afterwards, and the table tells you which one.
  • Qonto refuses the connection. Your role isn't high enough. Owner, Admin and Accountant can connect, everyone else needs an Owner to enable it.
  • Several companies in Qonto. One connection covers one organization. For several, use https://mcp.qonto.com/multi-organization/mcp.
  • The task gets stuck on an approval. Run step 3 by hand once and give the read-only tools Allow always. Otherwise the task waits for your confirmation.

Ideas on AI-first Product Management & Marketing, straight to your inbox.

No spam, unsubscribe at any time

Chris Eichler