Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,547Letters: 14Defects: 1,324counted 4 min ago
teppi

Server definition

Hash
sha256:789736ef866265159caeaf7e242fb6d863479426afb067e569ae96a710ad8685
What it is
What a remote MCP server returned when asked what it offers: 8 tools

The blob, as servednamed by its sha256

{ "instructions": "Email sending and receiving for agents. Free, and you can open an account\nyourself: call create_account first, which needs no credentials, then send\nthe API key it returns as `Authorization: Bearer <key>` on every later\ncall.\n\nThe usual path is create_account, add_domain, publish the DNS records it\ngives you, verify_domain, then send_email. Use test_mode on the first send\nto check the request shape without spending the daily allowance.\n", "tools": [ { "description": "Register a domain to send from, and get the DNS records that must be published before it will work. Publishing DNS usually needs a human with registrar access, so start this early. The domain cannot send until verify_domain succeeds.", "inputSchema": { "properties": { "name": { "description": "A bare domain such as mail.yourcompany.com. A subdomain is better than the root.", "type": "string" } }, "required": [ "name" ], "type": "object" }, "name": "add_domain", "outputSchema": null }, { "description": "Create an account on this email service and get an API key back. Needs no existing credentials, so an agent with nothing can call this first. The key is returned once and never again. Free, with no card and no trial clock.", "inputSchema": { "properties": { "email": { "description": "A contact address for the account.", "type": "string" }, "name": { "description": "Optional display name.", "type": "string" }, "password": { "description": "At least 12 characters. Needed only to sign in to the web console.", "type": "string" } }, "required": [ "email", "password" ], "type": "object" }, "name": "create_account", "outputSchema": null }, { "description": "What happened to messages on this domain: accepted, delivered, failed, and so on. A send returning success means queued, not delivered; this is where the delivery outcome actually appears.", "inputSchema": { "properties": { "domain": { "type": "string" }, "event": { "description": "Filter to one type, such as delivered or failed.", "type": "string" }, "limit": { "type": "integer" }, "recipient": { "type": "string" } }, "required": [ "domain" ], "type": "object" }, "name": "get_delivery_events", "outputSchema": null }, { "description": "How much this domain may send today and what graduates it to the next rung, plus this account's standing: how many domains it may hold and whether sending is paused. New domains start at a low daily cap and climb as they prove themselves, so check this before planning a bulk send rather than discovering it part-way. Call it with no domain for the account-level answer alone.", "inputSchema": { "properties": { "domain": { "description": "Optional. Omit for account limits without a domain's allowance.", "type": "string" } }, "type": "object" }, "name": "get_sending_limits", "outputSchema": null }, { "description": "List the sending domains on this account, with their verification state and how much of today's sending allowance each has left.", "inputSchema": { "properties": {}, "type": "object" }, "name": "list_domains", "outputSchema": null }, { "description": "Recent messages for a domain, sent and received. Use direction to filter, and folder to separate inbox from spam on received mail.", "inputSchema": { "properties": { "direction": { "enum": [ "outbound", "inbound" ], "type": "string" }, "domain": { "type": "string" }, "folder": { "enum": [ "inbox", "spam" ], "type": "string" }, "limit": { "description": "Up to 100. Defaults to 25.", "type": "integer" } }, "required": [ "domain" ], "type": "object" }, "name": "list_messages", "outputSchema": null }, { "description": "Send a message. The domain must be verified and the from address must belong to it. Counts one against the daily allowance per recipient. Set test_mode true to run the whole pipeline, including content screening, without sending anything and without spending allowance — do that first when building.", "inputSchema": { "properties": { "domain": { "description": "The verified domain to send from.", "type": "string" }, "from": { "description": "An address at that domain.", "type": "string" }, "html": { "description": "Optional HTML body.", "type": "string" }, "subject": { "type": "string" }, "test_mode": { "description": "Accept and screen the message but send nothing. Defaults to false.", "type": "boolean" }, "text": { "description": "Plain text body.", "type": "string" }, "to": { "description": "One address, or several separated by commas.", "type": "string" } }, "required": [ "domain", "from", "to" ], "type": "object" }, "name": "send_email", "outputSchema": null }, { "description": "Re-read DNS now and mark the domain active if its SPF and DKIM records are visible. DNS takes minutes to hours to propagate; poll this every few minutes, not every few seconds.", "inputSchema": { "properties": { "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "name": "verify_domain", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:789736ef866265159caeaf7e242fb6d863479426afb067e569ae96a710ad8685 | sha256sum