UnCorreoTemporal

Official registry Productivity

Temporary email for AI agents: create inboxes, wait for emails, extract OTPs, verify signups.

What can you do with UnCorreoTemporal?

  • create_signup_inbox
  • wait_for_verification_email
  • get_latest_email
  • extract_otp_code
  • extract_verification_link
  • complete_signup_flow

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

PYPI package uncorreotemporal-mcp
Claude Code
claude mcp add uncorreotemporal -e 'UCT_API_KEY=<your uct_api_key>' -e 'UCT_API_BASE=<UCT_API_BASE>' -e 'UCT_MCP_TRANSPORT=<UCT_MCP_TRANSPORT>' -- uvx uncorreotemporal-mcp==0.1.1
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "uncorreotemporal": {
            "command": "uvx",
            "args": [
                "uncorreotemporal-mcp==0.1.1"
            ],
            "env": {
                "UCT_API_KEY": "<your uct_api_key>",
                "UCT_API_BASE": "<UCT_API_BASE>",
                "UCT_MCP_TRANSPORT": "<UCT_MCP_TRANSPORT>"
            }
        }
    }
}

Environment variables

  • UCT_API_KEY required secret Your UnCorreoTemporal API key (get one at https://uncorreotemporal.com). Format: uct_...
  • UCT_API_BASE API base URL. Defaults to https://uncorreotemporal.com
  • UCT_MCP_TRANSPORT Transport mode: stdio (default), streamable-http, or sse

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. uncorreotemporal-mcp
  2. Architecture Demo
  3. Remote Connection (No Installation)
  4. Installation
  5. Quickstart (30 seconds)
  6. Minimal Workflow Example
  7. Public Tools
  8. Tool I/O summary
  9. Configuration
  10. Examples
  11. Docker
  12. Breaking Changes
  13. Directory listing assets
  14. Public endpoint deployment
  15. Development

uncorreotemporal-mcp

MCP server for UnCorreoTemporal, focused on autonomous signup and email verification workflows.

Architecture Demo

AI Agent
   |
   | MCP
   v
Temporary Email MCP Server
   |
   v
UnCorreoTemporal API

Remote Connection (No Installation)

Connect directly to the public endpoint — no local install needed:

{
  "mcpServers": {
    "uncorreotemporal-mcp": {
      "url": "https://uncorreotemporal.com/mcp"
    }
  }
}

The public endpoint is free to use for testing. For production workloads, set your own UCT_API_KEY via local install.

Installation

Claude Code
claude mcp add uncorreotemporal -e UCT_API_KEY=uct_your_key_here -- uvx uncorreotemporal-mcp
Claude Desktop (claude_desktop_config.json)
{
  "mcpServers": {
    "uncorreotemporal": {
      "command": "uvx",
      "args": ["uncorreotemporal-mcp"],
      "env": {
        "UCT_API_KEY": "uct_your_key_here"
      }
    }
  }
}

Get your API key at uncorreotemporal.com.

Quickstart (30 seconds)

uvx uncorreotemporal-mcp

Or run local project version:

UCT_API_KEY=uct_your_key_here \
uv run uncorreotemporal-mcp

Minimal Workflow Example

inbox = await create_signup_inbox("github")
email = await wait_for_verification_email(inbox["inbox_id"])
link = await extract_verification_link(
    inbox_id=inbox["inbox_id"],
    message_id=email["message_id"],
)

Public Tools

  • create_signup_inbox
  • wait_for_verification_email
  • get_latest_email
  • extract_otp_code
  • extract_verification_link
  • complete_signup_flow
New v1 tool: complete_signup_flow

Runs:

  1. create inbox
  2. wait verification email
  3. extract verification link + OTP

Input:

{
  "service_name": "github",
  "timeout_seconds": 90,
  "poll_interval_seconds": 3,
  "subject_contains": "verify",
  "from_contains": "noreply",
  "preferred_domains": ["github.com"],
  "ttl_minutes": 30
}

Output:

{
  "status": "success",
  "inbox_id": "agent42@uncorreotemporal.com",
  "email": "agent42@uncorreotemporal.com",
  "verification_message": {
    "message_id": "msg-1",
    "subject": "Verify your email",
    "from_address": "noreply@example.com",
    "received_at": "2026-03-08T11:30:00Z"
  },
  "verification_link": "https://example.com/confirm?t=abc",
  "otp_code": "483920",
  "link_candidates": ["https://example.com/confirm?t=abc"],
  "otp_candidates": ["483920"]
}

status can be success, partial_success, or timeout.

Tool I/O summary

create_signup_inbox(service_name, ttl_minutes?)

Returns:

{
  "inbox_id": "agent42@uncorreotemporal.com",
  "email": "agent42@uncorreotemporal.com",
  "expires_at": "2026-03-08T12:00:00Z",
  "service_name": "github"
}
wait_for_verification_email(inbox_id, timeout_seconds?, poll_interval_seconds?, subject_contains?, from_contains?)

Returns:

{
  "status": "received",
  "message_id": "msg-1",
  "received_at": "2026-03-08T11:30:00Z",
  "subject": "Verify your account",
  "from_address": "noreply@example.com",
  "timeout_seconds": 90
}
get_latest_email(inbox_id, mark_as_read?)

Returns full message body and metadata.

extract_otp_code(message_text? | inbox_id+message_id, otp_length_min?, otp_length_max?)

Returns:

{
  "otp_code": "483920",
  "candidates": ["483920"]
}

Returns:

{
  "verification_link": "https://example.com/confirm?t=abc",
  "candidates": ["https://example.com/confirm?t=abc"]
}

Configuration

Environment variables:

  • UCT_API_KEY (required)
  • UCT_API_BASE (optional, default: https://uncorreotemporal.com)
  • UCT_HTTP_TIMEOUT_SECONDS (optional, default: 20)
  • UCT_MCP_TRANSPORT (optional, stdio by default; also supports streamable-http and sse)
  • UCT_MCP_HOST (optional, default: 0.0.0.0)
  • UCT_MCP_PORT (optional, default: 8000)
  • UCT_MCP_PATH (optional, default: /mcp)

Important: inbox_id == email address.

Examples

See /examples:

  • simple_workflow.py
  • openai_agent_signup.py
  • langchain_agent_signup.py
  • agent_creates_account.py

Run dry-run:

uv run python examples/simple_workflow.py --dry-run

Docker

Build:

docker build -t uncorreotemporal-mcp .

Run stdio mode:

docker run --rm -i \
  -e UCT_API_KEY=uct_your_key_here \
  uncorreotemporal-mcp

Run streamable-http mode:

docker run --rm -p 8000:8000 \
  -e UCT_API_KEY=uct_your_key_here \
  -e UCT_MCP_TRANSPORT=streamable-http \
  -e UCT_MCP_PATH=/mcp \
  uncorreotemporal-mcp

Breaking Changes

Removed legacy low-level tools:

  • create_mailbox
  • list_mailboxes
  • get_messages
  • read_message
  • delete_mailbox

Migration map:

  • create_mailbox -> create_signup_inbox
  • get_messages + read_message -> wait_for_verification_email + get_latest_email
  • multi-step signup orchestration -> complete_signup_flow

Directory listing assets

Prepared listing payloads are in /directory-listings for:

  • modelcontextprotocol/servers
  • mcp.so
  • awesome-mcp

Public endpoint deployment

Deployment templates for https://uncorreotemporal.com/mcp are in /deploy.

Development

uv run pytest
uv run uncorreotemporal-mcp

Frequently asked questions

What is UnCorreoTemporal?

Temporary email for AI agents: create inboxes, wait for emails, extract OTPs, verify signups.

How do I install UnCorreoTemporal?

It runs on your machine. In Claude Code: claude mcp add uncorreotemporal -e 'UCT_API_KEY=<your uct_api_key>' -e 'UCT_API_BASE=<UCT_API_BASE>' -e 'UCT_MCP_TRANSPORT=<UCT_MCP_TRANSPORT>' -- uvx uncorreotemporal-mcp==0.1.1. For other clients, paste the JSON configuration from this page into their MCP settings.

Does UnCorreoTemporal need an API key?

Yes. It expects UCT_API_KEY, which you set in its configuration.

Is UnCorreoTemporal open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains UnCorreoTemporal?

It is published by francofuji. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.