Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,562Letters: 14Defects: 1,336counted just now
teppi

Server definition

Hash
sha256:00ea43d00ae49d94fb177062e5685513bf0ce25ba270bea9444447d42ce8ac6a
What it is
What a remote MCP server returned when asked what it offers: 7 tools

The blob, as servednamed by its sha256

{ "instructions": "AgentSIM gives you authentication challenge tools for browser agents and controlled auth workflows.\nIt opens challenges (SMS OTP, email OTP, magic links, WebAuthn detect-and-halt), waits for verdicts,\nand releases sessions when finished.\n\nTypical workflow:\n1. Call `open_challenge` with a channel (sms_otp | email_otp | magic_link | webauthn_required).\n2. Trigger the challenge in your target service or controlled auth workflow.\n3. Call `wait_for_verdict` with the session_id — it blocks until the outcome arrives or times out.\n4. If the verdict is policy_denied or webauthn_required, stop — these are control-plane halts.\n5. Call `release_number` to return the allocation to the pool when done.\n\nSupported channels: sms_otp (programmable US numbers), email_otp (mock inject), magic_link (mock inject),\nwebauthn_required (detect-and-halt). Policy layer blocks third-party services by default; allow your\nstaging/development services through account policies. Check https://docs.agentsim.dev/policies-verdicts.\n\nLegacy aliases: `provision_number` → `open_challenge`, `wait_for_otp` → `wait_for_verdict`.\nAlways release the session when finished, even on error, to avoid wasting pool capacity.\n", "tools": [ { "description": "List all SMS messages received in this session without consuming the OTP.\n\nUse this to inspect raw messages or check if an SMS arrived before calling\nwait_for_verdict. Does NOT mark the OTP as consumed.", "inputSchema": { "additionalProperties": false, "properties": { "input": { "properties": { "session_id": { "description": "Session ID returned by open_challenge or provision_number.", "type": "string" } }, "required": [ "session_id" ], "type": "object" } }, "required": [ "input" ], "type": "object" }, "name": "get_messages", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "List active challenge sessions, optionally filtered by agent_id.\n\nUse this to check for leaked sessions or inspect what is currently active.", "inputSchema": { "additionalProperties": false, "properties": { "agent_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, "name": "list_numbers", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Open an authentication challenge session.\n\nSupports multiple channels: sms_otp (programmable US number), email_otp (mock inbox),\nmagic_link (mock inbox), and webauthn_required (detect-and-halt).\n\nReturns the challenge identifier (phone number or email address) and a session_id\nneeded for all subsequent calls. The session is reserved for ttl_seconds.\n\nNext step: use the returned identifier on your target service to trigger the challenge,\nthen call `wait_for_verdict` with the returned `session_id`.", "inputSchema": { "additionalProperties": false, "properties": { "input": { "properties": { "agent_id": { "description": "Unique identifier for the agent requesting the challenge (e.g. 'checkout-bot').", "type": "string" }, "channel": { "default": "sms_otp", "description": "Challenge channel: sms_otp | email_otp | magic_link | webauthn_required.", "type": "string" }, "country": { "default": "US", "description": "ISO 3166-1 alpha-2 country code (sms_otp only). Supported: US.", "type": "string" }, "service_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Optional URL of the target service for policy evaluation." }, "ttl_seconds": { "default": 3600, "description": "How long to hold the session (seconds). Default 1 hour.", "maximum": 86400, "minimum": 60, "type": "integer" }, "webhook_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Optional HTTPS URL to receive verdict via webhook instead of polling." } }, "required": [ "agent_id" ], "type": "object" } }, "required": [ "input" ], "type": "object" }, "name": "open_challenge", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Open an SMS challenge session (alias for open_challenge with channel=sms_otp).\n\nDEPRECATED: Use `open_challenge` with channel=\"sms_otp\" instead. This tool is kept\nfor backward compatibility with existing MCP clients.\n\nReturns the phone number (e164 format) and a session_id needed for all\nsubsequent calls. The session is reserved for ttl_seconds.\n\nNext step: use the returned `number` on an app you own to trigger the wall,\nthen call `wait_for_verdict` (or the `wait_for_otp` alias) with the `session_id`.", "inputSchema": { "additionalProperties": false, "properties": { "input": { "properties": { "agent_id": { "description": "Unique identifier for the agent requesting the number (e.g. 'checkout-bot').", "type": "string" }, "country": { "default": "US", "description": "ISO 3166-1 alpha-2 country code. Supported: US. More countries coming soon.", "type": "string" }, "ttl_seconds": { "default": 3600, "description": "How long to hold the number (seconds). Default 1 hour.", "maximum": 86400, "minimum": 60, "type": "integer" }, "webhook_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Optional HTTPS URL to receive OTP via webhook instead of polling." } }, "required": [ "agent_id" ], "type": "object" } }, "required": [ "input" ], "type": "object" }, "name": "provision_number", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Close a challenge session.\n\nAlways call this when you are done — even on error — so the session does\nnot keep consuming pool capacity.", "inputSchema": { "additionalProperties": false, "properties": { "input": { "properties": { "session_id": { "description": "Session ID returned by open_challenge or provision_number.", "type": "string" } }, "required": [ "session_id" ], "type": "object" } }, "required": [ "input" ], "type": "object" }, "name": "release_number", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Block until an SMS verdict arrives for this session (alias for wait_for_verdict).\n\nDEPRECATED: Use `wait_for_verdict` instead. This tool is kept for backward\ncompatibility with existing MCP clients.\n\nPolls the AgentSIM API for up to `timeout_seconds`. Returns the OTP code\nwhen the SMS challenge resolves.\n\nIf the verdict does not arrive in time, raises a ToolError with advice on retrying.\nAlways call `release_number` after you have used the verdict.", "inputSchema": { "additionalProperties": false, "properties": { "input": { "properties": { "auto_reroute": { "default": true, "description": "On timeout, automatically swap to a fresh number on the same session and return retry instructions.", "type": "boolean" }, "session_id": { "description": "Session ID returned by provision_number.", "type": "string" }, "timeout_seconds": { "default": 60, "description": "Maximum seconds to wait. Default 60.", "maximum": 120, "minimum": 1, "type": "integer" } }, "required": [ "session_id" ], "type": "object" } }, "required": [ "input" ], "type": "object" }, "name": "wait_for_otp", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Block until a challenge verdict arrives for this session.\n\nPolls the AgentSIM API for up to `timeout_seconds`. Returns the structured verdict,\nwhich may include:\n- otp_code: the parsed OTP (for sms_otp, email_otp channels)\n- magic_link: the extracted HTTPS URL (for magic_link channel)\n- webauthn_required: true if WebAuthn/passkey was detected (detect-and-halt)\n- policy_denied: true if the service_url is blocked by account policy\n\nAlways call `release_number` after processing the verdict.", "inputSchema": { "additionalProperties": false, "properties": { "input": { "properties": { "session_id": { "description": "Session ID returned by open_challenge.", "type": "string" }, "timeout_seconds": { "default": 60, "description": "Maximum seconds to wait. Default 60.", "maximum": 120, "minimum": 1, "type": "integer" } }, "required": [ "session_id" ], "type": "object" } }, "required": [ "input" ], "type": "object" }, "name": "wait_for_verdict", "outputSchema": { "additionalProperties": true, "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:00ea43d00ae49d94fb177062e5685513bf0ce25ba270bea9444447d42ce8ac6a | sha256sum