Skip to main content
Glama

Collect the API key

finish_signup

No key needed. Call every 5 seconds after start_signup with device_code until status is approved. The key is returned exactly once: store it as an environment variable, never in a repository or a chat.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "device_code": "<device_code>"
    },
    "name": "finish_signup"
  }
}

Input Schema

NameRequiredDescriptionDefault
device_codeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior5/5

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

Annotations only declare the generic safety profile (readOnly=false, destructive=false, idempotent=false, openWorld=false); the description adds the categories that matter here: no auth required ('No key needed'), a polling rate limit (5 seconds), and one-shot secret semantics ('returned exactly once'). It also states the required handling of the result (environment variable, never a repository or chat), which is behavioral guidance not present in any structured field.

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

Conciseness4/5

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

Three tight sentences with no filler, and the operational sequence is front-loaded before the storage advice. The lead sentence ('No key needed') addresses auth rather than purpose, which slightly delays the front-loading an agent would prefer.

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 single-parameter tool with no output schema, the description covers sequencing, polling cadence, termination, and secret handling. It leaves open what a non-approved response looks like (status values, error vs. pending result), which an agent needs to interpret intermediate polls correctly.

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 description coverage is 0%, so the description must carry the one parameter, and it only names it ('with device_code') while the sentence 'after start_signup' weakly implies where the code comes from. It does not describe the code's format, lifetime, or error behavior if the code is wrong or expired, so compensation is partial.

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

Purpose4/5

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

The description never states a clean verb+resource sentence; purpose is inferred from 'The key is returned exactly once' plus the title 'Collect the API key'. It does differentiate from the sibling start_signup by naming it as the prerequisite, so an agent can place the tool in the flow 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?

Explicit trigger ('after start_signup with device_code'), explicit cadence ('every 5 seconds'), and explicit termination condition ('until status is approved') are all given. The prerequisite sibling is named, so no inference about ordering is required.

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