Skip to main content
Glama

Set handle

set_handle
Idempotent

Sets the user's handle, which the URLs of their listings start with.

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": {
      "input": "<input>",
      "id": "<id>",
      "context": "<context>"
    },
    "name": "set_handle"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYes
inputYes
contextYesExplain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. Never include personal data, such as names, email addresses or message text; refer to people by role, such as "the user" or "a buyer".

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / context
      Added value: +{
      +  "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. Never include personal data, such as names, email addresses or message text; refer to people by role, such as \"the user\" or \"a buyer\".",
      +  "type": "string"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "input",
      -  "id"
      -]New value: +[
      +  "input",
      +  "id",
      +  "context"
      +]
  2. First observed

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds only that handles feed into listing URLs, but omits the questions that matter for this mutation: whether changing the handle breaks existing listing links, validation/normalization rules, uniqueness conflicts, or permission requirements.

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 front-loaded sentence with no filler; the verb and the resource come first and the explanatory clause adds real meaning rather than restating the name.

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

Completeness3/5

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

For a simple setter with decent annotation coverage and no output schema, the description covers the what and the why of the handle. However, with a nested input object, an undocumented id parameter, and no output schema, it leaves the agent without validation behavior, conflict handling, or side effects on existing listings.

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

Parameters2/5

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

Schema description coverage is low at 33%: input.handle and context are documented in the schema, but id has only a uuid format with no explanation. The description partially compensates by implying id is the user whose handle is set and by clarifying that handle is the "name in URLs, as a seller," but it says nothing about accepted format, length, or case rules for the handle value.

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 gives a specific verb and resource ("Sets the user's handle") and adds a concrete effect: the handle is the prefix of the user's listing URLs. That is enough for an agent to know it is a profile-level setter rather than a listing mutation. It does not name or contrast any sibling, so it falls short of a 5.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no preconditions (e.g. handle availability, allowed characters, whether it must be unique), and no mention of what happens when a handle already exists. The agent must infer everything about invocation context from the one sentence.

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