An inbox from your terminal.

No browser, login or MCP setup is needed. Use curl with jq below, or Python's standard library. Send a test message from an app you control; these examples send no mail.

curl + jq

set +x
box=$(curl --fail --silent --show-error --max-time 15 'https://mailbyget.com/v1/mail/new?ttl_seconds=3600')
id=$(printf '%s' "$box" | jq -r .id)
token=$(printf '%s' "$box" | jq -r .read_token)
printf '%s' "$box" | jq '{address, expires_at}'

# Send your test email to the address, then read the inbox:
printf 'Authorization: Bearer %s\n' "$token" | \
  curl --fail --silent --show-error --max-time 15 -H @- \
  "https://mailbyget.com/v1/mail/inbox/$id"

# Replace MESSAGE_ID with an id returned by the inbox:
printf 'Authorization: Bearer %s\n' "$token" | \
  curl --fail --silent --show-error --max-time 15 -H @- \
  'https://mailbyget.com/v1/mail/message/MESSAGE_ID'

Python: no extra packages

import json
from urllib.request import Request, urlopen

origin = "https://mailbyget.com"
def get(path, token=None):
    headers = {"Authorization": "Bearer " + token} if token else {}
    with urlopen(Request(origin + path, headers=headers), timeout=15) as response:
        return json.load(response)

box = get("/v1/mail/new?ttl_seconds=3600")
print(box["address"])
# Send your test email to this address, then run:
inbox = get("/v1/mail/inbox/" + box["id"], box["read_token"])
for summary in inbox["messages"]:
    message = get("/v1/mail/message/" + summary["id"], box["read_token"])
    print(message["body_text"])

Keep the token private. Do not enable shell tracing or log the creation response. Wait between polls and stop when the inbox expires.