Skip to main content
Glama

list_client

Read-onlyIdempotent

List online devices belonging to the token, with their identifiers and metadata. After create_client generates connection instructions, you MUST pass the returned control_token as client_token and set wait_ms=300000 to check whether a device connects, with a 300-second timeout. A positive wait_ms waits while no device is online; any online device completes the wait immediately. An empty array means no device was online when the call returned; after the 300-second wait, report that the connection check timed out. Invalid, expired or revoked tokens cannot be used for further waits.

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": {
      "client_token": "<client_token>"
    },
    "name": "list_client"
  }
}

Input Schema

NameRequiredDescriptionDefault
wait_msNoMaximum connection wait in milliseconds while no device is online, 0–300000. After generating connection instructions, you MUST set this to 300000 (300-second timeout). 0 returns a snapshot immediately.
client_tokenYesControl credential in token:key format, required with management access (including stdio and no-password mode). Scoped control bearer access implicitly selects its own token.

Output Schema

NameRequiredDescriptionDefault
clientsYesOnline devices owned by this token; an empty array means none are currently online.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive), and the description adds real behavior the annotations cannot: positive wait_ms blocks only while no device is online, any online device completes the wait immediately, an empty array is a snapshot-at-return, and invalid/expired/revoked tokens cannot be reused for further waits.

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?

Front-loaded with purpose, then workflow, then wait semantics and failure reporting. The 300-second/300000 constant is restated across description and schema, which is mild redundancy but justified given the MUST requirement.

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?

For a two-parameter read with an output schema, this is fully specified: when to call it, how to set wait_ms, how to interpret an empty array, and what to report on timeout. Nothing an agent needs to invoke it correctly is missing.

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?

Schema coverage is 100%, so the baseline is 3, but the description goes beyond it by explaining the provenance of client_token (the control_token returned by create_client) and the semantics of the wait window (positive value waits while nothing is online, 0 is an immediate snapshot).

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 ('List online devices belonging to the token') plus what is returned ('identifiers and metadata'), and names create_client as the predecessor step, so the agent can place it in the workflow without opening a 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?

Explicitly prescribes the post-create_client flow: pass the returned control_token as client_token and set wait_ms=300000. It also states the snapshot case (wait_ms=0 in the schema) and what to do on an empty array, leaving little to inference.

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