Enginemailer for AI agents
Enginemailer is an email marketing platform for managing contacts, building campaigns, and sending personalized email at scale, used by marketing teams running ongoing customer communications. 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 Enginemailer.
Find a subscriber's record
Find a subscriber by email to check their status before adding them to a new campaign.
Check a campaign's list
Get a campaign's linked list to confirm it targets the right audience before it runs.
Confirm before deleting a subscriber
Require approval before deleting a subscriber, since it removes their history from past campaigns.
38 Enginemailer actions, graded by risk.
Every Enginemailer action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.
read
20Look things up. Allowed by default.
- enginemailer.list_formsList Forms
- enginemailer.list_pagesList Pages
- enginemailer.list_popupsList Popups
- enginemailer.get_subscriberGet Subscriber
- enginemailer.list_campaignsList Campaigns
- enginemailer.list_templatesList Templates
- enginemailer.find_subscriberFind Subscriber
- enginemailer.get_subcategoryGet Subcategories
- enginemailer.get_listcampaignGet List Campaign
- enginemailer.get_getcustomfieldGet Custom Field List
- enginemailer.get_new_subscribersGet New Subscribers
- enginemailer.list_autorespondersList Autoresponders
- enginemailer.get_subscribers_taggedGet Subscribers Tagged
- enginemailer.get_subscribers_deletedGet Deleted Subscribers
- enginemailer.get_subscribers_modifiedGet Subscribers Modified
- enginemailer.get_subscribers_untaggedGet Untagged Subscribers
write
12Create and change things. Allow, or ask the user first.
- enginemailer.send_campaignSend Campaign
- enginemailer.create_campaignCreate Campaign
- enginemailer.post_updatecategoryCreate/Update Category
- enginemailer.add_update_subscriberAdd or Update Subscriber
- enginemailer.post_update_subscriberUpdate Subscriber
- enginemailer.connectTest API Connection
- enginemailer.pause_campaignPause Campaign
- enginemailer.insert_subscriberInsert Subscriber
- enginemailer.tag_to_subcategoryTag Subscriber to Subcategory
- enginemailer.activate_subscriberActivate Subscriber
- enginemailer.batch_update_statusCheck Batch Update Status
- enginemailer.batch_update_subscribersBatch Update Subscribers
destructive
6Delete, cancel or archive. Ask first, or deny outright.
- enginemailer.delete_campaignDelete Campaign
- enginemailer.delete_subscriberDelete Subscriber
- enginemailer.delete_recipient_listDelete Recipient List
- enginemailer.unsubscribeUnsubscribe (N8N)
- enginemailer.get_unsubscribeGet Unsubscribe Events
- enginemailer.unsubscribe_subscriberUnsubscribe Subscriber
Enginemailer in three steps.
- 01Your users connect EnginemailerThey add their Enginemailer api key on Arc0 Connect, under your brand. It goes straight into the vault.
- 02You set the rulesReads run, writes like “create Campaign” can wait for the user, and “delete Campaign” can be denied outright.
- 03Any agent can actYour agent calls Enginemailer through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
await arc0.policies.set('enginemailer', { read: 'allow', write: 'ask', // create_campaign destructive: 'deny', // delete_campaign }) # Claude Code: the same connection, one URL $ claude mcp add --transport http arc0 \ https://mcp.arc0.ai/u/u_8f2
How Enginemailer connects.
Users add their Enginemailer api key on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.
The same Enginemailer 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
- CREDENTIALS
- Per-tenant encrypted vault
- MODEL SEES
- Results only, never credentials
- AUDIT LOG
- Every call, on every plan
Use Enginemailer from any agent.
Enginemailer and Arc0, answered.
Can I use Enginemailer with Claude, ChatGPT or Cursor?
Yes. Connect Enginemailer 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 Enginemailer actions you allow.
How do users connect Enginemailer?
Users add their Enginemailer api key on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.
Which Enginemailer actions can my agent take?
38 in total: 20 read, 12 write and 6 destructive, such as “create Campaign”. Your policies decide which of them each agent may call.
Can I stop my agent from deleting things in Enginemailer?
Yes. Actions like “delete Campaign” 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 Enginemailer too?
Yes. The same Enginemailer connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.
Plug Enginemailer into your agent.
Your users connect Enginemailer once, under your brand. Your agent gets 38 actions behind your policies, with every call on the record.
Free to build · MCP + REST · Audit log on every plan