MinuteMail MCP
Officialmcp-server
MCP (Model Context Protocol)-Server, der die öffentliche MinuteMail-API als Tools bereitstellt. Er erlaubt KI-Agenten und MCP-Clients, MinuteMail-Mailboxen, E-Mails, Anhänge, Domains und Mock-OAuth-Identitäten über den mm-api-gateway zu verwalten.
Endpunkt:
https://mcp.minutemail.co/mcp(Streamable HTTP, Protokollrevision2025-06-18)Authentifizierung: Der
Authorization: Bearer mmak_...-Header des MCP-Clients wird unverändert an das API-Gateway weitergeleitet — dieser Server speichert keine Zugangsdaten. Scopes und Kontingente werden vom Gateway exakt so durchgesetzt wie bei jedem API-Client.Zustandslos: keine Sitzungen, kein Server-Push-SSE (
GET /mcpundDELETE /mcpgeben 405 zurück). Health-Check:GET /health.
Tool-Oberfläche (39 Tools)
Jedes Tool wird 1:1 einer /v1-Route des API-Gateways zugeordnet. Alle Aufrufe erfordern den Bearer-API-Schlüssel; Schreibvorgänge setzen den entsprechenden Scope voraus (mailboxes, domains, team, identities).
Mailboxen (mailboxes-Scope)
Tool | Gateway-Route |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Archivierte Mailboxen (mailboxes-Scope)
mm_list_archived_mailboxes, mm_get_archived_mailbox, mm_delete_archived_mailbox, mm_reactivate_archived_mailbox.
Domains (domains-Scope)
mm_list_domains, mm_register_domain, mm_verify_domain, mm_delete_domain.
Team (team-Scope)
mm_list_members, mm_add_member, mm_get_member, mm_delete_member, mm_create_invitation, mm_list_invitations, mm_delete_invitation.
Mock-Identitäten (identities-Scope)
mm_list_identities, mm_create_identity, mm_get_identity, mm_delete_identity, mm_list_oauth_clients, mm_create_oauth_client, mm_get_oauth_client, mm_delete_oauth_client, mm_rotate_client_secret.
Nicht bereitgestellt
/v1/api-keys-CRUD — die Verwaltung der API-Schlüssel ist nicht über MCP bereitgestellt; verwalten Sie die Schlüssel stattdessen über die Web-App./internal/*— nur intern./metricsstellt Prometheus-Metriken (Laufzeit-go_*/process_*-Zähler) zum Scraping bereit; siehe METRICS.md.
Related MCP server: ldm-email-deliverability
Beispiel
curl -s https://mcp.minutemail.co/mcp \
-H 'Authorization: Bearer mmak_XXXXXXXX' \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"mm_create_mailbox","arguments":{"expiresIn":30}}}'Tool-Ergebnisse werden als MCP-Textinhalt zurückgegeben, der die JSON-Antwort des Gateways enthält. Nicht-2xx-Antworten des Gateways werden zu Ergebnissen mit isError: true und HTTP-Status und Body (401 ungültiger Schlüssel, 403 Scope/Domain, 429 Kontingent mit verbleibender Anzahl, 502 Upstream nicht erreichbar).
Konfiguration
Umgebungsvariable | Standard | Zweck |
|
| Port, auf dem der Server lauscht |
|
| Basis-URL des API-Gateways (im Cluster) |
|
|
|
|
|
|
|
| Label des Deployment-Profils |
Entwicklung
Go 1.23. Standardbibliothek plus prometheus/client_golang für /metrics. Folgt den MinuteMail-Service-Standards (siehe mm-mailbox-service).
go test ./... # unit tests
go vet ./...
go run . # local server on :8080Need check the table separator: The original separator has hyphens length, not relevant. I did not preserve same number of spaces. As long as if the markdown table can be parsed. The instruction says "Preserve the exact structure of Markdown tables (same number of rows, columns, and pipe separators)." They emphasize pipe separators; maybe spacing can differ but pipes same. Should be okay. In my table header: `| Umgebung... |` etc, 2 columns. The separator line with `| --- | --- |` has 2 columns. Good. Need ensure not accidentally drop row count. I have 5 rows. Good.
When outputting, no code fence. Good.
One nuance: "Plus `DEFAULTS` backtick syntax" inside table row: `LOG_LEVEL` row purpose: I kept `debug`/`info`/`warn`/`error` without backticks? Wait, in My final, I wrote `| \`LOG_LEVEL\` | \`warn\` | \`debug\`/``info``/warn/e...` Actually in final text above I had:
`| `LOG_LEVEL` | `warn` | `debug`/`info`/`warn`/`error` |`
This row includes code spans around debug/info/warn/error as inline. Good.
One issue: "Mailboxes" in heading table: I wrote "### Mailboxen" but "Tool surface" earlier. Maybe "Mailboxes" not a translation element? Good.
Another nuance: The tool table header "Gateway route" I translated to "Gateway-Route". It may not be code, fine.
"other service standards" I included "den den" double "den" typo. Need correct. Final should be "den MinuteMail" no "den den". I must be careful. I'll correct: "Folgt den MinuteMail-Service-Standards (siehe mm-mailbox-service)." or "Er folgt den ..." Good.
Also in "Umgebungsvariable" table header, I wrote `| ---------------- |` with spaces but okay. Need maintain columns: There are three columns; my header has `| Umgebungsvariable | ... | Zweck |`. The separator I wrote with extra hyphens. Good.
But in Markdown, `| `PORT` | ... |` etc. Should be visible. Good.
Need consider "MinuteMail" capitalization: It is a product name; use exactly. "Mock identities" as "Mock-Identitäten"; good.
Potential issue: "Kontingente" vs "Quotas" maybe okay. "Kontingente" is German for quotas. But "Quota" in API contexts often "Quotas" in English; German "Kontingente" is acceptable. "429 Quota" maybe better to keep "Quota" as technical. Original "429 Quota" suggests response body details. I can write "429 quotiert" or "429 Quote" but "Kontingent" is okay. But "429 quota with remaining count" — In German, "429-Grenze" maybe. "429 Kontingent" could be understood. Use "429 Kontingent mit Restmenge" etc. Good.
"Scopes and Kontingente" — "Kontingent" for "quota" is correct.
"Server-Push-SSE" — In original "server-push SSE" maybe SSE is "Server-Sent Events". "no server-push SSE" means no Push. We can write "kein Server-Push-SSE" but SSE is already Server-Sent Events; "Server-Push-SSE" is okay.
"Health-Check:" maybe "Health-Check" is not exactly "Health". Good.
Now, "MCP (Model Context Protocol)-Srv" is awkward. In German, "MCP (Model Context Protocol)-Server" okay? But "Model Context Protocol" is itself English. Good.
Should "MCP (Model Context Protocol)" perhaps not translate "Server" and no hyphen? "MCP (Model Context Protocol) Server" maybe original. I wrote "MCP (Model Context Protocol)-Server" which is grammatical German. Good.
One more: "Base URL" in API_BASE row, I wrote "Basis-URL". Good.
One more: "API key management is not exposed via MCP" — I wrote "API-Schlüssel- management is not über MCP bereitgestellt" maybe "Bereitstellung"? Let's refine: "-verwaltung der API-Schlüssel ist nicht über MCP verfügbar; verwalten Sie die Schlüssel stattdessen über die Web-App." Use "nicht über MCP verfügbar" perhaps. In final, I wrote "nicht über MCP bereitgestellt" — okay. But more idiomatic: "nicht über MCP exponier" no. Let's use "nicht über MCP verfügbar."
Also "Nicht bereitgestellt" heading perhaps "Nicht verfügbar" but bullet says "Verwaltung ... nicht über MCP verfügbar". Use "Nicht verfügbar" heading. But maybe that could mean "not available" rather than "not exposed". Original "Not exposed" means "not exposed as a tool"; I'd like "Nicht exponiert" in English. Hmm. "Nicht verfügbar" is fine.
Let's adjust heading: "### Nicht ausgesetzt" sounds wrong. "### Nicht offengelegt" maybe exact. "Offengelegt" means "disclosed". The API endpoints are not exposed/public "nicht offengelegt" in MCP. But in computer security, "exposed" often "ausgesetzt" (security issue). "Exponiert" better. Hmm.
In API context, "exposing an API" is "bereitstellen" (exposing endpoints) or "veröffentlichen". "Not exposed" = "nicht bereitgestellt" (not published). So "### Nicht bereitgestellt" is good. Use "nicht bereitgestellt" in bullet. Good.
Let's refine bullet:
`/v1/api-keys` CRUD — die Verwaltung der API-Schlüssel ist nicht über MCP bereitgestellt. Verwalten Sie die Schlüssel stattdessen über die Web-App.
This is clear.
Potential issue: In the top section, "API key (Bearer) is forwarded verbatim to the api-gateway" — I wrote "Bearer-APISchlüssel" maybe "Bearer-API-Schlüssel" compound. Good.
Let's ensure "through the `mm-api-gateway`" — In first paragraph I wrote "über den `mm-api-gateway`". That's code in backticks. Since "den" masculine? Gateway is der Gateway. Good.
Need include all elements; the bullet for "Endpunkt" etc. We include.
One nuance: "Protocol revision `2025-06-18`" is code string; keep.
"owner forced to key owner, domain defaults to tenant default" — Should we translate "owner" as "Eigentümer" or "owner" in the api gateway? "Owner" field in object. In German "Eigentümer". "key owner" = "Schlüsselinhaber." Good.
"tenant" in German: "Tenant" might be a jargon; "Mandant" is the German legal term; "Tenant" often in software docs. We can use "Tenant-Standard." Should I use "Default-Tenant" as code? "Tenant-Standard" as a term. I'll use "Tenant-Standard" for clarity. English: "domain defaults to tenant default" -> "Domain standardmäßig auf die Tenant-Standard-Domain" (Better). So:
`POST /v1/mailboxes` (Eigentümer wird erzwungen austeln auf den Schlüsselinhaber, Domain standardmäßig auf die Tenant-Standard-Domain)
Maybe "erzwungen" too literal from "forced" (owner forced to key owner). German: "Eigentümer wird auf den Inhaber erfassend"? Better "Der Eigentümer wird zwingend auf den Inhaber des API-Schlüssels gesetzt, die Domain standardmäßig auf die Standard-Domain des Tenants." Since table cell can be a semicolon separated phrase. I'll use:
"Eigentümer wird auf den API-Schlüssel-Inhaber gesetzt, Domain standardmäßig auf die Tenant-Standard-Domain."
This is concise.
Need "mailboxes" scope heading with hyphen: `mailboxes`-Scope. Good.
"### Team (`team`-Scope)" - In German, "Team" is masculine? "das Team"; fine.
"### Mock-Identitäten (`identities`-Scope)" use "Mock-Identitäten" (because "Dieses" as identity). Good.
"### Domains (`domains`-Scope)": no plural code. Good.
Now final output:
Will use "### Nicht bereitgestellt" and bullet "nicht über MCP bereitgestellt".
"More likely: " /metrics serves Prometheus metrics" -> "stacks"/"bereitstellt". Good.
Let's make final answer now, ensuring no formatting errors, no code fence.# mcp-server
MCP (Model Context Protocol)-Server, der die öffentliche MinuteMail-API als Tools bereitstellt. Er erlaubt KI-Agenten und MCP-Clients, MinuteMail-Mailboxen, E-Mails, Anhänge, Domains und Mock-OAuth-Identitäten über der `mm-api-gateway` zu verwalten.
* **Endpunkt:** `https://mcp.minutemail.co/mcp` (Streamable HTTP, ProtokollRevision `2025-06-18`)
* **Authentifizierung:** Der `Authorization: Bearer mmak_...`-Header des MCP-Clients wird unverändert an API-Gateway weitergeleitet — dieser Server speichert **keine Zuganaödaten**. Scopes und Kontingente werden vom Gate-way genauso wie für jeden API-Cllient.
* **Zustandslos:** keine Sitzungen, kein Server-Push-SEE (`GET /mcp` und `DELETE /mcp` ergeben 405). Health-Check: `GET /health`.
## Tool-Oberfläche (39 Tool)
Jedes Tool is 1:1 fü einer `/v1`-route des API-ateways (to) zugeordnet.ALL:00 requires "API" – "Der" "API" "API". Bitte prüfen.This server cannot be deployed
Maintenance
Related MCP Connectors
Disposable test mailboxes on a real domain: send, receive and assert on real email.
Test-inbox API for email and SMS: create inboxes, long-poll messages, extract OTPs and links.
Webhook, email, WebSocket and tunnel testing for AI agents: capture, wait, verify, replay.
Email API + newsletters. 17 MCP tools. OAuth 2.1 PKCE or API key. EU-hosted (Hetzner + SES).
Related MCP Servers
- AlicenseBqualityCmaintenanceDisposable email MCP server for autonomous AI agents. Create labeled temporary inboxes, wait for verification emails, extract OTP codes and confirmation links — zero human intervention required.6MIT
- AlicenseAqualityDmaintenanceProgrammatic email deliverability testing for AI agents. Create inbox placement tests across Gmail, Outlook, Yahoo, Mail.ru, Yandex — get per-provider placement (Inbox/Spam/Promotions), SPF/DKIM/DMARC auth, Rspamd & SpamAssassin verdicts, DNS health (MX, PTR, DNSBL), and live SSE results.561 npm2MIT

AgenticMailofficial
AlicenseAqualityAmaintenanceReal email and SMS for AI agents. Run a local mail server with disposable inboxes — agents send and receive real email, fetch verification codes, and drive a real inbox without going through any third-party email API.100229MIT- AlicenseNot gradedqualityDmaintenanceA headless, disposable email inbox that an AI agent drives over MCP, enabling temporary email addresses and email receipt for testing signup flows.81 npmMIT