Inbin agent email

dev.inbinPublished by inbin.devOfficial publisherv0.3.1Updated Nov 7, 2026

Email for AI agents you can trust: disposable inboxes, verification codes, checked mail, held sends.

VerifiedStreamable HTTPWeb executableDeveloper ToolsCommunication & Collaboration

Overview

AI-generated overview

Gives an assistant a disposable email inbox and reads its verification code or confirmation link, with no account needed for the five trial tools.

What you can do
  • Create a trial inbox and get a disposable email address immediately
  • Wait up to 60 seconds for the verification code or confirmation link sent to that address
  • Start claiming an inbox so a person can keep the same address, then wait for and check the claim status
  • With an API key, list inboxes, list, search, get and query email events, and describe the extraction schema
When to use it
Useful when an assistant must sign up for a service or pass an email verification step and needs an address plus the incoming code, or when a person wants to keep that address and connect an agent to it permanently.
Requirements
Remote endpoint at api.inbin.dev over streamable HTTP; the five trial tools need no account or key. Other tools need an Inbin API key sent as an Authorization Bearer header (or INBIN_API_KEY for the npx stdio wrapper). Network access required.
Before you install
The trial inbox only receives mail and expires after 14 days. Claiming an address is permanent and ties it to an agent connection. With a key, tools read inbox and event data from your Inbin app. The API key is a secret; keep it out of shared configs.

Installation

In SourceWeft

  1. Open Inbin agent email in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/dev.inbin%2Fagent-email/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "inbin-agent-email": {
      "type": "http",
      "url": "https://api.inbin.dev/mcp"
    }
  }
}

README

@inbin/mcp

A minimal stdio-to-HTTP proxy for Inbin's Model Context Protocol surface. Lets stdio-only MCP clients (Claude Desktop, some Cursor builds, Zed, Cline) talk to Inbin's remote endpoint at https://api.inbin.dev/mcp.

Install & run

Nothing to install globally. Your MCP client invokes it via npx:

json
{  "mcpServers": {    "inbin": {      "command": "npx",      "args": ["-y", "@inbin/mcp"],      "env": {        "INBIN_API_KEY": "ink_live_..."      }    }  }}

Get an API key from https://inbin.dev/dashboard.

No account yet?

Over the remote endpoint (below) five tools need no key at all. An agent can create an inbox, use its address, and wait for a verification code:

  1. create_trial_inbox returns an inbox_address at once (it expires after 14 days).
  2. Use that address wherever a confirmation must be sent.
  3. await_trial_inbox with that exact inbox_address waits up to 60 seconds for the code or link. Call it again if it returns expired.
  4. claim_trial_inbox returns a link for a person to keep the address, and await_trial_inbox_claim and claim_connection_status follow that claim.

This stdio wrapper always sends a key, so it is for the key tools. For the no-account tools connect straight to https://api.inbin.dev/mcp with no header. A runnable walkthrough: https://inbin.dev/guides/ai-agent-email-address-verification-codes

What it does

  • Forwards each stdin JSON-RPC message to https://api.inbin.dev/mcp as an HTTPS POST with your Bearer key.
  • Streams the response back to stdout.
  • Notifications (messages with no id) get no reply, per JSON-RPC.
  • Concurrent in-flight requests are supported.

Tools exposed

Every Inbin application is an MCP server. With a key, the tools include (ask tools/list for the full set):

  • list_inboxes: enumerate inboxes in your app
  • list_events: filter by inbox / status / since; paginated
  • search_events: substring search over id / subject / from / to
  • get_event: a single event's parsed JSON + delivery history
  • query_events: filter, sort, group and aggregate over extracted records (your inbox as a table)
  • describe_schema: the current extraction schema

Environment

VariableRequiredDescription
INBIN_API_KEYyesyour Inbin API key
INBIN_MCP_URLnooverride the endpoint (defaults to production)
INBIN_MCP_DEBUGnoset to 1 for stderr logs

Remote (recommended)

If your MCP client supports Streamable HTTP transport, skip this wrapper entirely and connect directly. Without a header you get the five no-account tools; with a key you get everything:

json
{  "mcpServers": {    "inbin": {      "url": "https://api.inbin.dev/mcp",      "headers": {        "Authorization": "Bearer ink_live_..."      }    }  }}

License

MIT.

Source: README.md at commit f085773

Tools

5

