WhatsApp for AI agents
WhatsApp Business API sends and manages business messaging on WhatsApp, used by companies handling customer conversations, notifications, and templates at scale. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.
What agents do in WhatsApp.
Get message templates
Pull approved message templates as a read-only check before sending a notification.
Get business profile details
Read the connected business account's profile information, like its display name and description.
Confirm before deleting a message template
Check with the user before deleting a template, since any automation using it would stop working.
58 WhatsApp actions, graded by risk.
Every WhatsApp action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.
read
25Look things up. Allowed by default.
- whatsapp.list_flowsList WhatsApp Flows
- whatsapp.list_groupsList WhatsApp Groups
- whatsapp.get_settingsGet WhatsApp Cloud API Settings
- whatsapp.get_schedulesGet WhatsApp Schedules
- whatsapp.list_qr_codesList qr codes
- whatsapp.get_activitiesGet WhatsApp Business Account Activities
- whatsapp.get_media_infoGet media info
- whatsapp.list_solutionsList WhatsApp Solutions
- whatsapp.get_flow_assetsGet Flow Assets
- whatsapp.get_phone_numberGet phone number
- whatsapp.get_join_requestsGet Join Requests
- whatsapp.get_phone_numbersGet phone numbers
- whatsapp.get_message_historyGet WhatsApp Message History
- whatsapp.get_subscribed_appsGet Subscribed Apps
- whatsapp.get_template_statusGet template status
- whatsapp.get_business_profileGet business profile
write
27Create and change things. Allow, or ask the user first.
- whatsapp.send_mediaSend media
- whatsapp.create_flowCreate WhatsApp Flow
- whatsapp.send_messageSend message
- whatsapp.send_contactsSend contacts
- whatsapp.send_locationSend location
- whatsapp.create_qr_codeCreate QR Code
- whatsapp.update_settingsUpdate WhatsApp Cloud API Settings
- whatsapp.send_media_by_idSend media by
- whatsapp.update_flow_jsonUpdate Flow JSON
- whatsapp.create_upload_sessionCreate upload session for WhatsApp
- whatsapp.send_interactive_listSend interactive list
- whatsapp.send_template_messageSend template message
- whatsapp.create_message_templateCreate message template
- whatsapp.update_business_accountUpdate WhatsApp Flow Metadata
- whatsapp.update_business_profileUpdate WhatsApp Business Profile
- whatsapp.send_interactive_buttonsSend interactive buttons
destructive
6Delete, cancel or archive. Ask first, or deny outright.
- whatsapp.delete_mediaDelete WhatsApp Media
- whatsapp.delete_qr_codeDelete QR Code
- whatsapp.remove_assigned_userRemove Assigned User from WhatsApp Business Account
- whatsapp.delete_message_templateDelete message template
- whatsapp.block_usersBlock WhatsApp Users
- whatsapp.unsubscribe_appUnsubscribe from WABA Webhooks
WhatsApp in three steps.
- 01Your users connect WhatsAppThey sign in to WhatsApp on Arc0 Connect, under your brand, and approve the access you ask for.
- 02You set the rulesReads run, writes like “create WhatsApp Flow” can wait for the user, and “delete WhatsApp Media” can be denied outright.
- 03Any agent can actYour agent calls WhatsApp through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
await arc0.policies.set('whatsapp', { read: 'allow', write: 'ask', // create_flow destructive: 'deny', // delete_media }) # Claude Code: the same connection, one URL $ claude mcp add --transport http arc0 \ https://mcp.arc0.ai/u/u_8f2
How WhatsApp connects.
Users sign in to WhatsApp on Arc0 Connect and approve the scopes you request. Build with Arc0’s WhatsApp OAuth app, or bring your own so the WhatsApp consent screen names you. Tokens refresh automatically, and you can export them whenever you want.
The same WhatsApp connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →
- AUTH
- API key · OAuth 2.0
- CREDENTIALS
- Per-tenant encrypted vault
- MODEL SEES
- Results only, never credentials
- AUDIT LOG
- Every call, on every plan
Use WhatsApp from any agent.
WhatsApp and Arc0, answered.
Can I use WhatsApp with Claude, ChatGPT or Cursor?
Yes. Connect WhatsApp to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the WhatsApp actions you allow.
How do users connect WhatsApp?
Users sign in to WhatsApp on Arc0 Connect and approve the scopes you request. Build with Arc0’s WhatsApp OAuth app, or bring your own so the WhatsApp consent screen names you. Tokens refresh automatically, and you can export them whenever you want.
Which WhatsApp actions can my agent take?
58 in total: 25 read, 27 write and 6 destructive, such as “create WhatsApp Flow”. Your policies decide which of them each agent may call.
Can I stop my agent from deleting things in WhatsApp?
Yes. Actions like “delete WhatsApp Media” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.
Can my own backend call WhatsApp too?
Yes. The same WhatsApp connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.
Plug WhatsApp into your agent.
Your users connect WhatsApp once, under your brand. Your agent gets 58 actions behind your policies, with every call on the record.
Free to build · MCP + REST · Audit log on every plan