get_inbox_placement_result
Get Result Details
Run your Mailgun account from an assistant — send and resend email, manage domains and routes, read analytics and suppression lists, and work templates and mailing lists.
LABSCO SUMMARY
Because the tools are generated from Mailgun's API, the coverage is unusually complete — sending is one tool among domains, routes, templates, suppression lists and analytics — so an assistant can both send mail and manage the account around it. The tradeoff is the naming: tools carry their HTTP path (post-v3-domain-messages), so the model leans on the descriptions rather than friendly names, but the analytics and suppression coverage is what a bare SMTP send cannot give you.
Mailgun's official server, generated from its API: 74 tools covering sending, domains and their tracking, webhooks, routes, mailing lists, templates, suppression lists, and analytics. Tool names follow the HTTP verb and API path (for example post-v3-domain-messages sends an email).
A Mailgun account and API key in MAILGUN_API_KEY from your API security settings. Node, run as npx @mailgun/mcp-server over stdio. If your account is in Mailgun's EU region, set MAILGUN_API_REGION=eu; it defaults to us.
One command plus a key — npx -y @mailgun/mcp-server, then supply credentials
USE CASES
Send the message, and if it needs to go again, retrieve the stored copy and resend it rather than rebuilding it.
Read the domain, verify it, and set its click, open and unsubscribe tracking so the messages you send are measured.
Read the bounces, complaints and unsubscribes for a domain so you stop mailing addresses that damage your reputation.
Pull total stats and break them down by provider, device and country, or query the analytics metrics and logs directly.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
get_inbox_placement_resultGet Result Details
get_metrics_summaryRetrieve a structured summary of key sending metrics (counts and computed rates) for a domain and time window. Returns raw counts, decimal rates, and data-gap reporting. Use as a data primitive for delivery-health questions.
get_preview_resultGet Test Results
get-v1-bounce-classification-statsList statistics, ordered by total bounces
get-v3-domain-aggregates-countriesAggregate counts by country
get-v3-domain-aggregates-devicesAggregate counts by devices triggering events
get-v3-domain-aggregates-providersAggregate counts by ESP
get-v3-domain-bouncesList all bounces
get-v3-domain-bounces-addressLookup bounce record
get-v3-domain-complaintsList all complaints
get-v3-domain-complaints-addressLookup complaint record
get-v3-domain-stats-totalTotals for entire domain
get-v3-domain-tagGet a tag
get-v3-domain-tag-statsGet stats by tag
get-v3-domain-tag-stats-aggregatesGet aggregate stat types by tag
get-v3-domain-tagsList all tags
get-v3-domain-templatesGet templates
get-v3-domain-templates-templateGet template
get-v3-domain-templates-template-versionsGet all template versions
get-v3-domain-templates-template-versions-versionGet a version
get-v3-domain-unsubscribesList all unsubscribes
get-v3-domain-unsubscribes-addressLookup unsubscribe record
get-v3-domain-whitelistsList allowlist records for domain
get-v3-domain-whitelists-valueLookup allowlist record
get-v3-domains-domain-limits-tagGet tag limits
get-v3-domains-domain-messages-storage_keyRetrieve a stored email
get-v3-domains-domain-tag-countriesList of supported country codes
get-v3-domains-domain-tag-devicesList of supported devices
get-v3-domains-domain-tag-providersList of supported providers
get-v3-domains-domain-webhooksGet domain webhooks
get-v3-domains-domain-webhooks-webhookGet domain webhooks by type
get-v3-domains-name-sending_queuesGet messages queue status
get-v3-domains-name-trackingGet tracking settings
get-v3-ip_poolsList dedicated IP pools of the account
get-v3-ip_pools-pool_idGet DIPP details
get-v3-ip_pools-pool_id-domainsGet domains linked to DIPP
get-v3-ipsList account IPs
get-v3-ips-ipGet details about account IP
get-v3-ips-ip-domainsGet all domains of an account where a specific IP is assigned
get-v3-listsGet mailing lists
get-v3-lists-list_addressGet a mailing list by address
get-v3-lists-list_address-membersGet mailing lists members
get-v3-lists-list_address-members-member_addressGet a member
get-v3-routesGet all routes
get-v3-routes-idGet a route
get-v3-stats-filterFiltered/grouped totals for entire account
get-v3-stats-totalTotals for entire account
get-v3-stats-total-domainsTotals for account domains for a single time resolution
get-v4-domainsGet domains
get-v4-domains-nameGet domain details
get-v5-accounts-limit-custom-monthlyGet current custom sending limit
get-v5-accounts-subaccounts-ip_pools-allList DIPPs delegated to subaccounts
post-v1-analytics-logsList logs
post-v1-analytics-metricsQuery account metrics
post-v1-analytics-usage-metricsQuery account usage metrics
post-v2-bounce-classification-metricsList statistic v2
post-v3-domain-messagesSend an email
post-v3-domain-templatesCreate a template
post-v3-domain-templates-template-versionsCreate a template version
post-v3-domains-domain-messages-storage_keyResend an email
post-v3-domains-domain-webhooksCreate a domain webhook
post-v3-listsCreate a mailing list
post-v3-lists-list_address-membersCreate a mailing list member
put-v3-domain-templates-templateUpdate template
put-v3-domain-templates-template-versions-versionUpdate a version
put-v3-domains-domain-webhooks-webhookUpdate domain webhook
put-v3-domains-name-tracking-clickUpdate click tracking settings
put-v3-domains-name-tracking-openUpdate open tracking settings
put-v3-domains-name-tracking-unsubscribeUpdate unsubscribe tracking settings
put-v3-lists-list_addressUpdate a mailing list
put-v3-lists-list_address-members-member_addressUpdate a mailing list member
put-v3-routes-idUpdate a route
put-v4-domains-name-verifyVerify Domain
validate_emailValidate Address V4
BEFORE YOU INSTALL
74 tools when we connected. --tags (or MAILGUN_MCP_TAGS) limits registration to send, validate, optimize or inspect tools; validate,inspect leaves only a handful. There are no delete operations, only reads and updates.
CONTEXT COST
Rated by the size of the 74 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
npx -y @mailgun/mcp-serverclaude mcp add mailgun -e MAILGUN_API_KEY=<YOUR_MAILGUN_API_KEY> -- npx -y @mailgun/mcp-server{
"mcpServers": {
"mailgun": {
"command": "npx",
"args": [
"-y",
"@mailgun/mcp-server"
],
"env": {
"MAILGUN_API_KEY": "<YOUR_MAILGUN_API_KEY>",
"MAILGUN_API_REGION": "us"
}
}
}
}{
"mcpServers": {
"mailgun": {
"command": "npx",
"args": [
"-y",
"@mailgun/mcp-server"
],
"env": {
"MAILGUN_API_KEY": "<YOUR_MAILGUN_API_KEY>"
}
}
}
}codex mcp add mailgun \
--env MAILGUN_API_KEY=<YOUR_MAILGUN_API_KEY> \
-- npx -y @mailgun/mcp-server{
"servers": {
"mailgun": {
"command": "npx",
"args": [
"-y",
"@mailgun/mcp-server"
],
"env": {
"MAILGUN_API_KEY": "<YOUR_MAILGUN_API_KEY>"
}
}
}
}git clone https://github.com/mailgun/mailgun-mcp-server.git
cd mailgun-mcp-server
npm install
npm run build{
"mcpServers": {
"mailgun": {
"command": "node",
"args": [
"<YOUR_PATH_TO_MAILGUN_MCP_SERVER>/dist/mailgun-mcp.js"
],
"env": {
"MAILGUN_API_KEY": "<YOUR_MAILGUN_API_KEY>"
}
}
}
}