Skip to main content
Glama

4chems Platform — IUCLID, CHESAR & QSAR Toolbox hosting

Start Device Login

start_device_login

Sign in to an existing account by device login (UC-091, RFC 8628). Anonymous, empty body; the account must exist (start_account_registration, then set the password through the emailed link). Show verification_uri (or verification_uri_complete) and user_code to the human, who signs in there, then call verify_device_login with challenge_id, waiting interval seconds between calls. The response never contains the Keycloak device_code or the agent client secret.

Input Schema

NameRequiredDescriptionDefault
authorizationNo

Output Schema

NameRequiredDescriptionDefault
intervalYes
user_codeYes
expires_inYes
challenge_idYes
verification_uriYes
verification_uri_completeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=false) by disclosing that the call is anonymous, that it initiates an interactive human step, and critically that the response never exposes the Keycloak device_code or the agent client secret. That security-relevant non-disclosure is exactly the context annotations cannot carry.

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?

A single dense paragraph that is front-loaded with the operation, then prerequisites, then the human-in-the-loop handoff and polling loop. Every clause adds actionable information; nothing is decorative.

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

Completeness5/5

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

An output schema exists, so return-value detail is correctly omitted, yet the description still tells the agent which response fields to surface to the human and which to expect on the follow-up call. The full interactive flow is covered.

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

Parameters3/5

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

Schema coverage is 0% and the single 'authorization' parameter with default "" is never named or explained. The description does characterize the call as 'Anonymous, empty body', which implies the auth parameter is unused, but that inference is left to the agent rather than stated.

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 ('Sign in to an existing account by device login') and anchors it to a named standard (RFC 8628), which immediately separates it from siblings like start_account_registration and verify_device_login. An agent can tell exactly what this does without opening the schema.

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?

Gives explicit prerequisites ('the account must exist... start_account_registration, then set the password through the emailed link'), names the follow-up tool (verify_device_login with challenge_id), and specifies the polling cadence ('waiting interval seconds between calls'). Both when-to-use and how-to-proceed are spelled out.

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.