
Mailgi MCP server
Which MCP servers are Mailgi's own, from the official registry and from asking its own domain, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.
read 2026-11-01
- Registry namexyz.mailgi/mailgiverified in the MCP registry
The registry name sits under mailgi.xyz. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.
- Stateanswerschecked 2026-11-01
- Tools67
- Server calls itselfmailgi
- Server version1.0.0
- Protocol version2025-06-18
On 2026-11-01 the server answered initialize and tools/list without a sign-in. First answer in 229 ms.
- Whether its tools do the product's job has not been judged yet.
- Checked on 4 of the 7 days it takes to judge reliability.
Once connected
- Keep approval on for mail_send, mail_delete: they delete, send or pay without saying so.
- agent_delete, mail_send, mail_delete, mail_set_flags, mailbox_create change data without a sign-in: anyone with the address can call them.
- Parameters are untyped or undescribed in 33 of 67 tools: check arguments before calling.
Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.
- INITE MCP scoreafter a weeka score needs 7 daily checks: 4 so far
- Answeredmeasuring4 of the 7 daily checks it takes to print a share
- Median first answer253 ms
- Space in an agent's context≈ 6,039 tokensthe definitions of all its tools (67), which an agent carries on every turn
- Tool definitionsA · 92 of 100
- Typed results0 of 67 toolsdeclared outputSchema: results come typed, read once
- No description an agent can choose by: 1 of 67
- Parameters without a description: in 33 of 67
What an agent can do with it
- not sure · triage support messages and reply in context
- not sure · negotiate meeting times over email threads
- not sure · receive signup verification codes automatically
Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?
Worth a look
- Tools that delete, send or pay, marked as not destructive: mail_send, mail_delete
- Tools that change data, on a server that answers without a sign-in: agent_delete, mail_send, mail_delete, mail_set_flags, mailbox_create
A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (25%), doing the product's job (25%), definitions (20%), context (10%), use (10%) and how readily a client connects (10%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →
register_agentCreates a new agent with its own email address and returns its API key, shown once.
org_login_request_codeEmails a 6-digit dashboard login code to a human's address. Creates the account on first login.
org_login_verifyExchanges an emailed login code for a dashboard session token.
topup_lookupShows which wallet a top-up for a Mailgi address would credit, and the allowed amounts.
topup_startCreates a card payment link for the wallet behind any Mailgi address. Give it to a human to pay.
topup_statusReturns whether a top-up payment has been paid and credited.
healthChecks that the Mailgi API, its database and the mail server are up.
agent_getReturns this agent's profile: its addresses, label and domain.
agent_usageReturns this agent's daily send and API counters; the latest day is partial.
agent_deletePermanently deletes this agent, its mailbox and all its API keys.
mail_listLists message headers in the mailbox, newest first by default; filter by folder with mailboxId.
mail_getReturns one message with its full text and HTML body.
mail_sendSends an email from this agent's address. Mail to outside addresses is charged to the wallet.
mail_deleteMoves a message to the Trash folder.
mail_moveMoves a message to another folder.
mail_set_flagsMarks a message as seen or unseen, flagged or unflagged.
mailbox_listLists all folders, including Inbox, Sent and Trash.
mailbox_createCreates a folder, optionally nested under another.
mailbox_renameRenames a folder.
mailbox_deleteDeletes a custom folder.
apikey_listLists this agent's API keys. Key values are never shown again.
apikey_createCreates another API key for this agent. The key is shown once.
apikey_revokeRevokes an API key immediately.
billing_getReturns the wallet this agent spends from: balance, prices and how to top up.
billing_topupCreates a card payment link for this agent's wallet. Give it to a human to pay.
billing_transactionsLists the wallet ledger, newest first.
webhook_listLists this agent's webhook endpoints.
webhook_createRegisters an HTTPS URL to be notified when mail arrives. The signing secret is shown once.
webhook_deleteDeletes a webhook endpoint.
webhook_deliveriesLists recent delivery attempts for a webhook endpoint.
webhook_resendQueues a delivery attempt to be sent again.
webhook_enableRe-enables a webhook endpoint that was switched off after repeated failures.
org_meReturns the signed-in user and the organizations they belong to.
org_logoutRevokes the current dashboard session token.
org_listLists the organizations the signed-in user belongs to.
org_createCreates an organization; the signed-in user becomes its owner.
org_getReturns one organization.
org_renameRenames an organization.
org_member_listLists an organization's members and their roles.
org_member_set_roleChanges a member's role.
org_member_removeRemoves a member from the organization, or leaves it when userId is your own.
org_invite_createEmails an invitation to join the organization.
org_invite_listLists pending invitations.
org_invite_revokeRevokes a pending invitation.
invite_acceptAccepts an organization invitation with the token from the invite email.
domain_attachAttaches a custom domain and returns the DNS records to publish.
domain_listLists an organization's custom domains.
domain_getReturns a domain's verification status and the DNS records it needs.
domain_verifyRe-checks the domain's DNS records and verifies it if they are correct.
domain_detachDetaches a custom domain from the organization.
domain_inbox_listLists the inboxes (agents) on a domain.
domain_inbox_createCreates an inbox with a chosen address on a domain. Its API key is shown once.
domain_inbox_deleteRemoves an inbox and its mail from a domain.
regtoken_createCreates a token that lets an agent register its own address on this domain. Shown once.
regtoken_listLists a domain's registration tokens.
regtoken_revokeRevokes a registration token.
org_usageReturns daily send, receive and API counters across the organization.
domain_usageReturns daily send, receive and API counters for one domain.
org_billing_getReturns the organization's shared wallet: balance, prices and how to top up.
org_billing_topupCreates a card payment link for the organization wallet.
The first 60 of 67, as the server listed them.
How to connect
Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:
{
"mcpServers": {
"mailgi": {
"type": "http",
"url": "https://api.mailgi.xyz/mcp"
}
}
}Add it
Claude Code, in a terminal
claude mcp add --transport http mailgi https://api.mailgi.xyz/mcpclaude.ai, ChatGPT and other clients: add https://api.mailgi.xyz/mcp as a custom connector in the settings.
Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.
Before we count this visit
Analytics and ad measurement tell us which pages and which of our ads do their job: Google Analytics and Google Ads, the Meta pixel, Yandex Metrica, and one first-party id of our own. Nothing is stored until you answer, and declining changes nothing about the site.