pypi uncorreotemporal-mcpstdioMITupdated 4mo ago
MCP server for UnCorreoTemporal, focused on autonomous signup and email verification workflows.
Was kannst du mit UnCorreoTemporal machen?

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_inboxwait_for_verification_emailget_latest_emailextract_otp_codeextract_verification_linkcomplete_signup_flow
New v1 tool: complete_signup_flow
Runs:
- create inbox
- wait verification email
- 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"]
}
extract_verification_link(message_text? | inbox_id+message_id, preferred_domains?)
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,stdioby default; also supportsstreamable-httpandsse)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.pyopenai_agent_signup.pylangchain_agent_signup.pyagent_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_mailboxlist_mailboxesget_messagesread_messagedelete_mailbox
Migration map:
create_mailbox->create_signup_inboxget_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
Installation
UnCorreoTemporal zu deinem Client hinzufügen. Wähl den, den du nutzt.
claude mcp add uncorreotemporal-mcp -- uvx uncorreotemporal-mcpcodex mcp add uncorreotemporal-mcp -- uvx uncorreotemporal-mcpamp mcp add uncorreotemporal-mcp -- uvx uncorreotemporal-mcp{
"mcpServers": {
"uncorreotemporal-mcp": {
"command": "uvx",
"args": [
"uncorreotemporal-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"uncorreotemporal-mcp": {
"command": "uvx",
"args": [
"uncorreotemporal-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"uncorreotemporal-mcp","command":"uvx","args":["uncorreotemporal-mcp"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"uncorreotemporal-mcp": {
"command": "uvx",
"args": [
"uncorreotemporal-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"uncorreotemporal-mcp": {
"command": "uvx",
"args": [
"uncorreotemporal-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"uncorreotemporal-mcp": {
"command": "uvx",
"args": [
"uncorreotemporal-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"uncorreotemporal-mcp": {
"type": "local",
"command": "uvx",
"args": [
"uncorreotemporal-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"uncorreotemporal-mcp": {
"command": {
"path": "uvx",
"args": [
"uncorreotemporal-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
uvx uncorreotemporal-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
39 / 100
Unvollständig
- Dokumentation25/25
- Pflege13/25
- Vertrauen13/20
- Funktionsumfang0/15
- Installation12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 135 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Versionsverlauf
| Versionen | Veröffentlicht |
|---|---|
| 0.1.1Aktuell | 19. Apr. 2026 |