24 actions ready for your AI
Connect Mailgun to your AI
Add your Mailgun key once and every AI you use can get domains domains, post domains domains and post domains names through it.
Needs your API keyWorks today: paste the key from this app and your AI can use it. One-click sign-in is not built yet.
Not verified by us yet. Its actions come from Mailgun's own documented API, and we have not run them here yet.
Use your own Mailgun account. Credentials stay encrypted in ahel.
Tell me when ahel has verified Mailgun
What your AI can do with Mailgun
Choose a task and ask your AI.
Domain
- Get v3 domains domain name messages storage key
GETRetrieve a stored email
domain_namerequired- Domain name that was used to send the email
storage_keyrequired- Storage key from the email's associated events (Example: Accepted/Delivered events storage.key field).
- Post v3 domains domain name messages storage key
POSTResend an email
domain_namerequired- Domain name used to send the message
storage_keyrequired- Storage key from the email's associated events (Example: Accepted/Delivered events storage.key field).
torequired- Email address of the recipient(s).
- Post v3 domains name dynamic pools
POSTEnroll domain
namerequired- Domain name
replacement_iprequired- A valid IP address or 'shared'
- Delete v3 domains name dynamic pools
DELETERemove domain from dynamic IP pools
namerequired- Domain name
replacement_iprequired- A valid IP address or 'shared'.
replacement_pool_idrequired- A valid dedicated IP pool ID to assign to the domain.
- Get v3 domains dynamic pools assignable
GETList assignable domains
subaccount_id- If provided, queries domains belonging to the subaccount.
domain- Regex search term to query a domain by name
- Get v3 domains name tracking
GETGet tracking settings
namerequired- The name of the domain to fetch tracking details for.
- Get v3 domains name sending queues
GETGet messages queue status
namerequired- The name of the domain you want get sending queues from
- Get v3 domains domain name credentials
GETList Mailgun SMTP credential metadata for a given domain
domain_namerequired- Hostname filter for credential results
skip- Number of results to skip, to help with pagination
limit- Limit results to this many
- Post v3 domains domain name credentials
POSTCreate Mailgun SMTP credentials for a given domain
domain_namerequired- Hostname for new credentials
loginrequired- Email address of SMTP credential user; accepts multiple values
mailbox- Email address of SMTP credential user, may be used in place of 'login'; accepts multiple values
system- Identify if these are system account credentials, defaults to false
- Post v3 domains all dynamic pools enroll
POSTEnroll all account domains
include_subaccountsrequired- If true, domains belonging to subaccounts will also be enrolled in Dynamic IP Pools
- Delete v3 domains name ips ip
DELETERemove an IP from the domain pool, unlink a DIPP or remove the domain pool
iprequired- One of the following: all, ippool or a valid IP address.
namerequired- Domain name.
ip- Replacement IP or special value shared.
pool_id- Replacement DIPP id.
- Put v3 domains name dkim authority
PUTUpdate DKIM authority
namerequired- The domain name
self- Change the DKIM authority for a domain.
- Put v3 domains name dkim selector
PUTUpdate a DKIM selector
namerequired- The domain name
dkim_selector- Update the DKIM selector for a domain.
- Get v3 domain id bounces
GETList all bounces
domain_namerequired- Domain to retrieve bounces from
limitrequired- Maximum number of records to return (optional, default: 100, max: 1000)
pagerequired- Page direction relative to the above address, can be next, previous or last, if empty, returns the first page
termrequired- Filter records based on addresses that start with the specified substring.
V4
- Get v4 domains
GETGet domains
limit- Max count of items.
skip- Get the list of items starting at the nth element.
state- Get only domains with a specific state.
sort- Valid sort options are name which defaults to asc order, name:asc, or name:desc.
- Post v4 domains
POSTCreate a domain
namerequired- The name of the new domain
archive_to- If set to a URL, then each successfully delivered message will be submitted in an HTTP POST request to the URL.
dkim_host_name- Set the DKIM host name for the domain that is being created.
dkim_key_size- The size of the new domain's DKIM key.
- Get v4 domains authority name keys
GETList domain keys
authority_namerequired- The domain authority name you want to list the domain keys for.
- Get v4 domains name
GETGet domain details
namerequired- The name of the domain you want to fetch
- Put v4 domains name
PUTUpdate domain
namerequired- The name of the domain you want to update
archive_to- If set to a URL, then each successfully delivered message will be submitted in an HTTP POST request to the URL.
mailfrom_host- The hostname to update to.
message_ttl- Specifies the time-to-live (TTL) in seconds for retrieving both incoming and outgoing messages.
Ips
- Get v3 ips ip domains
GETGet all domains of an account where a specific IP is assigned
iprequired- The IP to filter on
limitrequired- The limit to apply to the returned domains
searchrequired- The search query that the returned domains' names must match
skiprequired- The number of matching domains to skip in the response
- Post v3 ips ip domains
POSTAssign an IP to all account domains
iprequired- The IP to Add
Alert
- Get v1 alerts events
GETList events
Show 2 more groups
Dynamic
- Get v1 dynamic pools domains
GETList all domains assigned to dynamic IP pools
limit- The maximum number of domains to return
account- Filter domains by account ID. Can be specified multiple times.
pool- Filter domains to a specific Dynamic IP Pool.
sort_by- Specify which field to use to sort domains
Ip
- Get v3 ip pools pool id domains
GETGet domains linked to DIPP
pool_idrequired- Id of the DIPP to get details about
limit- The maximum number of records to return
page- Encoded page identifier retrieved from previous call
Ask your AI
Try one of these requests with a connected AI.
- Post a domain name dynamic in Mailgun
- Delete a domain name dynamic in Mailgun
- Show me the alert event in Mailgun
- Show me the dynamic pool domain in Mailgun
- Show me the domain dynamic pool in Mailgun
- Show me the domain name tracking in Mailgun
Works with
All appsUse Mailgun alongside your other connected apps.
Mailgun MCP server, hosted by ahel
One hosted endpoint serves Mailgun. There is nothing to install and no local server to run.
Connect Mailgun to Claude, Claude Code, Cursor or Codex
- Add your Mailgun key. ahel stores it encrypted.
- Paste one link into your AI:
https://mcp.ahel.ai(once, for every app). - Ask for the work. Your AI picks the action and ahel runs it with your key.
Documentation
- Where to find your Mailgun keyon the vendor's side; paste it into ahel after sign-in
About Mailgun
Mailgun is an email service. Connect your own key and your AI can get domains domains, post domains domains and post domains names.
Mailgun over MCP: ahel serves Mailgun to Claude, Claude Code, Cursor and Codex as one hosted MCP endpoint. There is no local server to run. Add your Mailgun key once, paste one link into your AI, and the actions above are there.
Questions
Is my Mailgun key safe?
Your Mailgun key is sealed in ahel and added to the request server-side when your AI calls Mailgun. It never crosses the MCP link, no tool can read it back, and you can turn the app off or remove the key at any time.
Which AIs can use Mailgun through ahel?
Any MCP-capable AI: Claude, Claude Code, Codex, Cursor, VS Code and others. Paste one link, https://mcp.ahel.ai, into the AI once and everything in your gateway arrives through it.
What can my AI do with Mailgun?
24 actions today, covering domains, v4s and ips. Ask in plain language; your AI picks the action and ahel runs it with your key.
Does connecting Mailgun cost anything?
Connecting apps is free during ahel's early access. Free, Pro and Team all cost nothing today, and the pricing page lists what each one includes. Mailgun may bill you for API use under its own terms.