create_trial_inbox

Create a no-signup trial inbox

Get a disposable email address (a temporary inbox) for a signup or verification code, with NO Inbin account required at all -- usable before the human has signed up for anything. Returns the inbox address IMMEDIATELY; it does not wait for anything. Use the address to sign up wherever you need a confirmation sent, THEN call await_trial_inbox with that same address to block for the confirmation -- calling this alone does not get you a confirmation. This inbox is NOT tied to any account yet and expires automatically within about two weeks regardless of use. If the human wants to keep using this SAME address permanently, call claim_trial_inbox: no dashboard visit, no key to copy, and more than one agent can independently connect to the same address over time this way.

Parameterspurpose_label

await_trial_inbox

Wait for a trial inbox's confirmation

Wait for the verification code or confirmation link email on a trial inbox: block (up to ttl_seconds, max 60) for the one confirmation email on a trial inbox created by create_trial_inbox. Pass the exact inbox_address that call returned. The inbox does NOT self-delete or become unusable after a match: it keeps receiving mail and can still be claimed afterward (call claim_trial_inbox any time before it expires) if the human wants to keep using the same address. Call this AFTER you have actually used the address somewhere (signed up, requested a code) -- calling it before that will just expire, since there is nothing to wait for yet. 60 seconds is a hard per-call ceiling, not the inbox's total lifetime: a sender that takes longer than that is not a failure, just call this again with the same inbox_address to keep waiting (the inbox stays valid for its full ~2-week expiry, and you can call this again later too, e.g. to catch a second, later email on the same address). Only treat expired as final once you've retried a few times.

Parametersttl_secondsinbox_addressrequiredexpected_sender

claim_trial_inbox

Connect an agent to this inbox, permanently

Start connecting an agent to this inbox address, permanently -- the SAME address. Works whether this is a brand-new trial inbox OR one that's already been claimed by a different agent before: more than one agent can independently connect to the same inbox, each getting its own separate, revocable connection. Returns a claim_url immediately -- share it in chat right away. The human clicks it, enters their email, enters the one-time code Inbin sends there, and a credential is ISSUED. That is NOT the same as the connection working yet -- the human still has to install that credential into an MCP client's config before anything can actually use it, and you will never see the credential itself, by design. Call await_trial_inbox_claim afterward to see the human finish the email+code step, then claim_connection_status (repeatedly, possibly much later -- installing a client is not instant) to see whether a client has actually started using it. The inbox must still exist (not yet expired) for this to work; it does not need to still be a TRIAL inbox specifically.

Parametersinbox_addressrequiredconnector_label

await_trial_inbox_claim

Wait for the claim page to be finished

Block (up to ttl_seconds, max 60) for a human to finish the EMAIL+CODE step on the claim_url page from claim_trial_inbox. This NEVER returns a credential, at any status. It returns one of three honest states, not a single 'connected': "claim_pending" (nobody has entered the code yet -- keep waiting or call again), "claimed" (the human proved ownership and a credential was ISSUED, but nothing has used it yet -- a client still needs to be installed with the config from the claim page's 'Advanced' section before anything works), or "client_installed" (some client has actually authenticated with the connection at least once -- a real, observed signal, not an assumption). Each response includes a next_action field telling you exactly what to say or do -- follow it literally rather than guessing. "claimed" is NOT success: do not tell the human it's working until you see "client_installed", and even then, verify it yourself (call list_inboxes or similar through the new connection and read the actual result) before claiming it works for you specifically -- call claim_connection_status later if you need to check again after this chat session, since installing a client can take arbitrarily long and this tool only blocks up to 60s.

Parametersclaim_tokenrequiredttl_seconds

claim_connection_status

Check a connection's real status

Read-only, non-blocking check of exactly which state a claim_trial_inbox connection is in RIGHT NOW: "claim_pending", "claimed" (credential issued, unused), or "client_installed" (a client has actually authenticated with it at least once -- real, observed). Never returns a credential. Use this instead of await_trial_inbox_claim when you want to check progress WITHOUT blocking, especially much later than the original chat session -- installing a client into its own config is a human action with no fixed timeline, so polling this occasionally (not in a tight loop) is the right way to check back. Each response includes a next_action field telling you exactly what to say or do.

Parametersclaim_tokenrequired

Version history

1
  1. v0.3.1LatestNov 7, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Inbin integrations