Skip to main content
Glama
opastorello

Mail.tm MCP Server

by opastorello

Mail.tm MCP Server

An MCP (Model Context Protocol) server that lets AI assistants manage temporary email addresses via the mail.tm API. Create disposable inboxes, read messages, and manage accounts — all from your AI chat.

Docker Image GitHub release

Tools

Tool

Description

list_domains

List available domains for creating temp addresses

create_temp_email

Create a new disposable email account (random or custom)

login

Log in to an existing mail.tm account

get_inbox

List messages in the current inbox (paginated)

read_email

Read the full content of an email by ID

mark_as_read

Mark a message as read

delete_email

Permanently delete a message

get_account_info

Get current account details and storage usage

delete_account

Permanently delete the account and all its messages

logout

Clear the current session without deleting the account

Transport

The server runs as a streamable-http MCP server on port 8000, endpoint /mcp.

Compatible with:

  • mcpjungle

  • Claude Desktop (HTTP mode)

  • Any MCP client that supports streamable-http


Quick Start

curl -O https://raw.githubusercontent.com/opastorello/mailtm-mcp-server/master/docker-compose.yml
docker compose up -d

Server available at http://localhost:8000/mcp.

Docker (manual)

docker pull ghcr.io/opastorello/mailtm-mcp-server:latest
docker run -d -p 8000:8000 -v mailtm-session:/tmp --name mailtm ghcr.io/opastorello/mailtm-mcp-server:latest

Local (no Docker)

pip install -r requirements.txt
python mailtm_server.py

Requires Python 3.11+.


Register with mcpjungle

Standalone (mcpjungle on the host)

cat > /tmp/mailtm.json << 'EOF'
{
  "name": "mailtm",
  "transport": "streamable_http",
  "url": "http://localhost:8000/mcp"
}
EOF

mcpjungle register -c /tmp/mailtm.json

mcpjungle running in Docker (same host)

When mcpjungle runs inside Docker, localhost doesn't resolve to the host. You need both containers on the same Docker network.

The included docker-compose.yml handles this automatically — it joins the opt_default network (mcpjungle's default network) and sets a fixed container name mailtm so the hostname never changes across restarts.

# Download and start
curl -O https://raw.githubusercontent.com/opastorello/mailtm-mcp-server/master/docker-compose.yml
docker compose up -d

# Register using the container hostname
cat > /tmp/mailtm.json << 'EOF'
{
  "name": "mailtm",
  "transport": "streamable_http",
  "url": "http://mailtm:8000/mcp"
}
EOF

mcpjungle register -c /tmp/mailtm.json

Note: The transport value is streamable_http (underscore), not http — this is mcpjungle-specific.

Note: host.docker.internal does not work on Linux. Use the container name or a fixed IP instead.

To re-register after changes:

mcpjungle deregister mailtm
mcpjungle register -c /tmp/mailtm.json

Invoke tools via mcpjungle CLI

mcpjungle invoke mailtm__create_temp_email
mcpjungle invoke mailtm__get_inbox
mcpjungle invoke mailtm__list_domains

Configure in Claude Desktop

Pointing to a running instance:

{
  "mcpServers": {
    "mailtm": {
      "url": "http://localhost:8000/mcp"
    }
  }
}

Session Management

The server stores the active session in /tmp/mailtm_session.json:

  • Session persists between tool calls automatically within the same run.

  • Mount /tmp as a Docker volume to survive container restarts.

  • logout() clears the session without deleting the account.

  • delete_account() deletes the account and clears the session.


Example Workflow

1. create_temp_email()           → generates a random address like abc123@dollicons.com
2. get_inbox()                   → check for new messages
3. read_email(message_id="...")  → read the content
4. delete_account()              → clean up when done

Dependencies

  • mcp[cli] >= 1.2.0 — FastMCP server framework

  • requests >= 2.31.0 — HTTP client for the mail.tm API


License

MIT — Nícolas Pastorello

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/opastorello/mailtm-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server