MCP overview
MCP endpoint, authentication and available tools.
Sending exposes an MCP (Model Context Protocol) endpoint at https://sending.dev/api/mcp
(streamable HTTP). Agents authenticate with the same bearer API key, or with OAuth 2.1 on
behalf of a user, and operate inside server-side guardrails: daily volume and spend caps,
an audit log, and per-key scopes.
The server is remote: there is nothing to install. For the commands and configuration files of each client (Claude Code, Claude Desktop, ChatGPT, Cursor, VS Code, Cline, Windsurf) see Install Sending in your agent.
Available tools
list_domainsverify_domainset_domain_sender_nameget_usageset_frequency_caplist_contactsget_contactupsert_contactdelete_contactlist_tagscreate_tagupdate_tagdelete_tagtag_contactslist_listscreate_listupdate_listdelete_listadd_contacts_to_listremove_contacts_from_listlist_segmentscreate_segmentupdate_segmentdelete_segmentestimate_segmentcreate_custom_fieldlist_templatesget_templatecreate_templateupdate_templatedelete_templatesend_emailsend_messageget_emaillist_emailslist_campaignsget_campaignget_campaign_metricsexport_campaign_analysiscreate_campaignupdate_campaignestimate_campaignsend_campaignupload_attachmentlist_attachmentsdelete_attachmentupload_imagelist_imagestrack_eventlist_automationsget_automationcreate_automationupdate_automationactivate_automationenroll_contactstest_automationrestart_enrollmentsget_automation_logget_automation_statsexport_automation_analysislist_inboxescreate_inboxdelete_inboxlist_threadsget_threadsend_from_inboxreply_threadget_agent_email_metricslist_webhookscreate_webhookdelete_webhooklist_email_rulescreate_email_ruledelete_email_ruleget_utm_summarylist_utm_toucheslist_utm_conversionsget_contact_conversionsget_contact_journeyget_conversion_statslist_ordersget_contact_commerceconnect_activecampaignstart_activecampaign_importget_import_statusA connection only sees the tools its permissions allow: an API key with just email:send
lists the sending and email-history tools, not the ones for automations or contacts. With
OAuth the permissions are the ones chosen on the consent screen, and you can change them later
under Settings › MCP connections without reconnecting. If an agent says a tool does not
exist, the capability is usually there but was not granted.
Attachments
The sending tools (send_email, send_message, send_from_inbox, reply_thread, create_campaign)
accept attachments: each item declares one source, { id }, { filename, content }
(base64) or { filename, url }. For anything but tiny files, call upload_attachment once and
reuse the id: inline base64 inflates the agent's context on every call.
{ "name": "send_email", "arguments": {
"to": "sara@acme.io", "from": "hello@yourdomain.dev",
"subject": "Your invoice", "html": "<p>Attached.</p>",
"attachments": [{ "id": "<ATTACHMENT_ID>" }]
} }Limits and rules (max 20 attachments, 10 MB each, 25 MB total, executable extensions rejected) are the same as the REST API: see Attachments.