mailboxes.list
List mailboxes
List the tenant's active mailboxes (owner is derived from the API key). Optionally look up a single mailbox by exact address.
address
io.github.minutemailco由 GitHub 账号 minutemailco 发布v1.1.3更新于 Oct 24, 2026
Ephemeral mailboxes and a mock OAuth IdP for testing email and auth flows — 39 API-driven tools
MinuteMail 的远程 MCP 服务器,让助手创建临时邮箱、读取测试邮件并管理模拟 OAuth 身份,用于测试邮件与认证流程。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.minutemailco%2Fmcp-server/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。把它添加到你客户端的 mcpServers 配置中。
{
"mcpServers": {
"minutemail": {
"type": "http",
"url": "https://mcp.minutemail.co/mcp",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}MinuteMail as MCP (Model Context Protocol) tools: let AI agents and MCP clients operate ephemeral mailboxes, emails, attachments, custom domains, teams, and mock OAuth identities for testing email and auth flows.
[License: MIT] [Docker] [smithery badge]
https://mcp.minutemail.co/mcp (Streamable HTTP, protocol
revision 2025-06-18)Bearer mmak_...). The server is a
stateless proxy — it holds no credentials, sessions, or local storage of
its own; your key is forwarded verbatim to the MinuteMail API, where scopes
and quotas are enforced. All state (mailboxes, mails, identities) lives in
the MinuteMail platform behind it.io.github.minutemailco/mcp-server and on
Smithery.Sign up at minutemail.co (free during early access)
Create an API key in the dashboard
Configure your MCP client to send it as the Authorization header:
Authorization: Bearer mmak_XXXXXXXX
Claude Code / Claude Desktop / Cursor / any Streamable HTTP client:
https://mcp.minutemail.co/mcpAuthorization: Bearer mmak_...Claude Code CLI:
Claude Desktop / clients with an mcpServers JSON config (e.g.
claude_desktop_config.json / ~/.cursor/mcp.json):
Some clients (older Claude Desktop builds) only support local
stdioservers in their JSON config. If yours rejectstype: "http", use the built-in remote/connectors UI with the URL and header above, or run mcp-remote as a stdio bridge:
For a guided walkthrough, see the docs: docs.minutemail.co/mcp/getting-started.
Raw JSON-RPC (what the clients do under the hood):
Every tool maps 1:1 to a route of the MinuteMail API. All calls require the
Bearer API key; write operations require the matching scope (mailboxes,
domains, team, identities).
mailboxes scope)mailboxes scope)archived.list, archived.get,
archived.delete, archived.reactivate.
domains scope)domains.list, domains.register, domains.verify, domains.delete.
team scope)team.members.list, team.members.add, team.members.get, team.members.delete,
team.invitations.create, team.invitations.list, team.invitations.delete.
identities scope)identities.list, identities.create, identities.update, identities.get,
identities.delete, oauth.clients.list, oauth.clients.create,
oauth.clients.get, oauth.clients.delete, oauth.clients.rotate_secret.
identities.update patches profile fields, isActive (activate/deactivate),
emailVerified (drives the email_verified claim), and custom claims
merged into issued ID tokens and userinfo responses.
Tool results are returned as MCP text content carrying the API's JSON
response. Non-2xx responses become isError: true results with the HTTP
status and body (401 invalid key, 403 scope/domain, 429 quota with remaining
count, 502 upstream down).
The server is a single static Go binary in a scratch image (~7 MB):
Self-hosting still requires MinuteMail API keys — the server is a stateless proxy over the hosted API, not a standalone implementation. It keeps no sessions or local data; every mailbox, mail, and identity is stored by the MinuteMail API it forwards to.
GET /health for liveness; GET /metrics for Prometheus counters.
API-key management is not exposed via MCP — manage keys from the web app.
Go 1.23, stdlib plus prometheus/client_golang.
MIT — © MinuteMail.co
来源:README.md,提交 7a24b24
List mailboxes
List the tenant's active mailboxes (owner is derived from the API key). Optionally look up a single mailbox by exact address.
addressCreate mailbox
Create a new temporary mailbox. The domain defaults to the tenant's default domain; the owner is always the API key's owner.
tagdomainexpiresInrecoverablenoExpirationGet mailbox
Fetch a single mailbox by ID.
mailboxId必填Delete mailbox
Delete a mailbox and its contents by ID.
mailboxId必填Bulk delete mailboxes
Delete several mailboxes at once by ID.
ids必填List mails
List the emails in a mailbox, newest first.
mailboxId必填Inject test mail
Inject a simulated inbound email into a mailbox (multipart upload). No external mail is sent; use this to simulate inbound mail for flow testing.
body必填sender必填subject必填expiresInmailboxId必填attachmentsGet mail
Fetch a single email by ID, including body and attachment metadata.
mailId必填mailboxId必填Delete mail
Delete a single email.
mailId必填mailboxId必填Bulk delete mails
Delete several emails of one mailbox at once.
ids必填mailboxId必填List attachments
List the attachments of an email (metadata only).
mailId必填mailboxId必填Add attachment
Attach a file to a test-injected email (base64 payload).
data必填mailId必填filename必填expiresInmailboxId必填sizeBytescontentTypeGet attachment
Download an attachment. The file contents are returned base64-encoded in the JSON "data" field.
mailId必填mailboxId必填attachmentId必填Delete attachment
Delete a single attachment.
mailId必填mailboxId必填attachmentId必填Bulk delete attachments
Delete several attachments of one email at once.
ids必填mailId必填mailboxId必填List archived mailboxes
List the tenant's archived (expired but recoverable) mailboxes.
无需输入参数。
Get archived mailbox
Fetch a single archived mailbox by ID.
mailboxId必填Delete archived mailbox
Permanently delete an archived mailbox.
mailboxId必填Reactivate archived mailbox
Reactivate an archived mailbox back to active state.
expiresInmailboxId必填List domains
List the tenant's custom domains with their DNS verification status.
无需输入参数。
Register domain
Register a new custom domain. DNS records (TXT token + MX) must then be added before verification can succeed.
name必填Verify domain
Trigger DNS verification (TXT + MX) of a registered domain.
domainId必填Delete domain
Delete a registered custom domain.
domainId必填List team members
List the tenant's team members.
无需输入参数。
Add team member
Add a team member directly (no invitation flow).
email必填status必填user_id必填username必填Get team member
Fetch a single team member by ID.
memberId必填Delete team member
Remove a team member.
memberId必填Create invitation
Create a team invitation for an email address (SMTP invite is sent by the team service).
email必填List invitations
List the tenant's team invitations.
无需输入参数。
Delete invitation
Revoke a team invitation.
invitationId必填List identities
List the tenant's mock identities, optionally filtered by OAuth client or mailbox address.
clientIdmailboxAddressCreate identity
Create a mock identity bound to a mailbox for OAuth flow testing.
nameclaimsclientId必填usernameavatarUrlemailVerifiedmailboxAddress必填Get identity
Fetch a single mock identity by ID.
identityId必填Update identity
Update a mock identity: profile fields, isActive (activate/deactivate), emailVerified, and custom claims merged into the ID token and userinfo.
nameclaimsisActiveusernameavatarUrlidentityId必填emailVerifiedDelete identity
Delete a mock identity.
identityId必填List OAuth clients
List the tenant's OAuth clients for mock identity testing.
无需输入参数。
Create OAuth client
Register an OAuth client for mock identity flows. The plaintext clientSecret is returned once at creation.
name必填providerTyperedirectUris必填providerLabelGet OAuth client
Fetch a single OAuth client by its public client ID.
clientId必填Delete OAuth client
Delete an OAuth client by its public client ID.
clientId必填Rotate client secret
Rotate an OAuth client's secret. The new plaintext secret is returned once.
clientId必填已满足适用检查项的 100%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
claude mcp add --transport http minutemail https://mcp.minutemail.co/mcp \ --header "Authorization: Bearer mmak_XXXXXXXX"{ "mcpServers": { "minutemail": { "type": "http", "url": "https://mcp.minutemail.co/mcp", "headers": { "Authorization": "Bearer mmak_XXXXXXXX" } } }}{ "mcpServers": { "minutemail": { "command": "npx", "args": [ "mcp-remote", "https://mcp.minutemail.co/mcp", "--header", "Authorization: Bearer mmak_XXXXXXXX" ] } }}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":"mailboxes.create","arguments":{"expiresIn":30}}}'mailboxes.create (expiresIn 30) ↓your app under test sends a verification email to the mailbox address ↓mails.list → mails.get (extract the code / link) ↓assert the flow completed — the mailbox expires on its owndocker run -p 8080:8080 \ -e API_BASE=https://api.minutemail.co \ ghcr.io/minutemailco/mcp-server:latest# or from Docker Hub:docker run -p 8080:8080 \ -e API_BASE=https://api.minutemail.co \ chrptvn/minutemail-mcp:latestgo test ./... # unit testsgo vet ./...go run . # local server on :8080