Skip to main content
Glama

Request email OTP

requestOtp

Public: email a one-time login/registration code to email (optionally scoped by tenant_code). Always 200 {message:"code sent"} on success. Local/dev deployments with expose_dev_otp may echo the code as dev_otp — treat that as a secret. Then call login with provider: email_otp, the same email, and the otp. Intentional for harnesses that cannot SIWE; SIWE remains the preferred dedicated-agent path. Do not log the code, dev_otp, or tenant_code. Do not paste an end-user OTP into an untrusted chat.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyYesJSON request body.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey a non-read, non-idempotent external action, but the description adds important behavior: always returns 200 on success, may return dev_otp in dev deployments, and warns to treat codes as secrets. It could mention failure or rate-limit behavior, but the added context is substantial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Packs purpose, response shape, dev-mode caveat, follow-up call, and security warnings into a compact block with the key behavior front-loaded. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema, it covers the success response, special dev_otp response, follow-on login call, and security constraints. It does not describe error responses, but the essential calling context is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema only describes the body container, so the description adds real meaning: email is the recipient and tenant_code optionally scopes the request. It does not fully define tenant_code semantics, but it compensates for the sparse schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: emails a one-time login/registration code to an email address. It is clearly distinguished from sibling requestSms by channel and from login/register by its role in the flow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says it is intended for harnesses that cannot SIWE, names SIWE as the preferred dedicated-agent path, and directs the agent to call login with email_otp afterward. This gives a concrete when-to-use and next-step.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources