📣 Chapter 6

Building Slack alerts with Claude

The Spendesk MCP has no real-time notifications — but combining a routine with the Slack connector, Claude can push a regular summary into a channel.

CFOAP ManagerProcurement6 min read
/

The limitation to set before we start

Let's be direct about this, since it's the question we get most often: the Spendesk MCP has no webhooks or push notifications. There's no mechanism that lets Spendesk warn Claude in real time that something happened (an invoice received, a threshold crossed, an approval pending).

What this guide calls a "Slack alert" is therefore never a true real-time push — it's always the combination of two things you've already seen:

  1. A routine that pulls data from the MCP on a schedule.
  2. Claude's Slack connector, which pushes that routine's result into a channel.

That's an important distinction: the alert has the frequency of the routine, not the instantaneity of a real push.

Three real client needs, and how to cover them

Budget overrun alerts (a need raised by several CFOs) — caveat: the Spendesk MCP doesn't expose a get_budgets tool. So there's no strict "budget vs actual" check available. What is possible is an approximation via spendesk_analyze_spend, comparing spend in one period against a reference period — useful to spot drift, but not a formal budget control.

Filtered approval alerts (a Procurement need) — via get_requests, a routine can watch for requests pending approval for more than N days and flag the ones past a threshold.

Missing invoice alerts (a CFO/AP need) — by cross-referencing get_purchase_orders and get_payables, or via spendesk_get_due_invoices, a routine can flag invoices that haven't arrived when they were expected.

What a Slack alert looks like in practice

Claude Code — MCP Spendesk
Vous
Every Monday at 9am, send a summary of invoices overdue by more than 15 days to #finance-alerts, with the total amount and the 3 most critical suppliers.
spendesk_get_due_invoicesslack_send_message
C

I've set up the weekly routine. Here's a preview of the message that will go to #finance-alerts every Monday at 9am:

📊 Overdue invoices — week of Jul 13

Total overdue (>15d): €28,400.00

🔴 Oracle France — €8,400.00 (32 days)

🔴 Sopra Steria — €6,200.00 (24 days)

🟡 Capgemini — €5,100.00 (18 days)

Would you like me to adjust the overdue threshold or the recipient list?

The prompt to copy to get started

Prompt to copy
Every [frequency — e.g. Monday at 9am], send a summary of [business need — e.g. invoices overdue by more than 15 days] to the Slack channel [#channel-name], based on [MCP tool — e.g. spendesk_get_due_invoices]. Include the total amount and the 3 most critical cases.

For CFOs: start with a weekly digest rather than a daily one — a Slack channel that gets a message every day is quickly ignored, while a well-built weekly summary stays read.

For Procurement: always filter by cost center or minimum amount — an unfiltered alert on every purchase request quickly becomes noise.

What to keep in mind before rolling this out to your team

  • The alert has the frequency of the routine that triggers it, never the instantaneity of a true push.
  • "Budget vs actual" remains an approximation as long as get_budgets doesn't exist in the MCP — present it as a trend indicator, not a formal control.
  • Test the routine in a manual conversation first before wiring it to a shared channel — a badly calibrated alert sent to a whole team is harder to walk back afterward.

To go further and learn to assess yourself what the MCP can and can't do for a given need: Using Claude as a thinking partner.

Related skills