Skip to main content
Glama
hcloud MCP Server

hcloud MCP Server

by binrogithub

hcloud-mcp-server

An MCP (Model Context Protocol) server that exposes Huawei Cloud infrastructure through 150 structured tools plus a generic hcloud_cli catch-all — for AI assistants to discover and manage Huawei Cloud resources.

150 tools · 34 services · 1 server — ECS, VPC, CCE, RDS, VPN, OBS, IAM, and 27 more.

How It Works

The server registers 150 tools: 149 structured read-only tools for infrastructure discovery + 1 generic hcloud_cli for write operations and anything not covered by structured tools.

hcloud_list_servers(region="la-north-2")           → structured tool, type-safe
hcloud_list_vpn_gateways(region="la-north-2")      → new VPN v5 tools
hcloud_list_drs_jobs(region="la-north-2")           → new DRS tools
hcloud_cli("IAM CreateCustomPolicy --name=...")    → generic CLI for writes

Structured tools provide type-safe parameters, JSON schema validation, and MCP annotations (readOnlyHint=True). The generic hcloud_cli handles write operations with a safety layer (dry-run by default, confirm=true for execution).

Related MCP server: Huawei MCP Server

Features

  • 150 tools — 149 structured read-only + 1 generic CLI catch-all

  • 35 services covered — ECS, VPC, EIP, EVS, IAM, ELB, RDS, CCE, AS, OBS, DNS, KMS, CES, IMS, NAT, DCS, DDS, SMN, VPN, DRS, SWR, OMS, SMS, CBR, CCI, MRS, DWS, GaussDB, ER, CFW, CodeArts, DataArts, Organizations, LTS, BSS

  • MCP annotations — readOnlyHint=True on structured tools, destructiveHint=True on hcloud_cli, title on all tools

  • Output truncation — large responses truncated to 50KB with pagination hint

  • Safety layer — destructive operations require confirm=true; default is dry-run mode

  • Help deduplication — older API versions hidden from --help output

  • Configurable — timeout, binary path, safety settings

Requirements

Install KooCLI

curl -LO https://ap-southeast-3-hwcloudcli.obs.ap-southeast-3.myhuaweicloud.com/cli/latest/huaweicloud-cli-linux-amd64.tar.gz
tar xzf huaweicloud-cli-linux-amd64.tar.gz
sudo mv hcloud /usr/local/bin/
hcloud --version

Configure credentials

hcloud configure set --cli-mode=AKSK --cli-region=la-north-2 --cli-agree-privacy-statement=true
hcloud configure set --cli-access-key=YOUR_AK --cli-secret-key=YOUR_SK
hcloud configure set --cli-region=la-north-2
echo y | hcloud IAM ListCustomPolicies   # verify (first run needs privacy agreement)

Get your AK/SK from the Huawei Cloud console: My Credentials → Access Keys.

Installation

git clone https://github.com/binrogithub/hcloud-mcp-server.git
cd hcloud-mcp-server
pip install --upgrade pip setuptools   # needed on older systems (e.g. Ubuntu 22.04)
pip install .

Option B: From source tarball

curl -LO http://huaweilatam.com/downloads/hcloud-mcp-server.tar.gz
tar xzf hcloud-mcp-server.tar.gz
cd hcloud-mcp-server
pip install --upgrade pip setuptools   # needed on older systems (e.g. Ubuntu 22.04)
pip install .

Verify

hcloud-mcp --help

Running

# Start the MCP server (stdio transport)
hcloud-mcp

# With a config file
hcloud-mcp --config /path/to/config.json

# With debug logging
hcloud-mcp --debug

Configuration

Config file

Create a JSON config file (see config.example.json):

{
  "execution": {
    "timeout_seconds": 30,
    "cli_output": "json",
    "hcloud_binary": "hcloud"
  }
}

Environment variables

Variable

Description

HCLOUD_MCP_CONFIG

Path to config JSON file

Tool Reference

hcloud_cli

Parameter

Type

Required

Description

command

string

Yes

hcloud CLI arguments (everything after hcloud)

confirm

boolean

No

Set true to execute destructive operations (default: false = dry-run)

Navigation flow:

  1. command="--help" — list all available services

  2. command="<Service> --help" — list operations for a service

  3. command="<Service> <Operation> --help" — show parameters and descriptions

  4. command="<Service> <Operation> --param1=value1" — execute the operation

Parameter format: Always use --param=value (equals sign required by hcloud).

Safety: Operations containing Delete, Remove, Revoke, Detach, Disassociate, Cancel, or Force are classified as destructive. Without confirm=true, they run with --dryrun first.

Adding to AI Tools

The hcloud MCP server uses standard stdio transport, compatible with any MCP client.

opencode

Add to ~/.opencode/opencode.json:

{
  "mcp": {
    "hcloud": {
      "type": "local",
      "command": ["hcloud-mcp"],
      "enabled": true
    }
  }
}

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "hcloud": {
      "command": "hcloud-mcp",
      "args": []
    }
  }
}

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "hcloud": {
      "command": "hcloud-mcp",
      "args": []
    }
  }
}

VS Code (GitHub Copilot)

Add to .vscode/mcp.json:

{
  "servers": {
    "hcloud": {
      "type": "stdio",
      "command": "hcloud-mcp",
      "args": []
    }
  }
}

Windsurf

Add to ~/.windsurf/mcp.json:

{
  "mcpServers": {
    "hcloud": {
      "command": "hcloud-mcp",
      "args": []
    }
  }
}

Goose

Add to ~/.config/goose/config.yaml:

extensions:
  hcloud:
    type: stdio
    command: hcloud-mcp
    args: []

Any MCP Client (generic)

Setting

Value

Command

hcloud-mcp

Args

[]

Transport

stdio

Example AI Session

User: How many custom IAM policies do I have?

AI: Let me check your IAM policies.

→ hcloud_cli(command="--help")
  [sees IAM in the service list]

→ hcloud_cli(command="IAM --help")
  [sees ListCustomPolicies in the operations list]

→ hcloud_cli(command="IAM ListCustomPolicies --help")
  [sees no required parameters]

→ hcloud_cli(command="IAM ListCustomPolicies")
  { "total_number": 2, "roles": [...] }

AI: You have 2 custom IAM policies.
User: Delete the policy with ID abc123

AI: This is a destructive operation. Let me run it in dry-run mode first.

→ hcloud_cli(command="IAM DeleteCustomPolicy --role_id=abc123")
  ⚠️ DRY RUN — no changes made.
  Set confirm=true to execute for real.

→ hcloud_cli(command="IAM DeleteCustomPolicy --role_id=abc123", confirm=true)
  ✅ Executed (confirmed destructive operation):
  { "message": "Delete success" }

AI: The policy has been deleted.

Development

# Install in editable mode
pip install -e .

# Run tests
pytest tests/ -v

# Run with debug logging
hcloud-mcp --debug

Troubleshooting

Server fails to start:

  • Ensure hcloud is installed and in PATH: which hcloud

  • Verify auth: hcloud IAM ListCustomPolicies

Tool calls return errors:

  • Check hcloud profile: hcloud configure list

  • Enable debug logging: hcloud-mcp --debug

AI doesn't know how to use the tool:

  • The tool description includes navigation instructions

  • Remind the AI: "Use hcloud_cli with --help to discover operations"

Available Tools

150 tools
hcloud_cliHuawei Cloud CLI (generic)A
Destructive

Huawei Cloud CLI (hcloud) terminal interface.

Navigate the CLI using --help to discover operations and parameters:

  1. --help — list all available services

  2. <Service> --help — list operations for a service (e.g., IAM --help)

  3. <Service> <Operation> --help — show parameters for an operation (e.g., IAM ListCustomPolicies --help)

  4. <Service> <Operation> --param1=value1 --param2=value2 — execute an operation

The parameter format is always --param=value (equals sign required). JSON output is forced automatically (--cli-output=json).

For destructive operations (Delete, Remove, Revoke, Detach, etc.), set confirm=true to execute. Without confirmation, the command runs in --dryrun mode first.

OBS (Object Storage Service) uses obsutil with a different format:

  1. obs help — list all OBS commands

  2. obs help <command> — show help for a specific command (e.g., obs help ls)

  3. obs <command> [args...] [options...] — execute an OBS command

  4. Use --cli-region=<region> to specify the region (translated to the OBS endpoint automatically)

  5. OBS output is plain text (not JSON)

  6. For OBS destructive commands that support dry-run (cp, mv, sync), the command runs with -dryRun unless confirmed

  7. For OBS destructive commands without dry-run support (rm, abort, mb, chattri, bucketpolicy, lifecycle), you must set confirm=true to execute

NameRequiredDescriptionDefault
commandYeshcloud CLI arguments (everything after 'hcloud'). Examples: '--help', 'IAM --help', 'IAM ListCustomPolicies --help', 'IAM ListCustomPolicies', 'IAM DeleteCustomPolicy --role_id=abc123', 'obs help', 'obs help ls', 'obs ls --cli-region=la-north-2', 'obs rm obs://bucket/key'
confirmNoSet to true to execute destructive operations. If false (default), destructive commands run in --dryrun mode (or are refused for OBS commands without dry-run support).

TDQS

A4/5.0
Behavior5/5

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

Beyond the openWorldHint/destructiveHint annotations, the description discloses concrete behavior: JSON output forced via `--cli-output=json`, destructive verbs listed explicitly (Delete, Remove, Revoke, Detach), dry-run-by-default with confirm=true to execute, OBS plain-text output, and the split between OBS commands supporting `-dryRun` (cp, mv, sync) versus those refused without confirmation (rm, abort, mb, chattri, bucketpolicy, lifecycle). This is substantial context an agent cannot get from annotations alone.

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?

The description is long but front-loaded and structured: a one-line identity, then two numbered discovery/execution ladders, then a short destructive-behavior paragraph. Every section carries operational content; the enumerations of destructive OBS commands and verbs are dense but earn their space by defining confirmation requirements.

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?

With no output schema, the description correctly compensates by stating that CLI output is forced to JSON while OBS output is plain text. It also covers confirmation semantics for both subsystems. Remaining gaps are the routing question against specialized siblings and any statement about output size, pagination, or error surface for arbitrary CLI calls.

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 adds genuine meaning: the parameter format is always `--param=value` with an equals sign required, `--cli-region` is translated into an OBS endpoint automatically, and confirm=false triggers `--dryrun` rather than a plain refusal for most commands. These format and translation rules are not derivable from the two-parameter schema alone.

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 names a specific resource and mechanism: a generic `hcloud`/`obs` CLI passthrough with a documented `--help` discovery ladder and `--param=value` execution form. It is clear what the tool does, but it never contrasts itself with the ~130 purpose-built `hcloud_list_*`/`hcloud_show_*` siblings, so an agent cannot tell from this text why it should pick the generic CLI over a dedicated tool.

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

Usage Guidelines3/5

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

It gives excellent *how* guidance (four-step help discovery, OBS equivalent, required equals-sign syntax) and states the confirmation rule for destructive commands. What is missing is *when* guidance: nothing says this is the fallback for operations lacking a dedicated tool, nor when the specialized siblings should be preferred. Usage is only implied by the tool's generality.

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

hcloud_list_addon_instanceshcloud_list_addon_instancesA
Read-onlyIdempotent

List installed add-ons in a CCE cluster

NameRequiredDescriptionDefault
regionYesRegion
cluster_idYesCluster ID

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds only the distinction that these are 'installed' add-ons, not available ones, and that they belong to a CCE cluster. It does not disclose pagination, sorting, auth requirements, or return shape, so the extra context is modest.

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?

The definition is a single front-loaded sentence with zero filler. It states the action and scope immediately and contains no redundant or hedging language.

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 simple two-parameter list operation with full schema coverage and read-only annotations, the description is nearly complete. It could mention pagination or the shape of the listing, but no output schema exists and the tool complexity is low, so the remaining gap is minor.

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 100%, so the schema provides both required parameters. The description adds no meaning beyond that: it does not explain region or cluster_id semantics, and the schema descriptions are minimal ('Region', 'Cluster ID'). The baseline 3 applies when the schema carries the parameter documentation.

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 states a specific verb and resource: 'List installed add-ons in a CCE cluster.' It is clearly distinct from sibling tools about clusters, nodes, or node pools. It stops short of explicitly differentiating from a dedicated add-on listing alternative, which does not exist in the siblings, so a 4 rather than 5.

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

Usage Guidelines3/5

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

Usage is only implied by the resource scope: an agent would use this when it needs installed add-ons for a CCE cluster. There is no explicit when-to-use guidance, no exclusions, and no named alternative for related queries such as listing available add-ons.

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

hcloud_list_agencieshcloud_list_agenciesB
Read-onlyIdempotent

List IAM agencies (trust relationships)

NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds only a definition of the resource and says nothing about result volume, pagination, or whether listings span the whole account or a single domain/project.

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?

A single six-word fragment with the verb and resource front-loaded and zero filler. It is efficient, though the fragment form leaves room for one clarifying clause about scope.

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 zero-parameter read-only list tool with full annotation coverage, this is close to sufficient, and the 'trust relationships' gloss genuinely helps. What is missing is any hint of the listing scope (account vs. domain vs. project) or output shape, which matters in a catalog this large.

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 tool takes zero parameters, so the schema bears no explanatory burden and the description has no parameter semantics to compensate for. Baseline 4 applies.

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?

States a specific verb (List) and resource (IAM agencies), and the parenthetical 'trust relationships' disambiguates an otherwise obscure term. It does not, however, distinguish this from nearby IAM siblings such as hcloud_list_users, hcloud_list_groups, or hcloud_list_policies.

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 guidance on when to reach for this tool versus the many other IAM list tools in the sibling set, and no stated preconditions or scope. The agent must infer that 'agencies' are IAM identity-provider trust relationships on its own.

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

hcloud_list_alarm_ruleshcloud_list_alarm_rulesC
Read-onlyIdempotent

List CES alarm rules (v2 API, more complete)

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so safety behavior is covered. The description adds only that this hits the v2 API and returns 'more complete' data, with no word on pagination despite a limit parameter, result size, or ordering.

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?

A single short clause with no wasted words and the resource front-loaded. It is terse rather than padded, though the terseness borders on under-specification handled elsewhere.

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

Completeness2/5

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

For a list tool in a dense namespace with an obvious near-duplicate sibling (hcloud_list_alarms), the description does not give the agent enough to choose correctly or to predict result shape. The full schema and annotations carry most of the weight, but the sibling-disambiguation gap is significant.

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 100%, so both parameters (limit, region) are documented in the schema and the baseline is 3. The description adds no meaning about region scoping, pagination defaults, or what limit applies to, so it does not exceed that baseline.

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

Purpose3/5

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

The verb 'List' plus resource 'CES alarm rules' is specific enough to know what is returned, but the qualifier '(v2 API, more complete)' is ambiguous — it never says what it is more complete than, and there is a sibling hcloud_list_alarms whose relationship to this tool is left entirely implicit.

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 explicit when-to-use or when-not-to-use guidance. The parenthetical hint implies this is a newer/preferred listing, but an agent must infer whether to call this instead of hcloud_list_alarms, or whether both should be called.

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

hcloud_list_alarmshcloud_list_alarmsC
Read-onlyIdempotent

List CES (Cloud Eye) alarms

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. Beyond expanding 'CES' to 'Cloud Eye', the description adds nothing: it does not say whether results are region-scoped, whether alarm state/severity is included, or how pagination behaves with 'limit'.

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?

Four words, front-loaded with the verb and resource, with zero filler. It is efficient, though the brevity edges toward under-specification rather than crispness.

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 two-parameter read-only list tool with full schema coverage and annotations supplying the safety profile, an output schema is not needed and the core call path is intact. The remaining gap is disambiguation from hcloud_list_alarm_rules, which the description never addresses.

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 100%, so both 'region' and 'limit' are already documented in the schema, which sets the baseline at 3. The description adds no meaning beyond that, such as whether region is required for multi-region accounts or what the default limit is.

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

Purpose3/5

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

The description pairs a specific verb ('List') with a specific resource ('CES (Cloud Eye) alarms') and expands the acronym, so the object is identifiable. However, the sibling set contains hcloud_list_alarm_rules, and nothing here distinguishes an alarm from an alarm rule, leaving the agent unable to pick between the two without outside knowledge.

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 guidance on when to use this tool, no exclusions, and no reference to any alternative such as hcloud_list_alarm_rules or hcloud_show_metric_data. The agent must infer usage context entirely from the name.

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

hcloud_list_availability_zoneshcloud_list_availability_zonesC
Read-onlyIdempotent

List availability zones for ECS

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds only the ECS scope; it says nothing about error behaviour for an invalid region, whether zones are region-scoped at all, or what the response contains.

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?

A single six-word sentence with the service scope in the right place and no filler. It is terse but not padded or rambling.

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

Completeness2/5

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

With no output schema and no annotations explaining return shape, the description should at least indicate that it returns a set of zone identifiers tied to the supplied region. For a discovery helper whose output feeds other calls, this is under-explained.

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?

There is a single parameter with 100% schema description coverage, so the schema already documents the one input. The description does not add format examples, case sensitivity, or how region names map to availability zone identifiers, so baseline 3 applies.

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?

"List availability zones for ECS" gives a specific verb (list) and resource (availability zones) and scopes it to the ECS service, which distinguishes it from hcloud_list_dcs_available_zones. It stops short of explaining what an availability zone means in this cloud, but the operation is identifiable.

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 guidance on when to call this versus alternatives, whether the region must already exist, or what the result is used for (e.g., selecting a region for a later ECS create call). The agent must infer all of that from the name.

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

hcloud_list_bandwidthshcloud_list_bandwidthsC
Read-onlyIdempotent

List bandwidths

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered without description help. The description adds nothing beyond that: no indication of pagination behaviour, whether results span regions, or what 'limit' defaults to. No contradiction with annotations, but zero added value.

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

Conciseness2/5

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

Two words, but the brevity reflects under-specification rather than economy — there is no structure, no front-loaded scope, and no sentence that carries information beyond the title. Nothing is wasteful because there is almost nothing there.

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

Completeness2/5

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

For a two-parameter list tool with no output schema, the description should at least identify the resource domain and result shape. It leaves the agent guessing what a 'bandwidth' object is and whether region narrows the listing, which is inadequate even for a simple read tool.

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 100% (region: 'Region', limit: 'Max results'), so the baseline of 3 applies. The description contributes no additional meaning to either parameter — it does not clarify the region format, whether region is mandatory in practice, or how limit interacts with paging.

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

Purpose2/5

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

"List bandwidths" restates the tool name with a verb and a resource noun but gives no scope: it does not say whose bandwidths (shared EIP bandwidths, per-region quotas, etc.), nor how this differs from any of the ~100 sibling list tools. An agent cannot distinguish it from hcloud_list_public_ips or hcloud_list_eip_quotas based on the description alone.

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?

No when-to-use guidance, no alternatives named, no prerequisites or exclusions. The only inferable usage is 'call it when you want bandwidths', which is a restatement of the name. With so many near-neighbour tools (public IPs, EIP quotas), the missing routing guidance is a real gap.

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

hcloud_list_bss_customer_ordershcloud_list_bss_customer_ordersC
Read-onlyIdempotent

List BSS (Billing and Subscription) customer orders

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
statusNoOrder status filter

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that — no mention of pagination defaults, result ordering, or how the open-world remote lookup behaves for an agent.

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?

A single front-loaded sentence with zero waste and no filler. It is appropriately sized for what it says, though the brevity leaves several gaps unaddressed.

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?

With three optional parameters and no output schema, the description leaves the return shape, pagination semantics, and status filter values unexplained. For a simple read-only list tool this is minimally adequate, but it does not fully carry the burden left by the absent output schema.

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 100%, with limit, offset, and status each documented in the schema, so the baseline of 3 applies. The description adds no meaning beyond the schema, and notably gives no hint about valid status values, which are not enumerated.

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 states a specific verb and resource ('List ... customer orders') and expands the BSS acronym, so the domain is unambiguous. It does not differentiate from the nearest siblings (hcloud_list_bss_measurements, hcloud_show_bss_account_balance), though the distinct resource names make confusion unlikely.

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 guidance on when to use this tool, when not to, or what alternative to reach for. An agent must infer that this is the paginated list operation for BSS orders purely from the name and the limit/offset parameters.

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

hcloud_list_bss_measurementshcloud_list_bss_measurementsC
Read-onlyIdempotent

List BSS (Billing and Subscription) measurements

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset

TDQS

C2.9/5.0
Behavior2/5

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

The annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds only the acronym expansion and does not explain what a BSS measurement represents, what is returned, or any pagination behavior beyond the schema.

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?

The description is a single front-loaded sentence with no wasted words. It is appropriately sized for a simple list tool, though it is so terse that it omits helpful routing context.

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

Completeness2/5

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

For a tool that must be distinguished from many sibling list/show tools, the description is incomplete: it does not clarify what BSS measurements are or how they relate to customer orders and account balance. The annotations reduce the behavioral burden, but the agent still lacks enough context to confidently select this tool over siblings.

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 100% for the two pagination parameters, so the schema already defines limit and offset clearly. The description does not add any meaning beyond the schema, which meets the baseline of 3 when the schema carries parameter semantics.

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 states a specific verb (List) and resource (BSS measurements), and expands the acronym to Billing and Subscription, which helps an agent understand the domain. It does not distinguish this tool from sibling BSS tools such as hcloud_list_bss_customer_orders or hcloud_show_bss_account_balance.

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 explicit guidance on when to use this tool versus the other BSS siblings. The usage is only implied by the tool name; no exclusions or alternative conditions are provided.

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

hcloud_list_cbr_backupshcloud_list_cbr_backupsC
Read-onlyIdempotent

List CBR (Cloud Backup and Recovery) backups

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion
resource_idNoFilter by resource ID
checkpoint_idNoFilter by checkpoint ID

TDQS

C2.9/5.0
Behavior2/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, covering the safety profile. The description adds no behavioral context beyond the title: it does not mention pagination behavior, the required region, filtering options, or what the listing returns.

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?

The description is a single front-loaded sentence with no wasted wording. However, it is extremely sparse and provides no structural cues about required region, filtering, or pagination behavior.

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 five-parameter list tool with no output schema, the description is minimal. The schema covers parameter semantics and annotations cover safety, but the description still omits the required region, pagination, and how CBR backups relate to sibling CBR vaults and policies.

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 100%, and all five parameters (including the required region) are documented in the input schema. The description adds no meaning beyond the schema, so the baseline score of 3 applies.

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 states a specific verb ('List') and resource ('CBR (Cloud Backup and Recovery) backups'), and expands the acronym clearly. It does not distinguish this from sibling tools such as hcloud_list_cbr_vaults, hcloud_list_cbr_policies, or hcloud_list_rds_backups, so sibling differentiation is absent.

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 alternative tool named, and no prerequisites or exclusions stated. The description only says what the tool does, leaving the agent to infer when to choose it over related CBR or backup list tools.

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

hcloud_list_cbr_policieshcloud_list_cbr_policiesC
Read-onlyIdempotent

List CBR (Cloud Backup and Recovery) backup policies

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is fully covered without the description. Beyond expanding the acronym, the description adds no behavioral context: it says nothing about pagination behavior, default page size, or ordering of results, which matters for a list tool with limit/offset.

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?

A single front-loaded sentence with zero padding. It is efficient, though its brevity borders on under-specification rather than deliberate conciseness.

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?

With full schema coverage and read-only annotations, the definition is minimally sufficient to call the tool. However, for a paginated list tool in a family with several CBR siblings, it leaves the agent without scope or routing guidance.

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 100%, so limit, offset and the required region are already documented in the schema. The description adds no meaning beyond that, so the baseline of 3 applies.

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?

States a specific verb ('List') and resource ('CBR backup policies') and expands the CBR acronym, so an agent knows exactly what is returned. It does not distinguish itself from close siblings such as hcloud_list_cbr_vaults or hcloud_list_cbr_backups, which is the only thing keeping it from 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 mention of the sibling list tools for vaults or backups, and no stated prerequisite such as needing a region first. The agent must infer scope entirely from the name.

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

hcloud_list_cbr_vaultshcloud_list_cbr_vaultsC
Read-onlyIdempotent

List CBR (Cloud Backup and Recovery) vaults

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered by structured data. The description adds nothing beyond that: it does not say how pagination behaves, whether the region parameter narrows results, or what identifying fields each vault entry carries.

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?

A single front-loaded sentence with no filler or redundancy. It is efficient, though the space saved is not used for any disambiguation that would help selection.

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 three-parameter read-only list tool with a fully documented schema and no output schema, this is minimally sufficient. It stops short of telling the agent how to scope results by region or what a returned vault looks like, which would matter when choosing between this and hcloud_show_cbr_vault.

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 100% with all three parameters (limit, offset, region) described inline, so the schema carries the semantics. The description adds no extra meaning, such as whether region is mandatory or how limit/offset interact, which is the expected baseline when the schema is fully documented.

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 ('List') and resource ('CBR vaults') and expands the CBR acronym, so an agent knows exactly what collection is returned. It does not, however, distinguish this from the sibling hcloud_show_cbr_vault (single vault) or the adjacent hcloud_list_cbr_backups / hcloud_list_cbr_policies collections.

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 and no mention of alternatives; an agent must infer from the name alone that this lists vaults rather than fetching one vault or listing backups/policies. No prerequisites (e.g. that a region must be supplied to scope results) are stated.

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

hcloud_list_cce_clustershcloud_list_cce_clustersC
Read-onlyIdempotent

List CCE (Kubernetes) clusters

NameRequiredDescriptionDefault
regionYesRegion
statusNoCluster status filter (Available, Unavailable, Creating, Deleting, etc.)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, openWorldHint and idempotentHint, and the description adds nothing beyond them — no note about pagination, region scoping behavior, result size, or what an empty result means. For a read-only list tool with full annotation coverage the bar is lower, but this adds zero behavioral context.

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?

Five words, front-loaded with the verb and resource, and no wasted phrasing. It is arguably over-terse rather than padded, but as raw conciseness it is efficient.

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 two-parameter read-only lister with a fully described schema, the essentials are covered by the structured fields. However, with no output schema there is no explanation of what a cluster entry contains, and there is no hint about the required region's role, leaving small gaps.

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 100%, so the region and status parameters are already documented, including example status values. The description mentions no parameter at all, so it neither compensates nor detracts; baseline 3 applies.

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?

States a specific verb and resource ("List ... clusters") and expands the CCE acronym as Kubernetes, so the agent knows what is being enumerated. It does not distinguish itself from siblings such as hcloud_list_cce_nodes or hcloud_show_cce_cluster, so a 4 rather than 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: nothing says to call this instead of hcloud_show_cce_cluster when full details are needed, or instead of hcloud_list_cce_nodes for node inventory. The only implied context is that it is a list operation.

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

hcloud_list_cce_nodeshcloud_list_cce_nodesC
Read-onlyIdempotent

List nodes in a CCE cluster

NameRequiredDescriptionDefault
regionYesRegion
cluster_idYesCluster ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond that: no mention of pagination, result volume, filtering, or what a node record contains, so it contributes essentially no behavioral context of its own.

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?

A single front-loaded sentence with zero filler or redundancy. It is efficient, though the brevity reflects under-specification rather than disciplined economy.

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

Completeness2/5

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

There is no output schema, so the description should carry the burden of explaining what comes back, pagination behavior, and how region and cluster_id relate to the returned nodes. None of that is present, leaving the tool under-described for an agent that needs to call it 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 100% and both parameters are required, so the baseline of 3 applies. The schema descriptions are bare labels ('Region', 'Cluster ID'), and the description adds no format, sourcing, or scoping detail beyond them.

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 ('List nodes') scoped to a CCE cluster, which is enough to distinguish it from cluster-level or node-pool-level siblings in principle. However it never names hcloud_list_node_pools or hcloud_list_cce_clusters, so the boundary between 'nodes', 'node pools' and 'clusters' is left to the agent to infer.

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 statement of prerequisites (an existing cluster, valid region scope), no exclusions, and no reference to alternatives such as hcloud_show_cce_cluster or hcloud_list_node_pools. The agent must infer the call context purely from the name.

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

hcloud_list_cci_deploymentshcloud_list_cci_deploymentsC
Read-onlyIdempotent

List CCI (Cloud Container Instance) deployments

NameRequiredDescriptionDefault
regionYesRegion
namespaceNoNamespace

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered without the description's help. The description adds nothing beyond that: no statement about result volume, pagination, or whether an empty namespace yields all deployments across the region. With annotations doing the disclosure work, this is a bare-minimum pass.

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?

A single front-loaded sentence with zero filler or repetition of the title. It is efficient, though the brevity reflects under-specification rather than disciplined editing.

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

Completeness2/5

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

No output schema exists, so the description should say something about what a deployment record contains or how results are scoped, and it says nothing. For a tool in a large family of near-identical list operations, this leaves the agent guessing about scope and return shape.

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 100%, so both parameters (region, namespace) are documented in the schema and the baseline is 3. The description contributes no extra semantics — notably it does not clarify whether omitting namespace widens the query to the whole region, which is the one thing the schema leaves ambiguous.

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?

States a specific verb (List) and resource (CCI deployments) and expands the CCI acronym, so the agent knows exactly what entity is returned. It stops short of differentiating from the adjacent hcloud_list_cci_namespaces and hcloud_list_cci_pods siblings, which a stronger definition would contrast against.

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 guidance on when to use this versus the other CCI list tools, no mention that namespace is an optional narrowing filter, and no prerequisites (region appears required but the description never says a region scope is mandatory). Usage must be inferred entirely from the name.

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

hcloud_list_cci_namespaceshcloud_list_cci_namespacesC
Read-onlyIdempotent

List CCI (Cloud Container Instance) namespaces

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is fully covered without the description. The description adds nothing beyond expanding the acronym - no note on whether all namespaces in the region are returned, pagination, or whether the region scopes the query.

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?

A single short sentence with the resource front-loaded and zero filler. It is efficient, though the same brevity is what leaves the other dimensions thin.

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 one-parameter read-only list tool with annotations and no output schema, this is minimally sufficient to call correctly. It stops short of describing what a returned namespace looks like or how results are scoped, which an agent discovering CCI resources would benefit from.

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 100% for the single 'region' parameter, so the description does not need to restate it. However, the schema's own text is only 'Region', and the description does nothing to clarify region format or whether it narrows the namespace listing, leaving it at the baseline.

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 states a specific verb ('List') and resource ('CCI namespaces'), and expands the CCI acronym, so the agent knows exactly what is returned. It does not distinguish itself from siblings like hcloud_list_cci_deployments or hcloud_list_cci_pods, but the unique resource noun makes the scope unambiguous anyway.

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 prerequisites, and no reference to any alternative tool. The agent must infer from the name alone that this is the entry point for discovering namespaces before calling pod or deployment listings.

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

hcloud_list_cci_podshcloud_list_cci_podsC
Read-onlyIdempotent

List CCI (Cloud Container Instance) pods

NameRequiredDescriptionDefault
regionYesRegion
namespaceNoNamespace
deployment_nameNoDeployment name

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered structurally. The description adds nothing further — no note on whether listing is paginated, region-scoped, or whether namespace/deployment narrow the result set, so it contributes no behavioral context beyond the annotation set.

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?

A single front-loaded sentence with zero filler and a useful acronym expansion. It is efficient, though the terseness leans toward under-specification rather than optimal structure.

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 three-parameter, read-only list tool with full schema coverage and no output schema, the description is minimally adequate. It omits the filtering behavior of namespace/deployment_name and any note on result volume, which an agent would want before invoking it.

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 100%, with all three parameters (region, namespace, deployment_name) documented, so the baseline is 3. The description adds no meaning about how these filters combine or whether namespace and deployment_name are optional scoping filters versus selectors.

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 plus resource ('List CCI pods') and expands the CCI acronym, so the agent knows exactly what is returned. It is distinguishable from siblings like hcloud_list_cci_namespaces and hcloud_list_cci_deployments by the resource noun, though it never explicitly contrasts them.

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 guidance on when to call this versus hcloud_list_cci_deployments or hcloud_list_cci_namespaces, and no prerequisite or scope conditions are stated. The agent must infer usage from the name alone.

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

hcloud_list_cfw_acl_ruleshcloud_list_cfw_acl_rulesC
Read-onlyIdempotent

List CFW (Cloud Firewall) ACL rules

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPage offset
regionYesRegion
object_idNoProtection object ID

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond that  no note on pagination behavior, default result size, whether results are scoped by protection object, or what a caller can expect from an empty result.

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?

A single short sentence, front-loaded with the verb and resource, with no wasted words. Its brevity is appropriate, though it borders on under-specification rather than tight editing.

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

Completeness2/5

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

For a list tool with no output schema, the description says nothing about returned fields, pagination semantics, or the relationship between region and object_id, which the terse schema labels leave ambiguous. An agent cannot determine from this definition alone how to scope the query 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 100%, so all four parameters (region, object_id, limit, offset) are already documented, and the baseline of 3 applies. The description adds no extra meaning, such as whether object_id is required in practice to get meaningful ACL rules or how limit/offset interact.

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

Purpose3/5

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

States a specific verb (List) and resource (CFW ACL rules) and expands the CFW acronym, so the operation is identifiable. However, it offers no differentiation from closely related siblings such as hcloud_list_cfw_firewalls and hcloud_list_cfw_service_rules; the reader must infer the distinction from the resource noun alone.

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 mention of prerequisites (e.g., that ACL rules are scoped to a firewall or protection object), and no pointer to alternatives. The agent must guess the context in which this list should be called instead of the sibling CFW list tools.

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

hcloud_list_cfw_firewallshcloud_list_cfw_firewallsC
Read-onlyIdempotent

List CFW (Cloud Firewall) firewalls

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPage offset
regionYesRegion

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond them — no mention of pagination behavior despite limit/offset params, no scope or filtering limits, no note on what is returned.

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?

A single short sentence with zero wasted words and the resource front-loaded. It is efficient, though its brevity borders on under-specification rather than deliberate precision.

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

Completeness2/5

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

For a simple list tool the definition is thin: no output schema exists, so the description should at least hint at what is returned or that results are paginated, and it never states that region is mandatory scoping. The annotations cover safety but not result shape.

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 100%, so limit, offset and the required region are already documented in the schema. The description adds no meaning beyond it, which is the baseline-3 case for high coverage.

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

Purpose3/5

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

States a verb and resource ('List CFW firewalls') and expands the CFW acronym, which is mildly useful. But it essentially restates the tool name and does not distinguish it from the closely related CFW siblings (hcloud_list_cfw_acl_rules, hcloud_list_cfw_service_rules) beyond the noun.

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?

No when-to-use guidance, no prerequisites, and no pointer to alternatives or related tools. The agent must infer from the name alone that this enumerates top-level firewall instances rather than ACL or service rules.

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

hcloud_list_cfw_service_ruleshcloud_list_cfw_service_rulesC
Read-onlyIdempotent

List CFW (Cloud Firewall) service rules

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPage offset
regionYesRegion
object_idNoProtection object ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, so the safety profile is covered. The description adds nothing beyond that: it does not mention pagination behavior, that region scoping is mandatory, or how results relate to object_id, which would be valuable context for a list operation.

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?

A single short phrase, front-loaded with the verb and resource, with no wasted wording. It is terse to the point of under-specification, but nothing in it is extraneous.

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

Completeness2/5

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

With four parameters, a required region, and no output schema, the description should at minimum explain what a service rule contains and how pagination returns results. Instead it provides only the tool's name restated in prose, leaving the agent to rely wholly on structured fields.

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 100%, so all four parameters (limit, offset, region, object_id) are already documented in the schema, establishing a baseline of 3. The description adds no additional meaning beyond the schema, such as what a protection object is or whether filters combine.

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 states a specific verb ("List") and a specific resource ("CFW (Cloud Firewall) service rules"), and expands the CFW acronym so the agent knows the domain. It implicitly distinguishes itself from siblings like hcloud_list_cfw_firewalls and hcloud_list_cfw_acl_rules by naming a different rule collection, though it never explicitly contrasts them.

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 guidance on when to use this tool versus alternatives such as hcloud_list_cfw_acl_rules or hcloud_list_cfw_firewalls, and no stated prerequisites or exclusions. The agent must infer usage entirely from the tool name.

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

hcloud_list_codearts_pipelineshcloud_list_codearts_pipelinesC
Read-onlyIdempotent

List CodeArts pipelines in a project

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
regionYesRegion
project_idNoCodeArts project ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered by structured data. The description adds no behavioral context of its own — nothing about pagination defaults, result caps, or what an empty project scope returns — so it contributes essentially nothing beyond the annotations.

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?

A single short sentence with zero redundant wording, and the scope element is front-loaded. It is efficient, though its brevity borders on under-specification rather than true conciseness.

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

Completeness2/5

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

For a listing tool with four parameters and no output schema, the description should at least indicate the required region and the pagination behavior. As written, an agent gets no help beyond the title, leaving role-defining details entirely to the schema and annotations.

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 100%, so all four parameters (limit, offset, region, project_id) are documented in the schema and the baseline of 3 applies. The phrase 'in a project' loosely correlates with project_id but adds no format, default, or constraint information beyond what the schema already states.

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 names a specific verb ('List') and resource ('CodeArts pipelines') scoped to a project, which separates it from siblings like hcloud_list_codearts_projects and hcloud_list_codearts_repositories. It does not explicitly call out those siblings, but the resource noun is distinctive enough for disambiguation.

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 prerequisites (e.g. that region is mandatory), and no mention of when to prefer a different CodeArts listing tool. The only hint of usage is the phrase 'in a project', which implies a project scope but leaves the agent to infer it.

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

hcloud_list_codearts_projectshcloud_list_codearts_projectsC
Read-onlyIdempotent

List CodeArts projects

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
regionYesRegion

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered structurally. The description adds nothing beyond that: no note on whether results are scoped to the caller's account, whether region materially changes the result set, or what the listing contains.

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

Conciseness3/5

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

The single phrase is technically tight with no filler, and it is front-loaded. But the brevity here reflects under-specification rather than economy, leaving no room for the sibling differentiation a list tool in this crowded namespace needs.

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

Completeness2/5

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

For a simple parameterized list tool with no output schema, the description should at minimum say what a returned project represents and how paging behaves. With dozens of list_* siblings and no return-shape or scoping detail, an agent can call it but cannot confidently reason about what comes back.

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 100%, with limit, offset, and region all self-documented, so the baseline of 3 applies. The description contributes no extra meaning such as default page size, max limit, or accepted region formats.

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

Purpose3/5

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

"List CodeArts projects" names a verb and a resource, so the basic purpose is legible. However, it does nothing to distinguish this from siblings like hcloud_list_codearts_repositories, hcloud_list_codearts_pipelines, or notably hcloud_list_projects (IAM projects), which an agent could easily confuse with CodeArts projects.

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?

No guidance at all on when to use this versus the other CodeArts list tools or the generic project listing. The agent must infer the distinction from the tool name alone, and there are no exclusions or prerequisites stated.

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

hcloud_list_codearts_repositorieshcloud_list_codearts_repositoriesB
Read-onlyIdempotent

List CodeArts repositories in a project

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
regionYesRegion
project_idNoCodeArts project ID

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds only that results are scoped to a project; it says nothing about pagination defaults, total counts, or whether an empty project returns an empty list versus an error.

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?

A single front-loaded sentence with no filler or redundancy. It is efficient, though its brevity crosses into under-specification rather than genuine tightness.

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?

This is a simple read-only list tool with fully documented parameters and safety annotations, so the bar is low and the definition is minimally sufficient. It still leaves gaps around pagination behaviour and how project_id is obtained, which matter for a list-and-page operation.

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 100%, so limit, offset, region and project_id are each documented in the schema. The phrase 'in a project' loosely ties project_id to the operation, but the description adds no filtering semantics or defaults beyond what is already structured.

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 states a specific verb ('List') and a specific resource ('CodeArts repositories'), scoped to a project. It implicitly separates itself from siblings like hcloud_list_codearts_projects and hcloud_list_swr_repositories by naming CodeArts repositories, but it never explicitly contrasts with them.

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 mention of prerequisites such as needing a project_id first, and no reference to alternatives (for example the SWR repository lister). The agent must infer everything about selection from the name alone.

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

hcloud_list_dataarts_catalogshcloud_list_dataarts_catalogsC
Read-onlyIdempotent

List DataArts catalogs in a workspace

NameRequiredDescriptionDefault
regionYesRegion
workspace_idNoDataArts workspace ID

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered structurally. The description adds essentially nothing beyond that: no pagination behavior, no result-size expectations, no indication of what a "catalog" contains or whether listing is scoped by project/region defaults.

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?

A single short sentence with the resource and scope front-loaded and no filler. It is efficient, though the terseness shades into under-specification rather than genuine economy.

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 two-parameter read-only list tool with full schema coverage and no output schema, the description covers the bare minimum of what the tool returns conceptually. It still omits pagination, region requirements, and relationship to the sibling workspaces tool, which an agent would need for correct invocation.

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 100%, so both region and workspace_id are already documented in the schema. The description only echoes the workspace scoping idea and adds no format, default, or interaction details, so the baseline of 3 applies.

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

Purpose3/5

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

"List DataArts catalogs in a workspace" names a specific verb (list) and resource (DataArts catalogs), so the operation is identifiable. However, it doesn't distinguish this from the sibling hcloud_list_dataarts_workspaces or explain how catalogs relate to workspaces, leaving the scope only partially defined.

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 mention of alternatives, and no exclusions. The one scoping hint ("in a workspace") is ambiguous because workspace_id is optional in the schema, so an agent can't tell whether workspace filtering is required or optional.

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

hcloud_list_dataarts_workspaceshcloud_list_dataarts_workspacesC
Read-onlyIdempotent

List DataArts workspaces

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
regionYesRegion

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that – no statement about pagination behavior, completeness of results, or what region scoping implies – so it contributes no behavioral value.

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?

The description is a single short phrase with no padding and is fully front-loaded. It is not verbose; its shortfall is under-specification rather than wasted wording.

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

Completeness2/5

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

For a list tool with three parameters, one required, and no output schema, the description should at least explain the region requirement and the pagination model. Neither appears, so an agent must rely entirely on the input schema and annotations.

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 100%, with limit, offset, and the required region all documented in the schema, so the baseline of 3 applies. The description itself explains no parameter meaning whatsoever, leaving the schema to do all the work.

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

Purpose2/5

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

The description "List DataArts workspaces" simply restates the tool name hcloud_list_dataarts_workspaces and the verb/resource pair already encoded there. It does not distinguish the tool from the sibling hcloud_list_dataarts_catalogs or explain what a DataArts workspace is, so it adds almost nothing beyond the name.

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 guidance about when to use this tool, when to prefer hcloud_list_dataarts_catalogs, or what prerequisites exist (such as region or project scoping). Usage must be inferred entirely from the name.

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

hcloud_list_dcs_available_zoneshcloud_list_dcs_available_zonesC
Read-onlyIdempotent

List available availability zones for DCS (Redis)

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered structurally. The description adds only the service scoping ('DCS (Redis)') and says nothing about whether results vary by region, caching, or failure behavior for an invalid region.

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?

One short sentence, front-loaded with the verb and resource, with no redundant wording. It is efficient, though its brevity is partly under-specification rather than deliberate tightness.

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 single-parameter read-only list tool with no output schema, the description is minimally adequate. An agent still cannot tell what fields each zone entry contains or how this differs from the generic availability-zones tool, but nothing about invocation is actively wrong.

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 100%, but the sole parameter is documented only as 'Region', which conveys no format, enumeration, or example. The description mentions no parameter at all, so it fails to compensate for a schema that is technically complete but semantically thin. Baseline 3 applies given full coverage.

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 ('List available availability zones') scoped to the DCS/Redis service, which separates it from most siblings such as hcloud_list_dcs_flavors. It does not, however, distinguish itself from hcloud_list_availability_zones, the compute-level counterpart, leaving the agent to guess which AZ list applies.

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 explicit when-to-use guidance, no statement of prerequisites (a valid region must be chosen first), and no mention of the alternative hcloud_list_availability_zones. The agent must infer the usage scenario entirely from the tool name and the DCS parenthetical.

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

hcloud_list_dcs_flavorshcloud_list_dcs_flavorsC
Read-onlyIdempotent

List available DCS (Redis) instance flavors/specs

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is fully covered. The description adds essentially no behavior beyond that — it does not say results are scoped by the required region, whether the list is paginated, or roughly what a flavor entry contains; the only extra value is clarifying that DCS means Redis.

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?

A single front-loaded sentence with zero filler and no restating of the title verbatim. It is efficient, though its brevity is closer to under-specification than to disciplined conciseness.

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?

The tool is simple (one required param, read-only, no output schema) and the annotations carry the safety profile, so the definition is minimally callable. Still, for a discovery tool the agent would benefit from knowing that the region argument ties to hcloud_list_dcs_available_zones and what the returned specs cover — neither is stated.

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?

There is a single required parameter with 100% schema description coverage, so the baseline is 3 by rule. However the schema text is just 'Region', and the description does not clarify the expected format (e.g., region code vs. name) or that valid values come from hcloud_list_dcs_available_zones, so nothing is added beyond the schema.

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?

States a specific verb (list) and resource (DCS/Redis instance flavors/specs), and the 'DCS (Redis)' gloss disambiguates it from the many other flavor-listing siblings such as hcloud_list_rds_flavors, hcloud_list_gaussdb_flavors, and hcloud_list_dds_flavors. It does not explicitly distinguish itself from hcloud_list_dcs_instances or hcloud_list_dcs_available_zones, but the noun phrase is unambiguous.

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?

The description is only a purpose statement; it never says when to call this versus alternatives, nor that it is typically used to discover valid flavors before creating a DCS instance. There is no mention of the region prerequisite or of the related hcloud_list_dcs_available_zones sibling, leaving all usage inference to the agent.

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

hcloud_list_dcs_instanceshcloud_list_dcs_instancesC
Read-onlyIdempotent

List DCS (Redis) instances

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

The annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered without the description. The description adds only the DCS-equals-Redis clarification; it says nothing about filtering behavior, pagination, or what a listing contains.

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

Conciseness3/5

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

The single phrase is efficient and front-loaded with the verb, but its brevity stems from under-specification rather than disciplined editing. Nothing is wasted, but very little is delivered.

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 two-parameter read-only list operation this is close to sufficient, especially since annotations cover the safety profile. With no output schema, however, the description should at least indicate what fields a returned instance carries or how limit behaves.

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 100%, so both parameters (limit and required region) are documented by the schema itself. The description adds no semantics beyond that, and the bare "Region" and "Max results" schema texts give no format examples, so the baseline 3 applies.

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 ("List DCS instances") and usefully expands DCS as Redis, which an agent may not know. It does not, however, distinguish itself from siblings such as hcloud_show_dcs_instance or hcloud_list_dcs_flavors, so the agent must infer the difference from the names alone.

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 guidance on when to prefer this tool over hcloud_show_dcs_instance or hcloud_list_dcs_flavors, and no mention of how to page through results using limit. Usage is only implied by the verb "List".

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

hcloud_list_dds_flavorshcloud_list_dds_flavorsB
Read-onlyIdempotent

List available DDS (MongoDB) instance flavors/specs

NameRequiredDescriptionDefault
engineNoDatabase engine
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond that: no pagination behavior, no filtering semantics, and no indication of what a returned 'flavor/spec' contains.

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 zero filler; the parenthetical disambiguation earns its place.

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 two-parameter read-only list tool with full schema coverage and no output schema, the minimum is met, but an agent gets no sense of result contents (CPU/memory/disk specs) or whether results are scoped to a region.

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 100%, so the schema itself documents both parameters (engine, region required). The description mentions neither parameter and adds no meaning such as whether engine filters results or defaults to MongoDB, so the baseline 3 applies.

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 clear verb ('List') plus the specific resource ('DDS (MongoDB) instance flavors/specs') and even expands the DDS acronym, which distinguishes it from the many sibling flavor-listing tools (rds_flavors, dws_flavors, gaussdb_flavors, dcs_flavors, elb_flavors). It stops short of explicitly naming those siblings as alternatives, so it is clear but not fully differentiated by routing language.

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 explicit when-to-use guidance, no prerequisite notes (e.g., that it is typically called before creating a DDS instance), and no mention of which sibling flavor lister to pick for other engines. Usage is only implied by the resource name.

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

hcloud_list_dds_instanceshcloud_list_dds_instancesC
Read-onlyIdempotent

List DDS (MongoDB) instances

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered elsewhere. The description adds nothing beyond that — no note on pagination, result ordering, whether the list can be empty, or how limit interacts with the returned set.

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?

A single compact phrase with no filler and the key identifying information front-loaded. It is arguably too terse rather than wasteful, so it does not lose points for verbosity.

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 read-only list tool with a fully documented two-parameter schema and no output schema, the description is minimally sufficient to call it correctly. However, it omits what an agent gets back and whether the region filter is mandatory, which matters for planning a call.

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 100% with only two flat parameters, so the schema already explains both fields. The description contributes no extra meaning about region scoping or limit behavior, leaving it at the baseline for fully-covered schemas.

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?

States a specific verb ("List") plus resource ("DDS instances") and disambiguates the acronym as MongoDB, which separates it from adjacent siblings like hcloud_list_dcs_instances or hcloud_list_rds_instances. It stops short of naming a sibling it is deliberately not, so not 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 guidance on when to use this versus alternatives, no mention of prerequisites such as a project/tenant context, and no indication of what to do with the results. The required region parameter implies scoping but the description never says so.

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

hcloud_list_dds_storage_typeshcloud_list_dds_storage_typesC
Read-onlyIdempotent

List available DDS (MongoDB) storage types

NameRequiredDescriptionDefault
engineNoDatabase engine
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing further — no indication of whether results vary by region or engine, whether the list is paginated, or what the entries represent — so it contributes no behavior beyond the structured fields.

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?

A single short sentence with no filler and the resource front-loaded. Its brevity is efficient, though the same terseness leaves content gaps that belong to other dimensions.

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 read-only list tool with annotations covering safety and no output schema, this is minimally adequate. It still omits the relationship between the region/engine inputs and the returned storage types, and gives no guidance on how the result should be used.

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 100% with both parameters ('engine', 'region') documented, so the baseline of 3 applies. The description mentions neither parameter, so it adds no meaning about how region or engine constrain the returned storage types.

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?

States a specific verb (List) and resource (DDS/MongoDB storage types), and the parenthetical disambiguates DDS as MongoDB rather than another engine. It does not explicitly distinguish itself from hcloud_list_rds_storage_types or hcloud_list_dds_flavors, so the agent must infer the difference from the name alone.

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: nothing says this is for choosing storage during DDS instance creation, nor when to prefer hcloud_list_dds_flavors or hcloud_list_rds_storage_types. The only cue is the tool name and a single implied context.

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

hcloud_list_dns_recordsetshcloud_list_dns_recordsetsA
Read-onlyIdempotent

List DNS record sets in a zone

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
zone_idYesZone ID

TDQS

A3.5/5.0
Behavior3/5

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

The annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds only the zone-scoping behavior; it does not disclose pagination behavior, default result limits, or anything about the returned record set structure.

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?

The description is a single front-loaded sentence with no filler or redundant wording. It is appropriately sized for an operation whose detailed parameter semantics are already handled by the schema.

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 read-only list tool with full schema coverage and annotations, the core purpose is conveyed. However, without an output schema, the description should ideally mention pagination or return-shape expectations rather than stopping at the scoping phrase.

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 100%, so all three parameters are already documented in the schema. The phrase 'in a zone' reinforces the role of zone_id, but the description adds no further meaning for region or limit beyond what the schema provides.

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 uses a specific verb and resource: 'List DNS record sets,' scoped 'in a zone.' It is clear what the tool does, though it does not distinguish itself from nearby DNS tools such as zone listing or zone detail retrieval.

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

Usage Guidelines3/5

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

Usage is only implied by the verb 'List' and the zone scoping. The description gives no explicit guidance on when to use this instead of hcloud_list_dns_zones or hcloud_show_dns_zone, nor does it mention that a zone ID must be obtained first.

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

hcloud_list_dns_zoneshcloud_list_dns_zonesC
Read-onlyIdempotent

List DNS zones

NameRequiredDescriptionDefault
typeNoZone type: public or private
limitNoMax results
regionYesRegion

TDQS

C2.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered without the description. The description adds nothing further: it says nothing about result volume, pagination via the limit parameter, or what a zone listing contains. No contradiction with annotations, but no added value either.

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

Conciseness3/5

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

The description is only four words, so there is no waste or burying of key information. However, this brevity reflects under-specification rather than disciplined editing; there is no structure to speak of and no front-loaded detail beyond the bare action.

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

Completeness2/5

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

For a listing tool with a required region parameter and optional type/limit filters, a four-word description is thin. There is no output schema, so the description could have explained what a zone entry includes or how pagination behaves, and it omits any routing to the show/recordsets siblings.

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 100%, so all three parameters (type, limit, region) are already documented in the schema, which sets the baseline at 3. The description adds no meaning beyond the schema - it does not even indicate that region is required or that type filters public vs private zones.

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

Purpose2/5

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

"List DNS zones" names a verb and resource but is essentially a restatement of the tool name hcloud_list_dns_zones. It gives no scope detail (region scoping, public vs private) and does not distinguish this from the closely related siblings hcloud_show_dns_zone and hcloud_list_dns_recordsets.

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 or when-not-to-use guidance, and no mention of alternatives such as hcloud_show_dns_zone for a single zone or hcloud_list_dns_recordsets for records within a zone. The agent must infer the intended role from the name alone.

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

hcloud_list_domainshcloud_list_domainsB
Read-onlyIdempotent

List authenticated IAM domains

NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety and idempotency profile is covered. The word "authenticated" hints at auth requirements, but the description adds nothing about scope, pagination, or what a domain object contains.

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?

A single short phrase with no wasted words, and the resource is front-loaded. It is perhaps too terse to deserve a 5, but nothing is bloated.

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 no-parameter, read-only list tool with full annotation coverage, the description is minimally sufficient. However, with no output schema, the agent gets no sense of what fields a returned domain has, so it is adequate but thin.

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 tool takes zero parameters, so the baseline is 4. There is nothing the schema could document that the description omits; the description need only convey the resource, which it does.

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 uses a specific verb and resource: "List authenticated IAM domains." It is distinguishable from IAM siblings like hcloud_list_users, hcloud_list_groups, and hcloud_list_agencies, though it does not explicitly name which sibling to use for related domain queries.

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 explicit when-to-use guidance, no prerequisites, and no mention of alternatives. The agent must infer that this is the tool for enumerating IAM domains from the name alone.

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

hcloud_list_drs_jobshcloud_list_drs_jobsC
Read-onlyIdempotent

List DRS (Data Replication Service) jobs with optional filters

NameRequiredDescriptionDefault
nameNoFilter by job name
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion
statusNoFilter by job status
job_typeNoFilter by job type

TDQS

C2.9/5.0
Behavior2/5

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

The annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered elsewhere. The description adds essentially no behavioral context beyond the annotations: it says nothing about pagination behavior (limit/offset), result volume, or whether region scoping restricts the listing, which is the one subtlety an agent would benefit from knowing.

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?

A single front-loaded sentence with no wasted wording. It is efficiently written, though its brevity reflects under-specification rather than disciplined editing.

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?

With full schema coverage and annotations carrying the read-only/idempotent profile, and no output schema to explain, the description is adequate for a basic listing call. However, for a tool whose only required parameter is a region scope and which paginates, the absence of any note on pagination or result set size leaves a modest gap.

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 100%, so every parameter including the job_type enum is documented in the schema itself. The description only gestures at "optional filters" without adding syntax, combinability, or default semantics beyond what the schema provides, so the baseline of 3 applies.

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 states a specific verb and resource ("List DRS jobs") and usefully expands the DRS acronym, which is not obvious from the name alone. It does not explicitly distinguish itself from the closely related siblings hcloud_show_drs_job and hcloud_list_drs_quotas, so it stops 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?

The phrase "with optional filters" hints that all filters can be omitted and only region is mandatory, but there is no explicit when-to-use guidance, no mention of when to prefer hcloud_show_drs_job for a single job, and no stated prerequisites or scope constraints.

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

hcloud_list_drs_quotashcloud_list_drs_quotasC
Read-onlyIdempotent

List DRS quotas for the tenant

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the description's only remaining job would be to add behavioral context — but it adds none. It does not say whether the response is per-region, whether results are paginated, or whether quotas can be zero/absent for a region. It also does not contradict the annotations.

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?

One short sentence with zero padding, and the verb and resource are front-loaded. Its brevity is also its weakness — nothing is wasted, but nothing extra is spent on orientation either.

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 single-parameter, read-only list tool with full annotation coverage and no output schema, this is close to the minimum acceptable. Still, it never states what a 'quota' record contains or what a caller should do with it, and the 'tenant' framing sits uneasily with a required region argument.

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 100% with a single required 'region' parameter, so the schema does the documenting and a baseline of 3 applies. The description adds no meaning beyond the schema; in fact the phrase 'for the tenant' is the only scoping information and it does not explain how 'region' narrows that scope.

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 pairs a specific verb ('List') with a specific resource ('DRS quotas') and a scope ('for the tenant'), so an agent can tell it apart from lifecycle siblings like hcloud_list_drs_jobs and hcloud_show_drs_job. It falls short of 5 because it does not distinguish itself from the other quota-reading tools in the fleet (hcloud_show_quota, hcloud_list_eip_quotas), whose scope overlaps conceptually.

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 guidance on when to call this tool versus alternatives, no prerequisites, and no note on what it is useful for (e.g. capacity planning before creating DRS jobs). The reader must infer the purpose from the name alone.

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

hcloud_list_dws_clustershcloud_list_dws_clustersB
Read-onlyIdempotent

List DWS (GaussDB Data Warehouse) clusters

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPage offset
regionYesRegion

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered without prose. The description contributes only the acronym expansion and resource scope; it says nothing about whether results are paginated by limit/offset, whether region is mandatory, or how large the listing can get.

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?

A single front-loaded sentence with zero filler or redundancy. It is well structured but so terse that the brevity comes at the cost of guidance, which is why it is not a 5.

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 three-parameter list tool with no output schema and no nesting, this is minimally adequate: the agent knows what it lists and the schema supplies the parameters. Missing are any note about pagination behavior or what a cluster record contains, which an agent planning a call would find useful.

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 100%, so region, limit and offset are already documented in the schema, and the description adds no syntax, format, or defaulting detail beyond that. Baseline 3 applies when the input schema carries the parameter burden.

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 pairs a specific verb (List) with a specific resource (DWS clusters) and expands the DWS acronym as GaussDB Data Warehouse, which distinguishes it from the nearby hcloud_list_gaussdb_instances and hcloud_list_mrs_clusters. It stops short of naming those siblings or the corresponding hcloud_show_dws_cluster, so differentiation is implied rather than stated.

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 at all: nothing says to call this before hcloud_show_dws_cluster for details, or why one would pick the DWS cluster list over hcloud_list_dws_flavors. The agent must infer the choice purely from the tool name.

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

hcloud_list_dws_flavorshcloud_list_dws_flavorsB
Read-onlyIdempotent

List available DWS (GaussDB Data Warehouse) cluster flavors/specs

NameRequiredDescriptionDefault
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds essentially no behavioral context beyond the annotations: it does not say whether results are region-scoped (the sole parameter implies it but never states it), whether the list is paginated, or whether flavors differ by availability zone. For a one-param read tool this is tolerable, but the text contributes little.

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 sentence that front-loads the verb and resource, expands the DWS acronym inline, and contains no filler. Nothing could be removed without losing meaning.

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?

With no output schema, the description is the only place an agent could learn what a flavor record contains, and it stops at 'flavors/specs'. For a simple list tool with one fully-documented parameter this is adequate, but it leaves the agent guessing about the return shape and any region coupling.

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 100% for the single required parameter, so the schema already carries the documentation burden; the description neither names 'region' nor explains its accepted format (region ID vs. name) or whether it must match the target cluster's region. Baseline 3 applies when the schema does the work.

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?

States a specific verb (List) and a well-scoped resource (DWS GaussDB Data Warehouse cluster flavors/specs), and the DWS qualifier distinguishes it from sibling flavor lists such as hcloud_list_dcs_flavors, hcloud_list_gaussdb_flavors and hcloud_list_rds_flavors. It does not explicitly route to those siblings, but the resource naming is unambiguous.

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 mention of a prerequisite step (e.g., call this before creating or resizing a DWS cluster), and no exclusion or alternative named. An agent can infer it is a lookup, but nothing in the text says why or when to pick it over hcloud_list_dws_clusters or hcloud_show_dws_cluster.

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

hcloud_list_eip_quotashcloud_list_eip_quotasC
Read-onlyIdempotent

List EIP resource quotas

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is supplied structurally. The description adds nothing beyond them: no note that results are region-scoped, no indication of quota dimensions (used vs total), and no behavior for an unknown region. With annotations covering safety, the description still fails to contribute any extra operational context.

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?

A four-word phrase, front-loaded with the verb and resource and free of filler. Its brevity is efficient but edges toward under-specification rather than genuine conciseness.

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 one-parameter, read-only list tool with no output schema, a short description is defensible, but it omits the region scoping and the nature of the quota data returned. It is minimally sufficient rather than complete.

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 100% but the single parameter is documented only as "Region" with no format hint. Per the high-coverage baseline this lands at 3, and the description does not compensate by naming expected region-code syntax or regional scoping behavior.

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?

"List EIP resource quotas" names a specific verb (list) and resource (EIP quotas), which separates it from siblings such as hcloud_show_quota and hcloud_list_drs_quotas that deal with different quota scopes. It does not, however, spell out what an EIP quota represents or what the returned items look like.

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 guidance on when to use this tool versus hcloud_show_quota or other quota-listing tools, and no stated prerequisites beyond the required region. The agent must infer usage entirely from the name.

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

hcloud_list_elb_flavorshcloud_list_elb_flavorsB
Read-onlyIdempotent

List available ELB flavor specifications

NameRequiredDescriptionDefault
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing further - no note that region is mandatory, whether results are paginated, or whether flavor availability varies by region, which is the one behavioral point an agent would actually need here.

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 five-word phrase that front-loads the verb and resource with zero filler. Nothing could be removed without losing meaning.

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 one-parameter read-only listing tool this is minimally adequate, and the absence of an output schema means return values need not be explained. However, an agent would benefit from knowing what a 'flavor specification' contains (vCPU, memory, bandwidth) and whether the region scope limits results.

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 100%, but the schema's only annotation for the region parameter is the bare word 'Region'. The description does not compensate by clarifying expected format or scoping behavior. With full coverage, the baseline of 3 applies.

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?

placeholder

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 guidance on when to use this versus hcloud_list_flavors or other flavor-listing siblings, nor any prerequisite such as the need to pick a flavor before creating a load balancer. Usage is only implied by the tool name.

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

hcloud_list_er_attachmentshcloud_list_er_attachmentsB
Read-onlyIdempotent

List attachments for a specific ER (Enterprise Router) router

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPage offset
regionYesRegion
router_idYesER router ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety is covered. The description adds no behavior beyond that — nothing about pagination semantics (limit/offset defaults or maximums), result ordering, or what happens with an invalid router_id in an open-world API.

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?

A single front-loaded sentence with no wasted words. However, the terseness borders on under-specification rather than true economy, since essentials like pagination behavior are omitted entirely.

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 read-only list tool with full schema coverage, no output schema and rich annotations, the description is only just adequate. It leaves an agent to guess at paging behavior and the shape of returned attachments, which matters for a list endpoint.

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 100%, so the schema already documents all four parameters, meeting the baseline. The description contributes no extra meaning (e.g., valid region values or whether offset requires limit), so it neither helps nor hurts.

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?

States a specific verb ('List') and resource ('attachments') scoped to an ER (Enterprise Router) router, which is unambiguous. It does not differentiate from nearby siblings such as hcloud_list_er_routers or hcloud_list_er_route_tables, so an agent must infer the boundary from the name alone.

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

Usage Guidelines3/5

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

'for a specific ER router' implies the precondition that a router_id must already be known, but there is no explicit when-to-use guidance, no exclusion of alternatives, and no note on how this relates to listing routers or route tables first.

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

hcloud_list_er_routershcloud_list_er_routersC
Read-onlyIdempotent

List ER (Enterprise Router) routers

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPage offset
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safe read-only nature is covered elsewhere. The description adds no behavioral context beyond restating that this lists routers; it does not mention pagination, result ordering, or regional scoping behavior.

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?

The description is a single front-loaded sentence with no redundant wording, which suits a simple list operation. It is terse but not unclear, and nothing in it is wasted.

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 read-only list tool with full schema coverage and strong annotations, the definition is minimally sufficient. However, it lacks any mention of regional scope or pagination behavior, and there is no output schema to explain the returned router list.

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 100%, covering region, limit, and offset, so the schema already carries parameter meaning. The description adds no parameter-specific detail such as whether region is mandatory or how pagination should be used; baseline 3 is appropriate.

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 clear verb and resource: "List ER (Enterprise Router) routers", and it expands the ER acronym so the agent knows the object type. It is distinguishable from the sibling hcloud_show_er_router by being a list operation, but it does not further differentiate from hcloud_list_er_route_tables or hcloud_list_er_attachments.

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?

The description states only that this is a listing operation. It gives no explicit when-to-use guidance, no prerequisites, and no alternatives such as hcloud_show_er_router for a single router or the route-table/attachment list tools.

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

hcloud_list_er_route_tableshcloud_list_er_route_tablesA
Read-onlyIdempotent

List route tables for a specific ER (Enterprise Router) router

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPage offset
regionYesRegion
router_idYesER router ID

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered by structured data. The description adds the useful constraint that results are scoped to one router, but says nothing about pagination behavior or result shape beyond what the limit/offset params imply.

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?

A single front-loaded sentence with no filler, giving the action and the scope immediately. It is efficient, though it leaves no room for the routing guidance a one-line description would have benefited from.

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 simple paginated list tool with full schema coverage and read-only annotations, most of what an agent needs is present, and the absence of an output schema is not disqualifying. The only real gap is disambiguation from the generic hcloud_list_route_tables sibling.

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 100%, so all four parameters (limit, offset, region, router_id) are already documented, and the baseline is 3. The description reinforces that router_id targets an Enterprise Router but adds no format, syntax, or default-value detail beyond the schema.

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 supplies a specific verb and resource ('List route tables') and scopes it to a particular ER (Enterprise Router) router, expanding the ER abbreviation so the agent knows the domain. It falls short of a 5 because it never distinguishes this from the sibling hcloud_list_route_tables, which an agent could easily confuse it with.

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

Usage Guidelines3/5

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

Usage is only implied: the phrase 'for a specific ER router' signals that router_id and region are prerequisites, which matches the required fields. There is no explicit when-to-use statement, no statement of when not to use it, and no pointer to hcloud_list_route_tables for the non-ER case.

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

hcloud_list_flavorshcloud_list_flavorsC
Read-onlyIdempotent

List available ECS instance flavors/specs

NameRequiredDescriptionDefault
regionYesRegion
availability_zoneNoFilter by availability zone

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, openWorldHint and idempotentHint, so the safety profile is covered externally. The description adds nothing beyond the name: no indication of whether results are region-scoped, whether deprecated or unavailable flavors are included, or how large the result set typically is.

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

Conciseness3/5

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

A single short sentence with zero filler, which is structurally clean. However, brevity here crosses into under-specification rather than efficient communication, leaving no front-loaded operational detail.

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 read-only list tool with a fully described two-parameter schema and no output schema, the minimum an agent needs is present via annotations and schema. Still, given the crowded family of flavor-listing siblings, a sentence on scope and return content would materially help correct invocation.

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 100%, so both parameters (region, availability_zone) are documented in the schema and the baseline of 3 applies. The description does not clarify the region semantics (which region's catalog is queried) or the filtering behavior of availability_zone, so it adds no meaning beyond the schema.

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 plus resource ("List available ECS instance flavors/specs"), which is enough to know it returns instance type catalog data. It is less explicit about which of the many sibling flavor tools (dcs, mrs, dws, gaussdb, elb, rds, dds) it contrasts with, relying on the tool name's prefix for differentiation.

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?

No guidance on when to use this versus the other *_list_*_flavors siblings or versus hcloud_list_servers. There is no mention of prerequisites, such as needing a region or that a region is required.

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

hcloud_list_gaussdb_datastoreshcloud_list_gaussdb_datastoresC
Read-onlyIdempotent

List available GaussDB (openGauss) DB engine versions

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that — it does not say the listing is scoped by the required region, whether results are paginated or truncated, or what an entry represents.

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?

One sentence, front-loaded with the verb and resource, with no filler. It is efficient but borders on under-specification given the crowded gaussdb sibling set.

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 one-parameter read tool with full annotation coverage and no output schema, the essentials are present. However, nothing tells the agent how this differs from hcloud_list_gaussdb_flavors or hcloud_list_rds_datastores, which is the main ambiguity an agent would face.

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?

There is a single parameter with 100% schema description coverage, so the schema already carries the parameter documentation and the baseline of 3 applies. The description does not add meaning about how region affects the returned versions, though little is needed for one parameter.

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 states a specific verb and resource ('List available GaussDB (openGauss) DB engine versions'), and the parenthetical clarifies the engine family. It does not distinguish this from the closely named sibling hcloud_list_gaussdb_flavors or from hcloud_list_rds_datastores, so an agent must infer the difference between engine versions, flavors, and RDS datastores.

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 prerequisites, and no mention of alternatives. The agent is left to infer that this is a pre-creation lookup for engine versions rather than a flavor or instance listing, which is exactly where the sibling tools overlap.

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

hcloud_list_gaussdb_flavorshcloud_list_gaussdb_flavorsC
Read-onlyIdempotent

List available GaussDB (openGauss) instance flavors/specs

NameRequiredDescriptionDefault
regionYesRegion
db_typeNoDatabase type filter

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is fully covered structurally. The description adds nothing on top of that – no note on whether the result set is region-scoped, whether unauthenticated/endpoint constraints apply, or how pagination/volume behaves for a catalog that can be long.

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?

A single, front-loaded sentence with no filler or redundancy. It is efficient but borders on under-specification, so it doesn't reach the top of the scale.

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?

The tool is simple (two params, read-only, one required) and the annotations carry the safety semantics, so the definition is workable. Still, with no output schema and no explanation of what a flavor record contains or how filters interact, an agent has to guess at result shape and filtering behavior.

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 100%, so both parameters (region, db_type) are already documented in the schema, and the baseline of 3 applies. The description mentions 'flavors/specs' but doesn't clarify how db_type filters or whether region restricts the returned catalog beyond what the schema states.

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 uses a specific verb+resource pair ('List... GaussDB (openGauss) instance flavors/specs') that maps directly onto the tool name and separates it from the many sibling flavor-listers (hcloud_list_dcs_flavors, hcloud_list_rds_flavors, hcloud_list_dws_flavors) via the named service. It doesn't, however, say how it relates to those siblings or what a 'flavor' entails in this context.

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 or when-not-to-use guidance and no mention of alternatives or prerequisites. The agent can infer that this is a discovery call made before provisioning a GaussDB instance, but nothing in the text confirms that or excludes other calls.

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

hcloud_list_gaussdb_instanceshcloud_list_gaussdb_instancesC
Read-onlyIdempotent

List GaussDB (openGauss) instances

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPage offset
regionYesRegion
db_typeNoDatabase type filter

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no statement about pagination behavior, default limits, cross-region scope, or what a listing actually contains, which is the remaining value it could have supplied.

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?

A single short fragment with zero wasted words, and the resource is front-loaded. It is efficient but so terse that it has no room for structure (no conditions, no scope qualifiers), which keeps it just short of a top mark.

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?

The tool is simple (one required param, all params documented, no output schema), so the minimal description is not disastrous. Still, it omits what a caller would want for a list operation — pagination defaults, region scoping, and the fact that filtering is available via db_type — leaving real gaps for an otherwise straightforward tool.

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 100%, so all four parameters (region, limit, offset, db_type) are documented in the schema, making a baseline of 3 appropriate. The description contributes no additional semantics such as valid db_type values, default page size, or whether region is mandatory for scoping.

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 states a specific verb (List) and resource (GaussDB/openGauss instances), and the parenthetical clarifies the engine, so an agent knows exactly what collection is enumerated. It does not, however, differentiate from adjacent siblings such as hcloud_list_gaussdb_flavors, hcloud_list_gaussdb_datastores, or hcloud_show_gaussdb_instance, so sibling disambiguation is left entirely to the tool name.

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 mention of prerequisites such as a required region or credentials, and no pointer to alternatives (e.g. use hcloud_show_gaussdb_instance for a single instance's details). The agent must infer routing from the name alone.

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

hcloud_list_groupshcloud_list_groupsC
Read-onlyIdempotent

List IAM user groups

NameRequiredDescriptionDefault
limitNoMax results

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, so the safety profile is covered. The description adds nothing beyond the annotations — no pagination behavior, no indication of what 'limit' defaults to or caps at, and no note that results may span domains. With annotations carrying the burden this is a modest gap, but zero added context is a 2.

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?

Four words, front-loaded with verb and resource, with zero wasted phrasing. It is concise but borders on under-specified rather than richly structured.

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 one-parameter list operation with annotations covering safety and a fully described schema, the description is minimally adequate. It omits pagination semantics and scope context (domain/project) that an agent would want, but there is no output schema or nested structure demanding more.

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 100% and the single 'limit' parameter is already documented as 'Max results'. The description adds no meaning beyond the schema, so the baseline 3 applies rather than a higher score.

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?

States a specific verb ('List') and a specific resource ('IAM user groups'), which distinguishes it from neighbors like hcloud_list_users, hcloud_list_user_policies, and hcloud_list_lts_groups. It does not explicitly contrast with any sibling, but the resource noun is narrow enough to be unambiguous.

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 prerequisites (e.g., IAM permissions or domain/region scope), and no mention of alternatives when a single group's details are wanted. Usage is only inferable from the verb itself.

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

hcloud_list_health_monitorshcloud_list_health_monitorsC
Read-onlyIdempotent

List ELB health monitors

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds nothing beyond that — no note on pagination behavior for 'limit', no indication of scope (all monitors in a region vs. per-pool), and no hint about what is returned.

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

Conciseness3/5

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

A single four-word sentence with no filler, so nothing is wasted. However, the brevity is under-specification rather than efficient packing — there is room to add routing and scoping detail without bloat.

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

Completeness2/5

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

For a list tool with no output schema, the description should say at least what a health monitor record represents and how it relates to load balancers and pools. As written, an agent cannot tell the result shape or the relationship to sibling ELB list tools.

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 100%, with both 'region' and 'limit' documented, so the baseline of 3 applies. The description contributes no additional meaning about whether region is mandatory scoping or how limit interacts with pagination.

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?

States a specific verb (List) and a specific resource (ELB health monitors), which distinguishes it from generic load-balancer siblings like hcloud_list_load_balancers or hcloud_list_pools. It stops short of clarifying the parent object (listener/pool) health monitors hang off of, which is where the real ambiguity lies.

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?

No guidance on when to use this versus hcloud_list_pools, hcloud_list_members, or hcloud_show_load_balancer_topology, and no prerequisites such as needing a load balancer or pool ID. The agent must infer the usage context entirely.

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

hcloud_list_imageshcloud_list_imagesA
Read-onlyIdempotent

List available IMS images (essential for finding image_ref for ECS/CCE/AS)

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
statusNoFilter by status: active, queued, saving, deleted, killed
os_typeNoFilter by OS type: Linux, Windows, Other
platformNoFilter by OS platform: Ubuntu, CentOS, Debian, EulerOS, etc.
imagetypeNoFilter by type: gold (public), private, shared, market
architectureNoFilter by architecture: x86 or arm

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds only the downstream-consumption context and says nothing about pagination behavior, default result size, or whether the list is region-scoped beyond the required parameter.

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 the resource first and the motivating use case second. No filler or redundant restatement of the tool 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 seven-parameter list tool with no output schema, the description does not indicate what fields come back (image IDs, names, status) or how results are ordered/limited, which matters since the stated goal is extracting an image_ref. Adequate but leaves a real gap for the caller.

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 100%, so all seven parameters (including the filter enums for status, os_type, imagetype, architecture) are already documented in the schema. The description adds no filtering semantics or format hints beyond that, so the baseline 3 applies.

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?

States a specific verb and resource ('List available IMS images') and adds the downstream purpose (finding image_ref for ECS/CCE/AS). It is clearly distinguishable from the sibling hcloud_show_image by the list-vs-show verb, though it never names that sibling explicitly.

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

Usage Guidelines3/5

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

The parenthetical gives a concrete use case (locating image_ref before creating ECS/CCE/AS resources), which implies when to call it. However, there is no explicit guidance on when to prefer hcloud_show_image or hcloud_list_os_versions instead, so the agent must infer the boundary.

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

hcloud_list_keypairshcloud_list_keypairsC
Read-onlyIdempotent

List SSH key pairs

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered structurally. The description adds nothing beyond them – no note on pagination, whether all key pairs are returned regardless of region scoping, or result ordering.

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

Conciseness3/5

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

Three words with zero padding, so nothing is wasted. However, brevity crosses into under-specification for a cloud API tool, leaving no room for the context a caller would want; it is efficient but thin.

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?

The tool is simple – one required string parameter, no output schema, and annotations covering its read-only nature – so the minimal description is not crippling. Still, the meaning of 'region' and the scope of results are left unstated, which is a real gap for an open-world listing call.

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 100%, but the sole parameter's schema description is just "Region", which is nearly as terse as the tool description. The description does not compensate by explaining whether region filters results or is only a routing/endpoint selector. Per the high-coverage baseline, 3 is the appropriate ceiling here.

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?

"List SSH key pairs" gives a specific verb (list) and a specific resource (SSH key pairs), so the agent knows exactly what the tool returns. Differentiation from siblings is unnecessary here since no other sibling deals with key pairs, though the description itself does no explicit routing.

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 guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. The only implied usage is the generic 'list a collection', which the agent must infer from the verb alone.

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

hcloud_list_kms_key_detailhcloud_list_kms_key_detailB
Read-onlyIdempotent

Get details of a specific KMS key (state, creation date, etc.)

NameRequiredDescriptionDefault
key_idYesKMS key ID
regionYesRegion

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds value by naming the returned fields (state, creation date, etc.), which matters given there is no output schema, but it says nothing about behavior on a nonexistent key, cross-region lookup semantics, or permissions required.

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?

A single short sentence with the resource and payload type front-loaded, no filler. The trailing 'etc.' slightly weakens precision but costs little space.

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 two-parameter read tool with annotations, this is close to adequate, and the parenthetical field list partly compensates for the missing output schema. It falls short on region/key_id semantics and failure behavior, which are the main things an agent could get wrong here.

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 100% with only two required parameters, so the baseline is 3. The description adds no meaning beyond the schema — it does not explain that region selects the endpoint and must match the key's region, nor the key_id format.

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?

Names a specific verb and resource: 'Get details of a specific KMS key', which resolves the ambiguity of the misleading tool name (hcloud_list_kms_key_detail sounds like a list). It does not explicitly distinguish itself from the sibling hcloud_list_kms_keys, leaving the agent to infer that this is the single-key variant.

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

Usage Guidelines3/5

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

Usage is only implied by the phrase 'a specific KMS key' — the agent can infer this is for retrieving one key once its ID is known. There is no explicit when-to-use guidance, no statement of when to prefer hcloud_list_kms_keys instead, and no prerequisite or error-condition notes.

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

hcloud_list_kms_keyshcloud_list_kms_keysC
Read-onlyIdempotent

List KMS encryption keys

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds nothing beyond that — no note on pagination behavior, whether results are region-scoped, or what happens when limit is omitted.

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

Conciseness3/5

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

The single phrase is free of waste and front-loaded, but it is so terse that it omits orientation an agent would want for a paginated, region-required list call.

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

Completeness2/5

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

For a simple two-parameter list tool this is borderline adequate, but it never mentions that region is required nor how limit affects results. With no output schema, the description could have said more about the shape of the returned key set.

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 100%, so both parameters (region, limit) are already documented. The description adds no meaning about region scoping or limit semantics, which is acceptable given the schema carries the load, but is baseline at best.

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 clear verb and resource ("List KMS encryption keys"), so an agent knows exactly what it retrieves. It does not explicitly distinguish itself from the sibling hcloud_list_kms_key_detail, though the naming implies the difference.

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 guidance on when to use this versus hcloud_list_kms_key_detail, nor any prerequisite or context statement. The agent must infer usage entirely from the name and schema.

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

hcloud_list_l7_policieshcloud_list_l7_policiesA
Read-onlyIdempotent

List ELB URL-based routing policies

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
listener_idNoFilter by listener ID

TDQS

A3.5/5.0
Behavior3/5

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

The annotations already establish a read-only, idempotent, open-world operation, while the description adds the ELB URL-routing scope. It does not disclose pagination or truncation behavior, or whether omitting listener_id returns all policies in the region.

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?

The description is a single front-loaded phrase with no redundant wording. It communicates the operation and resource efficiently without unnecessary implementation detail.

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 three-parameter read-only list tool, the description and fully documented schema are sufficient for a basic invocation. Nevertheless, the absence of result-scope and pagination context, combined with no output schema, leaves some uncertainty about broader or truncated responses.

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 100%, with limit, region, and listener_id each documented, so the baseline score applies. The description adds no further parameter formats, defaults, or explanation of how the filters interact.

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 uses a clear verb and resource: "List ELB URL-based routing policies." Expanding L7 into ELB URL-based routing makes the resource understandable, but it does not explicitly distinguish the tool from related listener, load-balancer, or other policy-listing siblings.

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

Usage Guidelines3/5

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

Usage is implied for agents that need to inspect ELB URL-routing policies, and the schema suggests optional listener-specific filtering. However, the description gives no explicit when-to-use guidance, prerequisites, or alternatives for related ELB resources.

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

hcloud_list_listenershcloud_list_listenersC
Read-onlyIdempotent

List ELB listeners

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
loadbalancer_idNoFilter by load balancer ID

TDQS

C2.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered structurally. The description adds nothing beyond that: it does not mention pagination behavior for 'limit', whether listeners from all load balancers are returned when loadbalancer_id is omitted, or the shape of the result.

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

Conciseness3/5

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

It is a single front-loaded phrase with zero wasted words, but that brevity is closer to under-specification than to disciplined concision. Nothing is redundant because nothing is present.

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

Completeness2/5

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

For a three-parameter listing tool with a required region and no output schema, the agent still needs to know whether listeners can be listed across all load balancers, how 'limit' behaves by default, and what fields come back. None of that is covered, so the definition is thin relative to the tool's complexity.

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 100%, so every parameter (limit, region, loadbalancer_id) is already documented in the schema, which sets the baseline at 3. The description does not clarify the interaction between region and loadbalancer_id or explain default page size, so it adds no meaning beyond the schema.

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

Purpose3/5

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

The phrase 'List ELB listeners' names a verb and a resource, and the 'ELB' qualifier distinguishes it from generic listener listings. However, it is essentially the tool name restated with an acronym expanded, and it offers no differentiation from nearby siblings such as hcloud_list_load_balancers, hcloud_list_pools, or hcloud_list_l7_policies.

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

Usage Guidelines1/5

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

There is no guidance on when to use this tool, when to prefer hcloud_list_load_balancers or hcloud_show_load_balancer, or whether a load balancer must already be selected. The agent must infer all routing decisions from the name alone.

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

hcloud_list_load_balancershcloud_list_load_balancersC
Read-onlyIdempotent

List ELB load balancers

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no mention of result scoping by region, pagination/limit behavior, or what happens when the region has no load balancers. For a read tool the bar is lower, but zero added context earns a 2.

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

Conciseness3/5

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

The four-word phrase contains no filler and is inherently front-loaded, so there is nothing to trim. But its brevity comes from omission rather than efficiency — the sentence is too thin to convey scope or behavior, which places it below a well-sized one-liner.

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

Completeness2/5

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

There is no output schema and no return-value description, and the required region scoping plus limit-based pagination go unmentioned, so an agent cannot tell how results are bounded or what a result item looks like. For a list tool with a required parameter and no output schema, more explanation is warranted.

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 100%, with both 'region' (required) and 'limit' documented in the schema, so the description does not need to restate them. However, it adds no meaning beyond the schema — e.g. whether the list is scoped to the required region or whether 'limit' truncates silently. Baseline 3 applies when the schema does the heavy lifting.

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 pairs a specific verb (List) with a specific resource (ELB load balancers), so an agent immediately knows this is a collection-enumeration call for elastic load balancers. It does not differentiate from close siblings such as hcloud_show_load_balancer or hcloud_list_listeners, but the core purpose is unambiguous.

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 at all — nothing says to call this before hcloud_show_load_balancer to discover IDs, nor any prerequisite about having a region/project context. The only usage signal an agent gets is the tool name itself, which is not misleading but also not helpful.

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

hcloud_list_lts_groupshcloud_list_lts_groupsB
Read-onlyIdempotent

List LTS (Log Tank Service) log groups

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
regionYesRegion

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered by structured data. The description adds only the acronym expansion and says nothing about pagination behavior, result caps, or the fact that the call is region-scoped. With annotations carrying the behavioral load, this is adequate but thin.

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?

A single front-loaded sentence with no filler; the parenthetical acronym expansion is the one addition and it earns its place. It is efficient, though bordering on under-specified rather than maximally informative.

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 read-only list tool with full schema coverage and no output schema, the definition is just barely sufficient. The missing pieces are how this collection relates to LTS streams and what the region parameter means for reachability, which an agent would need to chain calls 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 100%, with limit, offset and region all documented in the schema, so the baseline of 3 applies. The description adds no meaning beyond the schema — not even which region values are valid or how limit/offset interact.

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?

States a specific verb ('List') and resource ('LTS log groups') and expands the LTS acronym, so the agent knows exactly what entity is returned. It does not explicitly distinguish this from the sibling hcloud_list_lts_streams, leaving the groups-vs-streams boundary implicit.

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 mention of when to prefer streams or another sibling, and no statement of prerequisites. The only hint that a region is mandatory comes from the schema's required list, not the description.

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

hcloud_list_lts_streamshcloud_list_lts_streamsC
Read-onlyIdempotent

List LTS (Log Tank Service) log streams in a log group

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
regionYesRegion
log_group_idNoLog group ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds no behavioral context beyond that—nothing on pagination behavior, default limits, whether omitting log_group_id lists all streams, or result ordering.

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?

A single front-loaded sentence with no filler. It is efficient, though the extreme brevity leaves no room for the routing or scoping details an agent would benefit from.

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 list tool with full schema coverage and annotations carrying the safety profile, the description is minimally adequate. It is missing the log_group_id optionality nuance and any pagination context, which matter given the open-world listing behavior.

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 100%, so the schema already documents all four parameters, and the baseline of 3 applies. The description mentions the log-group scope but does not clarify that log_group_id is optional or how limit/offset interact with the results.

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?

States a specific verb and resource (list log streams) and adds the LTS expansion plus the log-group scope. An agent can distinguish it from hcloud_list_lts_groups, though the phrase 'in a log group' sits slightly at odds with log_group_id being optional in 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 Guidelines2/5

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

No guidance on when to use this versus hcloud_list_lts_groups or how to obtain a log_group_id first. The usage is only implied by the noun phrase; there are no exclusions or prerequisites stated.

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

hcloud_list_membershcloud_list_membersB
Read-onlyIdempotent

List backend members in an ELB pool

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
pool_idYesPool ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered, and the description adds nothing beyond that. It says nothing about pagination behavior implied by the limit parameter, whether members include health status, or the shape of results for a tool with no output schema.

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?

A single front-loaded sentence with zero padding. Nothing is wasted, though the extreme terseness leaves the definition doing no extra work.

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 read-only list tool with full schema coverage and annotations carrying the safety profile, the basics are covered. The remaining gaps — pagination semantics and what a member record contains — matter more here because there is no output schema to fall back on.

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 100%, so the baseline is 3. The description only reinforces pool_id via the phrase 'in an ELB pool'; it adds no meaning for region (whether it must match the pool's region) or limit (page size vs. cap).

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?

States a specific verb (List) and resource (backend members) scoped to an ELB pool, which separates it from sibling hcloud_list_pools that lists the pools themselves. It does not name a sibling or explain the relationship explicitly, so it stops short of 5.

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

Usage Guidelines3/5

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

Implicit usage is clear from 'in an ELB pool' — the agent knows a pool_id is a prerequisite and that this is the drill-down from a pool listing. However, there is no explicit when-to-use versus hcloud_show_load_balancer_topology or other pool-adjacent tools, and no exclusions or ordering guidance.

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

hcloud_list_metricshcloud_list_metricsC
Read-onlyIdempotent

List CES (Cloud Eye) metrics

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
namespaceNoMetric namespace (e.g. SYS.ECS)

TDQS

C2.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety and idempotency profile is covered without the description. The description adds no behavioral context of its own, such as whether the listing is scoped to a namespace or how large result sets are handled, but it also does not contradict anything.

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?

The definition is a single short sentence with zero filler, so it is maximally front-loaded. Its brevity is efficient but tips into under-specification for a tool with three parameters and several nearby siblings.

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

Completeness2/5

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

For a list tool sitting next to show_metric_data and alarm tools, the description omits what a returned metric is, how namespace scoping works, and when to prefer it over siblings. With no output schema to fall back on, the description leaves meaningful gaps that the schema alone cannot fill.

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 100%, so all three parameters (limit, region, namespace) are already documented, including a namespace example. The description adds no meaning beyond the schema, which meets the baseline of 3 for fully covered schemas rather than exceeding it.

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

Purpose3/5

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

"List CES (Cloud Eye) metrics" gives a verb and a resource and expands the CES acronym, so the domain is identifiable. However, it does not distinguish this from close siblings such as hcloud_show_metric_data or hcloud_list_alarms, so an agent cannot tell from the description which of them retrieves metric definitions versus metric data points.

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 statement of when to use this tool, no prerequisites, and no named alternative despite hcloud_show_metric_data being an obvious adjacent choice. The agent must infer usage entirely from the name and the required region parameter.

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

hcloud_list_mrs_clustershcloud_list_mrs_clustersC
Read-onlyIdempotent

List MRS (MapReduce Service) clusters

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPage offset
regionYesRegion

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so safety and idempotency are covered structurally. The description adds no behavioral context at all — no pagination behavior, no result-set size, no ordering, no error conditions for an invalid region.

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?

A single short sentence with zero filler and the resource front-loaded. It is efficient, but the brevity reflects under-specification rather than disciplined editing.

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

Completeness2/5

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

For a paginated list tool with no output schema, an agent needs to know what fields come back and how paging behaves; neither is described. With only a title-equivalent sentence, the definition is too thin to call the tool confidently beyond its trivial case.

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 100% (limit, offset, region each documented), so the schema carries the parameter burden. The description adds no extra meaning about region scoping or how limit/offset interact with the listing, which is acceptable but unremarkable given full coverage.

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

Purpose3/5

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

The description states the verb and resource (list MRS clusters) and expands the acronym MRS to MapReduce Service, which is helpful. However, it adds essentially nothing beyond the tool name, and gives no indication of scope (project-wide? region-scoped?) or how it differs from hcloud_show_mrs_cluster or hcloud_list_mrs_flavors.

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 mention of prerequisites (e.g. region required), and no routing to alternatives such as hcloud_show_mrs_cluster for details on a single cluster. The only reason a reader can infer usage is the literal word 'List'.

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

hcloud_list_mrs_flavorshcloud_list_mrs_flavorsA
Read-onlyIdempotent

List available MRS (MapReduce Service) cluster flavors/specs

NameRequiredDescriptionDefault
regionYesRegion

TDQS

A3.6/5.0
Behavior3/5

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

The annotations establish that this is a read-only, idempotent, open-world operation, and the description is consistent with them. Beyond indicating availability, it adds little behavioral context about live service lookups, credentials, pagination, or region-specific results.

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?

The single compact sentence is front-loaded with the operation and resource. The acronym expansion and "flavors/specs" terminology are useful, with no filler or repetition.

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 simple one-parameter read-only listing tool, the description, schema, and annotations provide enough information for a basic correct invocation. Remaining gaps include valid region identifiers and, absent an output schema, any indication of returned specification fields or pagination behavior.

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?

The sole parameter, region, is required and already documented in the schema, giving full schema description coverage. The description does not add region-code syntax, examples, or explain how the region affects flavor availability.

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 clearly pairs the verb "List" with the resource "MRS cluster flavors/specs," and expanding MRS as MapReduce Service adds useful context. It does not explicitly distinguish the tool from hcloud_list_mrs_clusters or other service-specific flavor-listing siblings.

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

Usage Guidelines3/5

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

Discovering available MRS cluster specifications implies use before selecting or provisioning a cluster configuration. However, there is no explicit when-to-use guidance or direction to alternatives such as hcloud_list_mrs_clusters for existing clusters.

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

hcloud_list_nat_gateway_dnat_ruleshcloud_list_nat_gateway_dnat_rulesC
Read-onlyIdempotent

List DNAT rules on a NAT gateway

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
nat_gateway_idNoNAT gateway ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered outside the description. The description adds nothing beyond that: no pagination behavior, no indication of what happens when nat_gateway_id is omitted, and no note that results may be empty.

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?

A single front-loaded sentence with zero filler, which is appropriate sizing for a simple list tool. It is arguably under-specified rather than padded, so conciseness itself is not the weakness.

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 three-parameter read-only list tool with no output schema, the definition is minimally viable but leaves real gaps: pagination via limit, whether nat_gateway_id is optional or effectively required, and the shape of returned rules are all unstated.

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 100%, so the baseline is 3; the schema already documents region, nat_gateway_id and limit, albeit with one-word labels. The description adds no meaning beyond the schema, for example whether nat_gateway_id acts as a filter or is effectively required despite being optional.

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?

States a specific verb plus resource: 'List DNAT rules on a NAT gateway'. The DNAT qualifier implicitly separates it from hcloud_list_nat_gateway_snat_rules, so an agent can distinguish it from nearby siblings without opening the schema, though no sibling is named explicitly.

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 mention of prerequisites, and no pointer to alternatives such as hcloud_list_nat_gateway_snat_rules or hcloud_show_nat_gateway. The agent must infer usage entirely from the tool name.

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

hcloud_list_nat_gatewayshcloud_list_nat_gatewaysC
Read-onlyIdempotent

List NAT gateways

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered; the description adds nothing beyond that. It does not disclose pagination behavior tied to limit, whether results are region-scoped, or how many gateways are typically returned.

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

Conciseness3/5

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

Three words with zero waste and nothing to trim, but the brevity comes from under-specification rather than disciplined editing. There is no structure to front-load because there is no content.

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 read-only list tool with full schema coverage, annotations, and no output schema, the minimal description is not disqualifying. Still, nothing tells the agent that region is mandatory to avoid an error, which is the one thing a caller most needs.

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 100%, so both the required region and the optional limit are documented in the schema itself, establishing the baseline of 3. The description contributes no additional meaning about parameter semantics, but the schema already carries that burden.

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

Purpose2/5

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

"List NAT gateways" merely expands the tool name hcloud_list_nat_gateways into prose; it is a tautological restatement rather than a distinct statement of what the tool returns or its scope. It gives no differentiation from siblings such as hcloud_show_nat_gateway or hcloud_list_nat_gateway_snat_rules.

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 mention of the required region scoping, and no pointer to alternatives like hcloud_show_nat_gateway for single-gateway lookup or the SNAT/DNAT rule listers. An agent must infer everything about selection from the name alone.

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

hcloud_list_nat_gateway_snat_ruleshcloud_list_nat_gateway_snat_rulesC
Read-onlyIdempotent

List SNAT rules on a NAT gateway

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
nat_gateway_idNoNAT gateway ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond them — no pagination behavior, no default limit, no indication of what happens when nat_gateway_id is absent despite being optional.

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?

A single short sentence with no filler and the resource front-loaded. It is efficient, though the terseness edges into under-specification rather than tight clarity.

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

Completeness2/5

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

For a list tool with no output schema, the description should at least clarify the optional scoping parameter and result/pagination expectations. It leaves the ambiguity around nat_gateway_id being optional in a tool described as operating 'on a NAT gateway' entirely unresolved.

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 100%, so the three parameters are already documented, albeit tersely ('Region', 'Max results', 'NAT gateway ID'). The description adds no format, default, or scoping semantics, so the baseline 3 applies.

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?

States a specific verb ('List') and resource ('SNAT rules on a NAT gateway'), which implicitly separates it from hcloud_list_nat_gateway_dnat_rules and hcloud_list_nat_gateways. It never names those siblings explicitly, so differentiation relies on the agent inferring from the noun.

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 guidance on when to use this versus listing gateways or DNAT rules, no mention that region is mandatory, and no note about whether nat_gateway_id may be omitted to list across all gateways. The reader must fall back entirely on the schema.

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

hcloud_list_node_poolshcloud_list_node_poolsB
Read-onlyIdempotent

List node pools in a CCE cluster

NameRequiredDescriptionDefault
regionYesRegion
cluster_idYesCluster ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds only the cluster-scoping context and says nothing about result volume, pagination, or whether an empty list is possible for a cluster with no pools — minimal value on top of structured data.

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?

A single front-loaded sentence with no filler or redundancy; nothing needs trimming. It is arguably too terse rather than bloated, which is penalized under contextual completeness instead.

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 two-parameter read-only list tool with full schema coverage and clear annotations, this is close to adequate. The remaining gap is that with no output schema, the agent gets no signal about what the returned node pool objects contain or how large the result may be.

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 100%, so the baseline is 3. However, the schema descriptions are bare labels ('Region', 'Cluster ID') and the prose does not enrich them — no format hints, no note on whether cluster_id must belong to the given region.

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 ('List node pools') plus a scoping qualifier ('in a CCE cluster'), which separates it cleanly from unrelated list tools such as hcloud_list_pools (ELB) or hcloud_list_cce_nodes. It stops short of naming the closest siblings (hcloud_show_node_pool, hcloud_list_cce_clusters), so differentiation is by noun alone.

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

Usage Guidelines3/5

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

Usage is only implied: the agent can infer it needs an existing CCE cluster (region + cluster_id) before calling. There is no explicit statement of when to prefer this over hcloud_show_node_pool for a single pool or over hcloud_list_cce_nodes for node-level detail.

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

hcloud_list_oms_sync_taskshcloud_list_oms_sync_tasksB
Read-onlyIdempotent

List OMS (Object Storage Migration Service) sync tasks

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

The annotations already communicate that the operation is read-only, idempotent, and open-world. The description adds no behavioral context beyond those fields, such as result scope, pagination behavior, permissions, or whether tasks from all statuses are included.

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?

The single sentence is concise, front-loaded, and contains no unnecessary wording. Expanding the OMS acronym is a useful inclusion despite the brevity.

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?

The simple schema and safety annotations make the definition minimally sufficient for invocation. However, with no output schema, the lack of detail about returned task information and the ambiguous distinction from hcloud_list_oms_tasks leave noticeable gaps.

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 100%, so region, limit, and offset are already documented and the baseline score applies. The description adds no further meaning, such as region constraints, pagination defaults, or recommended limit values.

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 clearly states the verb and resource: listing OMS sync tasks, and usefully expands OMS as Object Storage Migration Service. It does not explicitly clarify how these sync tasks differ from the tasks returned by sibling hcloud_list_oms_tasks.

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 explicit guidance on when to use this tool or which alternative to choose for other OMS task queries. In particular, it does not distinguish itself from hcloud_list_oms_tasks or direct agents to hcloud_show_oms_task for individual task details.

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

hcloud_list_oms_taskshcloud_list_oms_tasksB
Read-onlyIdempotent

List OMS (Object Storage Migration Service) tasks

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion
statusNoFilter by task status

TDQS

B3.3/5.0
Behavior2/5

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

The annotations already establish that the operation is read-only, idempotent, and open-world. The description adds no behavioral context beyond those fields, such as result scope, pagination behavior, or status-filtering semantics.

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?

The single sentence is direct, front-loaded, and contains no unnecessary wording. Expanding the OMS acronym makes the terse description informative without adding clutter.

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 four-parameter read-only list operation with fully described inputs, the description is minimally adequate. It remains incomplete for confident selection because it does not differentiate OMS tasks from sync tasks, and it provides no additional result or filtering context despite the absence of an output schema.

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 100%, so region, limit, offset, and status are already documented and the baseline score applies. The description adds no parameter guidance, such as valid status values or how limit and offset interact.

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 clearly states the verb and resource—listing OMS tasks—and usefully expands OMS as Object Storage Migration Service. It does not distinguish these tasks from the sibling sync-task listing or the single-task detail tool.

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

Usage Guidelines3/5

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

An agent can infer that this tool is appropriate when it needs a collection of OMS tasks. However, there is no explicit guidance on when to use it instead of hcloud_list_oms_sync_tasks or hcloud_show_oms_task.

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

hcloud_list_organizations_accountshcloud_list_organizations_accountsC
Read-onlyIdempotent

List Organizations accounts

NameRequiredDescriptionDefault
regionYesRegion
parent_idNoParent OU ID

TDQS

C2.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so safety is covered. The description adds nothing beyond that — no note on pagination, whether results are scoped to the caller's organization, or how region affects the result set.

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

Conciseness2/5

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

The single phrase is free of waste but is under-specified rather than concise; there is no front-loaded statement of scope or behavior to anchor the call. It reads as a label, not a definition.

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

Completeness2/5

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

For a two-parameter, no-output-schema list tool with annotations covering safety, the definition still leaves the core question unanswered: what an "account" is in this Organizations hierarchy and how region and parent_id constrain results. That is a material gap for correct invocation.

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 100% with only two parameters (region required, parent_id optional), so the schema carries the burden and the baseline of 3 applies. The description does not clarify that parent_id is an OU filter or what a valid region value looks like.

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

Purpose2/5

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

"List Organizations accounts" essentially restates the tool name hcloud_list_organizations_accounts with the prefix stripped; it adds no scope, filter, or return-shape detail. It does not distinguish this tool from the adjacent hcloud_list_organizations_ous sibling beyond the trailing noun.

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 statement of prerequisites or required permissions, and no mention of alternatives such as listing OUs first to obtain a parent_id. The agent must infer usage entirely from the name.

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

hcloud_list_organizations_oushcloud_list_organizations_ousC
Read-onlyIdempotent

List Organizations organizational units (OUs)

NameRequiredDescriptionDefault
regionYesRegion
parent_idNoParent OU ID

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that – no note on whether results are hierarchical, paginated, or scoped to an account/region.

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

Conciseness3/5

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

It is a single short phrase with no wasted words, but it is under-specified rather than concise. The awkward 'Organizations organizational units' construction could be tightened and front-loaded with the filtering behavior.

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

Completeness2/5

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

For a simple two-parameter list tool with full schema coverage and annotations, the definition is barely adequate. It leaves unclear whether the call returns a flat list or a tree, and whether parent_id is required for meaningful results.

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 100%, so both region and parent_id are documented in the schema and the baseline of 3 applies. The description fails to mention that parent_id filters to child OUs, which would have been the one piece of meaning worth adding.

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

Purpose3/5

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

Names a specific verb (List) and resource (Organizations organizational units/OUs), but the phrasing is garbled and does nothing to distinguish it from siblings such as hcloud_list_organizations_accounts. An agent can infer it enumerates OUs, but not what an OU represents in this API.

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 mention of the region prerequisite, and no statement about whether parent_id narrows the listing or is optional for a full enumeration. Alternatives are not referenced.

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

hcloud_list_os_versionshcloud_list_os_versionsB
Read-onlyIdempotent

List available IMS OS versions (key for image selection)

NameRequiredDescriptionDefault
regionYesRegion

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so safety and idempotency are covered. The word 'available' hints results are filtered by region, but the description adds little beyond the annotations and does not describe return volume or ordering.

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?

A single short sentence with the purpose front-loaded and no wasted words. Its brevity is appropriate for a one-parameter list tool, though it borders on terse.

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 read-only list tool with full schema coverage and annotations carrying the safety profile, the description is minimally sufficient. It leaves out whether results are scoped per region or what the entries look like, which would help an agent construct image selection follow-ups.

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 100% and the single 'region' parameter is documented in the schema, so the baseline is 3. The description adds no format or constraint detail about region beyond what the schema already provides.

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?

States a specific verb and resource: list available IMS OS versions. The parenthetical 'key for image selection' clarifies what the returned versions are used for, distinguishing it from generic image listing siblings like hcloud_list_images. It does not explicitly name a sibling it is not, but the resource naming is specific enough to disambiguate.

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

Usage Guidelines3/5

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

The parenthetical 'key for image selection' implies the context in which to call it (when choosing an image/OS), but there is no explicit when-to-use versus alternatives guidance, no prerequisite statement, and no note about when to prefer hcloud_list_images instead.

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

hcloud_list_policieshcloud_list_policiesB
Read-onlyIdempotent

List IAM policies (system and custom)

NameRequiredDescriptionDefault
limitNoMax results

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety and mutability are covered. The description contributes only the system/custom scope note and says nothing about result volume, pagination defaults, or how the single limit parameter affects returns. With annotations carrying the behavioral load, a 3 is appropriate.

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?

A single front-loaded clause with the resource and its scope; nothing is padded. It is slightly under-informative rather than verbose, which keeps it efficient but leaves no room for routing guidance.

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 one-parameter, read-only list tool with full annotation coverage, the description is minimally sufficient to call correctly. It falls short on disambiguating against the numerous sibling policy-listing tools, which is the main open question an agent would have here.

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 100% and the sole parameter (limit) is documented as 'Max results'. The description adds no format, default, or maximum guidance beyond the schema, so the baseline of 3 applies.

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?

States a specific verb (List) and resource (IAM policies), and adds scope detail by noting both system and custom policies are returned. This separates it from the many other '*_policies' siblings such as hcloud_list_cbr_policies and hcloud_list_scaling_policies by naming the IAM domain, though it does not explicitly contrast with hcloud_list_user_policies, which covers a related resource.

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 statement of when to use this tool versus alternatives, no prerequisites, and no mention of what it does not cover. The 'system and custom' phrase implies it returns everything without filtering, but the agent must infer that rather than being told.

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

hcloud_list_poolshcloud_list_poolsB
Read-onlyIdempotent

List ELB backend server groups (pools)

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered without description help. The description adds nothing about pagination, result ordering, or what 'pools' contain, so it contributes no behavioral context beyond the structured fields.

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 short sentence with the resource front-loaded and zero filler; nothing is redundant. Its brevity is achieved without obscuring the resource identity, thanks to the clarifying parenthetical.

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 two-parameter read-only list tool with rich annotations and no output schema, this is minimally adequate. An agent knows what is listed but not whether results are scoped to a specific load balancer or how to page past limit, leaving a real gap for a list operation.

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 100% with only two parameters (limit, region), so the schema already documents both fields. The description adds no meaning about region scoping or how limit interacts with pagination, so the baseline 3 applies.

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 plus resource: "List ELB backend server groups (pools)". The parenthetical disambiguates the otherwise vague tool name 'pools' (which could be node pools or scaling pools) toward ELB backend server groups, which is genuine value. It stops short of naming a sibling such as hcloud_list_load_balancers or hcloud_list_node_pools to positively differentiate.

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 statement of when to use this tool versus the many sibling list tools, no mention that a region is mandatory, and no note that a load balancer context may be needed. The agent must infer the use case entirely from the one-line purpose.

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

hcloud_list_projectshcloud_list_projectsB
Read-onlyIdempotent

List IAM projects

NameRequiredDescriptionDefault

No parameters

TDQS

B3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered by structured data. The description adds nothing beyond that: no statement about result volume, whether the list is scoped to the caller's credentials/domain, or whether pagination applies. For an open-world listing call, the caller is left to discover the scope by trial.

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?

Four words, front-loaded with the verb, with no filler or redundant restatement of the title. Nothing could be trimmed without losing content.

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 zero-parameter list tool with no output schema, the description needs to convey what comes back and how broad the result is. It conveys neither, but the tool is simple enough that an agent can still call it correctly on the first attempt, so this is a noticeable rather than fatal gap.

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 tool takes zero parameters, which is the baseline-4 case; there are no arguments whose meaning could be clarified. The description does not need to explain any input, though it could have noted that no filters exist.

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

Purpose3/5

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

"List IAM projects" gives a specific verb and a qualified resource, so the basic action is clear. But the sibling set contains many other project-listing tools (hcloud_list_sms_migration_projects, hcloud_list_codearts_projects, hcloud_list_dataarts_workspaces), and the description does nothing to establish that this one is the IAM/identity-domain project list rather than any of those.

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 mention of prerequisites, and no reference to any alternative sibling tool. The agent must infer from the name alone that this is the entry point for IAM project discovery.

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

hcloud_list_public_ipshcloud_list_public_ipsC
Read-onlyIdempotent

List elastic public IPs

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing further: it does not say whether results are region-scoped, paginated, or what fields come back, so beyond the annotations it contributes no behavioral context.

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?

Four words, front-loaded with the verb, with zero filler or redundancy. It is efficient, though the brevity comes at the cost of the information gaps scored elsewhere.

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

Completeness2/5

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

For a simple two-parameter read tool with no output schema, the description still omits that a region is required and whether the list is filtered or truncated. It is not misleading, but an agent cannot call it correctly without reading the schema.

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 100%, with both `region` (required) and `limit` documented, so the baseline is 3. The description does not clarify whether region is mandatory or how limit interacts with pagination, adding no meaning beyond the schema.

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

Purpose3/5

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

"List elastic public IPs" gives a specific verb (list) plus resource (elastic public IPs), so the basic operation is legible. However, it offers no differentiation from the many similar list siblings, notably hcloud_show_public_ip and hcloud_list_bandwidths, which an agent must choose between.

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 mention of when a single-IP lookup (hcloud_show_public_ip) is preferable, and no stated prerequisites. The agent must infer everything from the tool name alone.

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

hcloud_list_rds_backupshcloud_list_rds_backupsC
Read-onlyIdempotent

List RDS backups

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
instance_idYesRDS instance ID (required)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds no behavioral context beyond repeating 'List' and does not mention pagination, filtering, or what backup information is returned.

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?

The description is a single front-loaded phrase with no filler or unnecessary wording. It is perhaps too terse for the tool's parameterization, but it is structurally clean and wastes no words.

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 read-only list tool with full schema coverage and useful annotations, this is minimally adequate. However, it does not clarify that backups are scoped by region and instance, nor does it describe pagination or result shape, leaving the agent to rely entirely on the schema.

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 100%, so all three parameters are documented in the schema itself. The description adds no additional meaning about limit behavior or how region and instance_id constrain the result, so the baseline of 3 is appropriate.

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 states a clear verb and resource: 'List RDS backups'. It is specific enough to understand the operation, but it does not distinguish this tool from other backup-listing siblings such as hcloud_list_cbr_backups or clarify that backups are scoped to an RDS instance.

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 guidance on when to use this tool, what prerequisites apply, or how it relates to alternatives. The required instance_id and region parameters imply per-instance usage, but the description does not state that context or route the agent to related tools.

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

hcloud_list_rds_datastoreshcloud_list_rds_datastoresB
Read-onlyIdempotent

List available RDS DB engine versions

NameRequiredDescriptionDefault
regionYesRegion
database_nameYesDB engine: MySQL, PostgreSQL, SQLServer, MariaDB

TDQS

B3.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile needs no restating. The description adds nothing beyond that baseline: it doesn't say the result is region-scoped, whether the list is exhaustive, or that results depend on the engine named in database_name.

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 short, front-loaded sentence with zero filler. Nothing redundant or padded; the only criticism is that it is too sparse rather than too long.

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 two-parameter, read-only list tool with full schema coverage and complete annotations, this is adequate but thin. It omits which cloud the RDS service belongs to and how it relates to the other RDS listing siblings, leaving the agent to infer the surrounding workflow.

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 100%, and the schema itself already defines 'region' and 'database_name' (including the engine enum values), so the baseline applies. The description adds no extra meaning such as accepted region formats or whether database_name is case-sensitive or filter-only.

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 clear verb and resource ('List ... RDS DB engine versions') and usefully disambiguates the opaque tool name 'datastores' into 'engine versions', which separates it from siblings like hcloud_list_rds_flavors and hcloud_list_rds_storage_types. It doesn't explicitly name those siblings, so it stops short of full differentiation.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can infer this is for discovering valid engine versions before provisioning an RDS instance. There is no explicit when-to-use/when-not, no mention of the region scoping, and no pointer to hcloud_list_rds_flavors or hcloud_list_gaussdb_datastores as related lookups.

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

hcloud_list_rds_flavorshcloud_list_rds_flavorsC
Read-onlyIdempotent

List RDS instance flavor/spec options

NameRequiredDescriptionDefault
regionYesRegion
version_nameNoDatabase version filter
database_nameYesDB engine: MySQL, PostgreSQL, SQLServer, MariaDB

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered without the description. The description adds nothing further: no note that results depend on region plus engine plus optional version, no mention of result size or pagination, and no statement that an invalid region/engine combination yields an empty list rather than an error.

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?

A single five-word sentence with zero filler, and the resource is front-loaded immediately after the verb. Its brevity borders on under-specification, but nothing written is wasted.

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

Completeness2/5

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

For a simple read-only list tool with three fully documented parameters, the essentials are covered by schema and annotations. However, nothing explains the filter model (region and engine required, version optional) or what the returned flavor objects are used for, which matters because this tool's output feeds into instance creation.

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 100%, so region, database_name and version_name are already documented, and the description does not need to repeat them. It adds no semantics beyond the schema — for example, that version_name is optional and defaults to all versions — so the baseline of 3 applies.

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?

"List RDS instance flavor/spec options" states a specific verb (list) and resource (RDS flavors), and the word "spec" clarifies that these are sizing options rather than instances. It does not distinguish itself from adjacent siblings such as hcloud_list_rds_storage_types or hcloud_list_dcs_flavors, which an agent must still infer.

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 guidance on when to call this versus the other RDS list tools (datastores, storage types, backups) or versus flavors from other services. The typical usage pattern — resolving a flavor_id before creating an instance — is never stated, so the agent must infer it from the tool name alone.

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

hcloud_list_rds_instanceshcloud_list_rds_instancesC
Read-onlyIdempotent

List RDS database instances

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds no behavioral detail of its own, such as pagination or how far a listing spans, but it also contradicts nothing.

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

Conciseness3/5

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

A single front-loaded sentence with zero waste, but its brevity reflects under-specification rather than economy. There is nothing structurally wrong, just nothing helpful.

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

Completeness2/5

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

With no output schema and a large family of near-identical list tools, the description should at least state what an instance record contains or how listing scope works. As written, an agent can do little more than call it blindly with a region.

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 100%, so baseline is 3. Both parameters ('region', 'limit') are documented in the schema, though thinly; the description adds no meaning about region scope or default page size.

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

Purpose2/5

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

The description decodes the tool name and nothing more: 'List RDS database instances' restates hcloud_list_rds_instances verbatim. It never distinguishes RDS instances from the many sibling instance-list tools (gaussdb, dds, dcs, sms), so an agent gets no identification value beyond the name itself.

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 prerequisite (e.g. region is required), and no alternative named. The agent must infer everything from the schema's required field.

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

hcloud_list_rds_storage_typeshcloud_list_rds_storage_typesB
Read-onlyIdempotent

List supported RDS storage types per engine/version

NameRequiredDescriptionDefault
regionYesRegion
version_nameYesDatabase version (e.g. 5.7, 8.0)
database_nameYesDB engine: MySQL, PostgreSQL, SQLServer, MariaDB

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already cover the safety profile (readOnlyHint, idempotentHint, openWorldHint), so the description's burden is lighter. It usefully signals that results vary by engine and version, but says nothing about whether results can be empty for a valid engine/version pair, how many types are returned, or the response shape.

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 the scope qualifier placed immediately after the action. No filler, no restatement of the tool 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?

With three required parameters, no output schema, and a straightforward read semantics, the annotations plus a fully documented schema carry most of the weight. The description is adequate but thin: it omits region's role in scoping and gives no hint about the returned list's contents.

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 100%, so the schema already defines all three required parameters, making 3 the baseline. The description reinforces that database_name and version_name form the lookup key, but adds no detail on valid region values or what happens with an unsupported engine/version combination.

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 ('List supported RDS storage types') plus its scoping dimension ('per engine/version'), which is far more precise than the title alone. It does not explicitly differentiate itself from nearby siblings such as hcloud_list_rds_flavors or hcloud_list_rds_datastores, which an agent might reasonably confuse it with.

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 explicit when-to-use or when-not-to-use guidance, and no alternative sibling is named. The 'per engine/version' phrasing only implies the caller must know an engine and version, leaving the agent to infer that this is a pre-creation sizing lookup.

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

hcloud_list_rgc_control_policieshcloud_list_rgc_control_policiesC
Read-onlyIdempotent

List RGC control policies

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
regionYesRegion

TDQS

C2.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered by structured data. The description contributes nothing beyond that: no indication of whether the region argument scopes a global or regional endpoint, no pagination behavior, no note that an empty result is possible for regions without RGC.

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

Conciseness3/5

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

The single short phrase is front-loaded and contains no filler, so nothing needs trimming. However, its economy comes from under-specification rather than discipline — it fits in one line only because it says almost nothing.

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

Completeness2/5

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

For a read-only list tool with no output schema and 100% schema coverage, the description is technically callable but incomplete: it never expands RGC, never says what a returned control policy represents, and never clarifies whether region is the only scoping dimension. The structured fields cannot fill that gap.

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 100%, so all three parameters (region, limit, offset) are documented in the schema, which sets the baseline at 3. The description adds no extra meaning such as accepted region identifier formats or default/maximum for limit, so it neither helps nor hurts.

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

Purpose2/5

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

"List RGC control policies" restates the tool name almost verbatim, adding no scope, filtering, or resource detail. The acronym RGC is never expanded, so an agent has no way to know what domain these policies belong to or how they relate to the many other policy-listing siblings (hcloud_list_policies, hcloud_list_cbr_policies, hcloud_list_l7_policies).

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

Usage Guidelines1/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 exclusions, and no mention of any alternative among the dozens of sibling list tools. An agent must guess from the name alone whether to select this over hcloud_list_policies or hcloud_list_cbr_policies.

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

hcloud_list_route_tableshcloud_list_route_tablesC
Read-onlyIdempotent

List route tables

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
vpc_idNoFilter by VPC ID

TDQS

C2.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no note on pagination via limit, no mention of what the VPC filter does, and no hint about result scope or ordering.

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

Conciseness3/5

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

Three words with no wasted clauses, but also no front-loading of anything useful because there is essentially no content. Conciseness here is under-specification rather than disciplined editing.

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

Completeness2/5

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

For a list tool with a required region, a VPC filter and a limit, in a catalogue with dozens of overlapping list tools including hcloud_list_er_route_tables, the description does not do enough to disambiguate or explain the call. Only the annotations and schema carry the definition.

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 100%, so the three parameters are documented in the schema itself and the baseline is 3. The description adds no extra meaning, syntax or defaults beyond those terse schema strings ("Region", "Max results", "Filter by VPC ID").

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

Purpose2/5

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

"List route tables" restates the tool name (hcloud_list_route_tables) almost word for word, adding no scope, no resource qualifier and no distinction from near-neighbours such as hcloud_list_er_route_tables. An agent can infer only that it is a list operation on some route-table resource.

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

Usage Guidelines1/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 mention of prerequisites (region is required), and no pointer to alternatives such as hcloud_list_er_route_tables or hcloud_list_vpcs. Nothing tells the agent how to choose between these listing tools.

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

hcloud_list_scaling_configshcloud_list_scaling_configsC
Read-onlyIdempotent

List AS (Auto Scaling) configurations

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is fully covered by structured data. The description contributes nothing beyond that: it does not discuss cross-region scope, how `limit` truncates the result set, whether pagination tokens exist, or what the response contains — all behaviorally relevant for an open-world cloud list call.

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?

A single short, front-loaded sentence with zero filler, which is appropriate for a simple list tool. It is terse to the point that the required `region` scoping and the existence of a `limit` cap are never surfaced in prose, though nothing is redundant.

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

Completeness2/5

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

For a two-parameter list tool with full schema coverage and annotations, the essentials are almost there, but with no output schema the description should at least hint at what a 'scaling configuration' record contains and how results are bounded. As written, an agent cannot tell what it will receive or how this differs from the other scaling-list siblings.

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 100% with both `region` (required) and `limit` ('Max results') documented inline, so the structured schema carries the parameter semantics. The description adds no extra meaning such as allowed region names, default page size, or whether `limit` caps or pages; baseline 3 applies when the schema does the heavy lifting.

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 states a specific verb plus resource ('List ... configurations') and expands the 'AS' abbreviation to 'Auto Scaling', so an agent knows this returns a collection of scaling configurations. It does not distinguish this from adjacent siblings such as hcloud_list_scaling_groups, hcloud_list_scaling_policies, or hcloud_show_scaling_config, which is why 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 prerequisites (for example, that a region is required), and no mention of alternatives. The agent must infer on its own that hcloud_show_scaling_config is for details of a single config and that hcloud_list_scaling_groups covers a different resource.

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

hcloud_list_scaling_groupshcloud_list_scaling_groupsC
Read-onlyIdempotent

List AS (Auto Scaling) groups

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond that — no pagination behavior, no note that results are region-scoped/required, and no indication of what happens when the region has no groups.

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?

A single short phrase, front-loaded and free of padding. It is efficient, though its brevity borders on under-specification rather than disciplined conciseness.

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 read-only list tool with fully documented parameters and annotation-covered safety, the definition is minimally sufficient. It is missing any return-shape hint (no output schema exists) and any guidance on the required region parameter's scope.

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 100% with only two simple parameters (region, limit), so the schema carries the parameter burden. The description adds no extra semantics, and the baseline of 3 applies for high-coverage schemas.

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 ("List AS (Auto Scaling) groups") and expands the acronym, so an agent knows exactly what is returned. It does not differentiate from the closely related sibling hcloud_show_scaling_group, 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 mention of when to call this instead of hcloud_show_scaling_group, and no stated prerequisites such as required region scoping. The agent must infer usage entirely from the tool name.

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

hcloud_list_scaling_instanceshcloud_list_scaling_instancesC
Read-onlyIdempotent

List instances currently in AS groups

NameRequiredDescriptionDefault
regionYesRegion
scaling_group_idYesScaling group ID (required)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds only the word "currently", implying active instances, but says nothing about pagination, empty results, or whether terminated/removed members are excluded.

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?

A single front-loaded sentence with no filler. It is efficient, though the unexplained "AS" abbreviation slightly under-specifies rather than wastes space.

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?

With two required parameters, no output schema, and annotations covering read-only semantics, the definition is minimally adequate. It would be stronger if it clarified that results are scoped to one scaling group and hinted at what instance fields are returned.

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 100%, so region and scaling_group_id are already documented with required status. The description adds no format, ID syntax, or scoping detail beyond what the schema states, making the baseline 3 appropriate.

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?

"List instances currently in AS groups" gives a specific verb (list) and resource (instances inside auto-scaling groups), which distinguishes it from hcloud_list_scaling_groups and hcloud_show_scaling_group. The only weakness is the unexplained abbreviation "AS", which assumes the agent knows it means Auto Scaling.

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 guidance on when to call this versus hcloud_list_scaling_groups, hcloud_show_scaling_group, or hcloud_list_scaling_configs, and no prerequisites or exclusions are stated. The agent must infer usage purely from the name.

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

hcloud_list_scaling_policieshcloud_list_scaling_policiesC
Read-onlyIdempotent

List AS (Auto Scaling) policies

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
scaling_group_idYesScaling group ID (required)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond that: it doesn't state that results are scoped to a scaling group and region, nor how pagination via limit behaves.

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?

A single front-loaded sentence with no filler or redundancy. It is terse rather than bloated, though the terseness comes at the cost of omitted scoping details.

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

Completeness2/5

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

For a list tool requiring scaling_group_id and region and returning no output schema, the description should mention that the listing is scoped to a specific scaling group and region and what limit does. Without annotations covering these semantics, the omission leaves a real gap.

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 100%, so region, scaling_group_id and limit are already documented in the schema. The description contributes no additional meaning about parameter formats or interactions, which is the baseline 3 for full schema coverage.

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?

"List AS (Auto Scaling) policies" gives a clear verb plus resource and expands the abbreviation, so the purpose is unambiguous. It does not differentiate itself from nearby siblings such as hcloud_list_scaling_configs or hcloud_show_scaling_policy, so it stops 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 guidance on when to use this versus the single-policy show tool or the scaling-config list, and no prerequisite context. The agent must infer everything from the name and schema.

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

hcloud_list_security_group_ruleshcloud_list_security_group_rulesC
Read-onlyIdempotent

List security group rules

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
security_group_idNoFilter by security group ID

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond that: no note on whether region is mandatory scoping, how security_group_id filtering changes behavior, pagination via limit, or what an empty result means.

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

Conciseness3/5

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

It is a single short sentence with no wasted words, but its brevity comes from under-specification rather than disciplined editing. There is nothing front-loaded beyond the operation name.

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

Completeness2/5

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

For a filtered list tool with a required region and an optional security_group_id filter, the description says nothing about scoping, filtering behavior, or result shape (no output schema exists). Only the annotations supply behavioral context, leaving the description substantially incomplete.

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 100%, so region, limit and security_group_id are each documented in the schema. The description contributes no additional meaning about these parameters, which matches the baseline 3 for high-coverage schemas.

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

Purpose3/5

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

"List security group rules" states a concrete verb and resource, so the basic operation is discernible. However, it adds nothing beyond the tool name/title and does not differentiate this from siblings like hcloud_list_security_groups or hcloud_show_security_group.

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 guidance on when to use this tool versus the related security group listing/show tools, and no mention of prerequisites or exclusions. The agent must infer usage entirely from the name and schema.

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

hcloud_list_security_groupshcloud_list_security_groupsB
Read-onlyIdempotent

List security groups

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

The annotations already declare read-only, open-world, and idempotent behavior. The description adds no further behavioral context such as region scoping, pagination, or what the listing returns, so it contributes little beyond the structured metadata.

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?

The description is two words, front-loaded, and free of filler. For a simple list operation, it is appropriately sized and easy to parse.

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?

The tool is simple and the schema plus annotations provide basic context, but the description omits scope, pagination, and return-shape hints despite having no output schema. It is minimally adequate rather than fully complete.

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 100%, so both the required region and optional limit parameters are documented by the schema. The description adds no additional meaning about parameter usage or constraints, making the baseline score appropriate.

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?

States a specific verb and resource: "List security groups." This clearly identifies a collection-listing operation, but it does not explicitly differentiate itself from sibling tools such as hcloud_show_security_group or hcloud_list_security_group_rules.

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?

Provides no when-to-use guidance, prerequisites, or alternatives. The agent can infer that this tool lists security groups, but the description does not say when to choose it over hcloud_show_security_group or hcloud_list_security_group_rules.

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

hcloud_list_server_block_deviceshcloud_list_server_block_devicesB
Read-onlyIdempotent

List block devices (volumes) attached to an ECS server

NameRequiredDescriptionDefault
regionYesRegion
server_idYesServer ID

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds the server-scoping behavior, which is useful, but says nothing about pagination, whether detached volumes are excluded, or what identifies the devices in the response. With annotations carrying safety, this is an adequate but thin addition.

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 zero filler; the resource and its scope are stated immediately. Nothing is wasted or buried.

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 two-parameter read tool with no output schema and strong annotations, the description is minimally sufficient. However, an agent cannot learn whether the result includes device names, sizes, or attachment status, nor whether it covers only currently attached volumes.

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 100% and there are only two required parameters, so the baseline is 3. The description's mention of 'ECS server' reinforces that server_id refers to a server (not a volume), but adds no format, region-vs-server relationship, or filtering semantics beyond the schema.

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?

States a specific verb (list) and a scoped resource (block devices/volumes attached to an ECS server), and clarifies the volume equivalence in parentheses. This implicitly separates it from hcloud_list_volumes (account-wide) and hcloud_list_server_interfaces, though neither sibling is named explicitly.

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 guidance on when to prefer this over hcloud_list_volumes, hcloud_show_server, or hcloud_show_volume, and no stated prerequisites (e.g., server must exist, permissions needed). The agent must infer the use case from the scope wording alone.

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

hcloud_list_server_interfaceshcloud_list_server_interfacesB
Read-onlyIdempotent

List network interfaces attached to an ECS server

NameRequiredDescriptionDefault
regionYesRegion
server_idYesServer ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so safety and repeatability are covered. The description adds nothing beyond them — no pagination behavior, no statement about whether the list is scoped only to the given server or includes shared/mutating interfaces, and no hint about what fields each interface carries. With annotations carrying the safety profile, this is a missed opportunity rather than a contradiction.

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?

A single front-loaded sentence with zero filler and no redundancy. It is efficient but so terse that there is no second sentence to carry scope or behavioral detail.

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 two-parameter read tool with full schema coverage, annotations, and no output schema, the minimum is met. However, the agent is left guessing how this listing differs from hcloud_show_server and hcloud_list_server_block_devices, which is the main risk for wrong-tool selection in this large sibling set.

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 100% for both parameters, so the baseline of 3 applies. The description adds only the linkage that server_id identifies the ECS server whose interfaces are listed; it gives no format guidance (ID vs. name, region/project scoping) beyond what the schema already states.

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 names a specific verb ('List'), a specific resource ('network interfaces'), and the owning resource ('ECS server'), so the agent knows exactly what is returned. It does not differentiate from the closest sibling, hcloud_list_server_block_devices, which is also a per-server sub-resource listing, so the agent has to infer the boundary from names alone.

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

Usage Guidelines3/5

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

Usage is only implied: the required server_id and region make it obvious this is a per-server inspection call, but the description never states when to prefer it over hcloud_show_server (which may already expose interface data) or hcloud_list_server_block_devices. There are no exclusions, prerequisites, or alternative routing.

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

hcloud_list_servershcloud_list_serversB
Read-onlyIdempotent

List ECS cloud servers with optional filters

NameRequiredDescriptionDefault
nameNoFilter by server name (fuzzy match)
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion
statusNoFilter by status: ACTIVE, SHUTOFF, ERROR, BUILD, etc.
flavor_idNoFilter by flavor ID

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety and idempotency profile is covered without the description's help. The description adds only the notion of optional filtering and says nothing about default result size, pagination behavior via limit/offset, or what happens when region matches nothing.

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?

A single short sentence with the resource front-loaded and no filler whatsoever. It is appropriately sized, though it is terse enough that some necessary context (pagination, return shape) is absent rather than merely trimmed.

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?

With six parameters, one required, a fully documented schema and useful annotations, the definition is usable as-is. However, there is no output schema, so the description should have indicated that it returns a collection (and how limit/offset shape it), which is a meaningful gap for a list tool.

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 100%, so every parameter including the required region and the fuzzy-match name filter is already documented in the schema, setting the baseline at 3. The description's generic "optional filters" phrase adds no meaning beyond that, though it does at least signal that filtering is the tool's core mechanic.

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 ("List ECS cloud servers") plus a scope note ("with optional filters"), which is clear enough to distinguish it from the show/detail siblings by name. It stops short of any explicit sibling differentiation, such as pointing to hcloud_show_server for a single server's details.

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: nothing says to call this to enumerate servers before calling hcloud_show_server, nor how to combine filters. "Optional filters" is implied usage only, and no alternatives or exclusions are named despite many adjacent list/show tools.

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

hcloud_list_smn_subscriptionshcloud_list_smn_subscriptionsC
Read-onlyIdempotent

List SMN subscriptions

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
topic_urnNoFilter by topic URN

TDQS

C2.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no note on pagination via limit, no statement about result ordering or what happens when topic_urn is omitted.

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

Conciseness3/5

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

It is a single front-loaded sentence with no filler, which is structurally clean. However, that brevity comes from under-specification rather than disciplined editing, so it does not earn full marks.

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

Completeness2/5

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

The tool is simple (three flat parameters, one required, no output schema), but the description still leaves the SMN subscription model and the topic relationship unexplained. Given an abbreviation-heavy name and dozens of sibling list tools, it should do more to orient the caller.

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 100%, with limit, region and topic_urn each carrying inline text, so the baseline of 3 applies. The description contributes no additional meaning such as whether limit is a page size or a hard cap.

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

Purpose2/5

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

"List SMN subscriptions" restates the tool name with the vendor prefix removed and adds no distinguishing information. It does identify a verb and a resource, but 'SMN subscriptions' is never expanded or explained, and nothing separates it from sibling listing tools such as hcloud_list_smn_topics.

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 mention that subscriptions belong to a topic and can therefore be filtered via topic_urn, and no reference to any sibling tool. An agent must infer the workflow entirely from the parameter names.

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

hcloud_list_smn_topicshcloud_list_smn_topicsB
Read-onlyIdempotent

List SMN (Simple Message Notification) topics

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, so the safety profile is covered structurally. The description adds no behavioral context beyond the tool name, such as pagination behavior, region requirements, or what the returned topic entries include.

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?

The description is a single front-loaded sentence with no redundant or filler wording. It is appropriately concise for a simple list tool.

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 low-complexity list tool with annotations and full schema coverage, the description covers the core purpose. However, it leaves out practical context such as pagination behavior and how it relates to hcloud_list_smn_subscriptions, which would help an agent call it with confidence.

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 100%, so all three parameters—limit, offset, and region—are already documented in the schema. The description adds no extra parameter semantics, but the baseline is 3 because the schema carries the parameter documentation.

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 states a specific verb ('List') and resource ('SMN topics') and expands the acronym, so the agent knows what is returned at a high level. It does not distinguish this tool from nearby siblings such as hcloud_list_smn_subscriptions, but the resource name is specific enough to avoid ambiguity.

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?

The description gives no guidance on when to use this tool versus related list tools, nor any prerequisites, exclusions, or expected context such as region scoping. The intended use as a simple list operation is implied by the name, but no explicit when-to-use guidance is provided.

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

hcloud_list_sms_migration_projectshcloud_list_sms_migration_projectsB
Read-onlyIdempotent

List SMS (Server Migration Service) migration projects

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

The annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds no behavioral context beyond the title, such as whether results are paginated automatically, whether all projects are returned, or what region scoping means. It does not contradict the annotations, but it contributes essentially no behavioral detail.

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?

The description is a single front-loaded sentence with no wasted words. It expands the SMS acronym, which adds useful disambiguation without verbosity. There is no clutter or repetition.

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 list tool with full schema coverage and explicit read-only annotations, the description is minimally sufficient to identify the operation. However, it lacks usage context and does not explain return behavior, and there is no output schema to fill that gap. It is adequate but thin for an agent choosing among many sibling list tools.

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 100%, so the parameters limit, offset, and region are already documented in the input schema. The description adds no additional meaning about required region behavior or pagination semantics. Baseline 3 is appropriate because the schema carries the parameter documentation.

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 clearly states a specific verb and resource: list SMS (Server Migration Service) migration projects. The SMS expansion disambiguates it from generic project-listing siblings such as hcloud_list_projects. It does not explicitly contrast with sibling SMS tools like hcloud_list_sms_servers or hcloud_list_sms_tasks, but the resource is distinct enough.

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 exclusions, and no suggested alternatives. An agent must infer from the name that this is the tool for listing SMS migration projects rather than SMS servers or tasks. No prerequisites or contextual constraints are stated.

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

hcloud_list_sms_servershcloud_list_sms_serversC
Read-onlyIdempotent

List SMS (Server Migration Service) source servers

NameRequiredDescriptionDefault
nameNoFilter by server name
limitNoMax number of results
stateNoFilter by server state
offsetNoOffset for pagination
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered by structured data. The description adds nothing behavioral beyond that, such as whether results are paginated, whether region scoping is mandatory, or whether all servers are returned unfiltered.

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?

A single front-loaded sentence with no wasted words. It is appropriately terse for a simple list operation, though the brevity leaves no room for disambiguation.

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 read-only list tool with full schema coverage and no output schema, the description is minimally sufficient. However, given the large family of similarly named list tools in this server, it should do more to distinguish scope and return behavior.

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 100%, with every parameter (name, limit, state, offset, region) documented in the schema itself. The description adds no extra semantics such as accepted state values or pagination conventions, so the baseline 3 applies.

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 (List) and resource (SMS source servers), and even expands the SMS acronym to Server Migration Service. It clearly identifies this as an enumeration tool, though it does not explicitly differentiate itself from siblings like hcloud_show_sms_server or hcloud_list_sms_tasks.

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 guidance on when to use this versus hcloud_show_sms_server (singular detail) or the adjacent SMS listing tools such as hcloud_list_sms_tasks and hcloud_list_sms_migration_projects. The agent must infer usage purely from the tool name.

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

hcloud_list_sms_taskshcloud_list_sms_tasksB
Read-onlyIdempotent

List SMS (Server Migration Service) migration tasks

NameRequiredDescriptionDefault
nameNoFilter by task name
limitNoMax number of results
stateNoFilter by task state
offsetNoOffset for pagination
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, but the description adds no further behavioral context such as ordering, default page size, region scoping, or behavior when a region has no tasks. For a paginated list tool, this leaves the agent with only the schema and annotations.

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, and every word maps directly to the tool's purpose. It is terse, but terseness is assessed under other dimensions rather than as verbosity here.

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?

The description is minimal but the schema fully documents parameters and annotations cover the safety profile. It omits return ordering, pagination defaults, and the relationship to hcloud_show_sms_task, which are modest but real gaps for a five-parameter list tool.

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 100%, so all five parameters are documented in the input schema. The description adds no additional meaning about required region scope, accepted state values, or pagination semantics, so the baseline of 3 applies.

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?

States a specific verb ('List') and resource ('SMS (Server Migration Service) migration tasks'), and expands the SMS acronym. It implicitly distinguishes from hcloud_show_sms_task and from sibling list tools for servers or migration projects by resource, but does not explicitly name any sibling.

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?

Provides no when-to-use guidance, no mention of when to prefer hcloud_show_sms_task for a single task, and no advice on combining filters. The only usage cue is the verb 'List' in the name.

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

hcloud_list_snapshotshcloud_list_snapshotsB
Read-onlyIdempotent

List EVS volume snapshots

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond that — no pagination behavior, no statement of what a listing returns, no note that region is mandatory.

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 five-word phrase with zero filler and the resource front-loaded after the verb. Nothing redundant is present.

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 two-parameter read-only list tool with full schema coverage and annotations, the definition is minimally adequate. It omits any indication of result contents or pagination, which matters because there is no output schema to fill that gap.

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 100%, so both the region and limit parameters are already documented, and the rule sets the baseline at 3. The description contributes no extra meaning such as valid region formats or default limit behavior.

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?

States a specific verb (List) and a specific resource (EVS volume snapshots), so an agent knows the operation and target immediately. It does not, however, differentiate itself from the nearby hcloud_show_snapshot or hcloud_list_volumes siblings.

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 mention of the required region scoping, and no pointer to hcloud_show_snapshot for single-snapshot detail. The agent must infer usage purely from the name.

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

hcloud_list_subnetshcloud_list_subnetsC
Read-onlyIdempotent

List subnets

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion
vpc_idNoFilter by VPC ID

TDQS

C2.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, openWorldHint and idempotentHint, so the safety profile is covered without the description. The description adds nothing beyond that—no pagination behavior for the limit parameter, no ordering, no note on what an empty list means. No contradiction with annotations, but no added value either.

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

Conciseness3/5

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

Two words, so there is zero waste, but this is under-specification rather than conciseness—nothing is front-loaded because nothing is stated. It is not verbose, just empty.

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

Completeness2/5

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

For a list tool with a required region filter, an optional VPC filter, a result limit and no output schema, the description should say what is returned and how paging/limits behave. None of that is present, leaving the agent to guess at result shape and semantics.

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 100%, so the baseline is 3 even though the description says nothing about the three parameters. The schema's own text ("Max results", "Region", "Filter by VPC ID") carries the meaning; the description neither helps nor misleads.

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

Purpose2/5

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

"List subnets" restates the tool name (hcloud_list_subnets) rather than stating scope, what a subnet is here, or how it relates to the sibling hcloud_show_subnet. It is technically a verb+resource, but adds nothing an agent could not infer from the name alone.

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?

No when-to-use guidance, no mention of the alternative hcloud_show_subnet for single-resource retrieval, and no note that region is mandatory while vpc_id narrows the result set. The agent is left to infer filtering behavior from the schema.

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

hcloud_list_swr_namespaceshcloud_list_swr_namespacesC
Read-onlyIdempotent

List SWR (Software Repository for Containers) namespaces with optional filters

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is fully covered by structured data. The description adds nothing beyond that — no pagination behavior, no note on what a namespace contains, and no indication of result ordering or default limit.

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?

A single well-formed sentence with the resource up front and the acronym expansion in place. It is efficient, though the trailing 'with optional filters' clause does not convey concrete information.

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 read-only list tool with fully documented parameters and no output schema, the description is minimally adequate. It leaves open what a namespace is in this context and whether pagination is required for large result sets.

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 100%, with limit, offset and region all documented inline, which sets the baseline at 3. The description adds no meaning beyond the schema — it does not say what can be filtered on, so 'optional filters' is slightly misleading since only pagination and region appear as parameters.

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?

States a specific verb and resource ('List SWR ... namespaces') and helpfully expands the SWR acronym as Software Repository for Containers. It does not, however, distinguish it from its SWR siblings such as hcloud_list_swr_repositories or hcloud_list_swr_tags beyond the resource noun itself.

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?

The phrase 'with optional filters' hints that filters are available but names none, and there is no guidance on when this tool should be chosen over hcloud_list_swr_repositories or hcloud_show_swr_domain. No prerequisites or exclusions are stated.

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

hcloud_list_swr_repositorieshcloud_list_swr_repositoriesC
Read-onlyIdempotent

List SWR repositories with optional filters

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion
namespaceNoFilter by namespace

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds nothing beyond that: no note on pagination behavior (despite limit/offset params), no indication of result volume, ordering, or what happens when filters match nothing.

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?

A single front-loaded clause with no filler or redundancy. It is efficient, though its brevity borders on under-specification rather than tight writing.

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 four-parameter read-only list tool with full schema coverage and no output schema, the description covers the bare minimum. It omits the one thing an agent cannot get from structured fields: whether results are paginated and how to page through them.

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 100%, so all four parameters are already documented in the input schema. The phrase "optional filters" loosely refers to namespace but adds no meaning beyond what the schema states, so the baseline 3 applies.

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 ("List SWR repositories"), which is clearly distinct from the neighboring namespace, tag, and domain SWR tools. It does not explicitly name or contrast with any sibling, and the acronym SWR is never expanded, but an agent can still identify the operation.

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?

"With optional filters" hints that filtering is possible but gives no guidance on when to use this tool versus hcloud_list_swr_namespaces or hcloud_list_swr_tags, and no prerequisites or exclusion conditions. The agent must infer everything about selection from the tool name.

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

hcloud_list_swr_tagshcloud_list_swr_tagsB
Read-onlyIdempotent

List tags for a specific SWR repository

NameRequiredDescriptionDefault
regionYesRegion
namespaceNoNamespace the repository belongs to
repositoryYesRepository name

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that — no pagination, ordering, empty-result behavior, or note about 'latest'/immutable tag filtering that agents would need for a tag listing.

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 scope qualifier ('for a specific SWR repository') comes immediately after the verb+resource.

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 read-only list tool with full schema coverage and clear annotations, the description is minimally sufficient. However, it leaves open whether namespace is needed to resolve repository names and says nothing about result size or pagination, which matters for a tag listing that can be long.

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 100%, with all three parameters (region, namespace, repository) documented in the schema itself. The description only restates that tags belong to a repository and adds no clarification on the optional namespace parameter or region scoping, so baseline 3 applies.

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 names a specific verb ('List') and resource ('tags') scoped to 'a specific SWR repository', which is enough to distinguish it from siblings like hcloud_list_swr_repositories or hcloud_list_swr_namespaces that operate on different resources. No sibling also lists tags, so no explicit negative routing is needed.

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 or when-not-to-use guidance, no mention of prerequisites (e.g. that a namespace may be required to disambiguate the repository), and no pointer to any alternative tool. The agent must infer usage entirely from the one-line purpose.

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

hcloud_list_user_policieshcloud_list_user_policiesC
Read-onlyIdempotent

List policies attached to an IAM user

NameRequiredDescriptionDefault
user_idYesUser ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond restating the operation: no note on pagination, response shape, or what happens when the user has no policies or the ID is invalid.

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?

A single front-loaded sentence with no filler. It is efficient, though its brevity borders on under-specification rather than true crispness.

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 one-parameter read tool with full annotations and no output schema, the description is minimally viable. It still leaves the return shape (policy names vs. IDs, pagination) unstated, which is the main remaining gap.

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?

Only one parameter with 100% schema description coverage, so the baseline is 3. The phrase 'IAM user' loosely reinforces that user_id is an IAM user identifier, but adds no format, source, or discovery guidance beyond the schema's 'User ID'.

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?

States a specific verb (List) and a scoped resource (policies attached to an IAM user), which distinguishes it from the generic hcloud_list_policies sibling. The scope qualifier 'attached to an IAM user' does the differentiating work without naming the sibling explicitly.

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?

No when-to-use guidance, no exclusions, and no pointer to alternatives such as hcloud_list_policies or hcloud_show_user. The agent must infer from the name alone that this is the per-user variant.

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

hcloud_list_usershcloud_list_usersC
Read-onlyIdempotent

List IAM users

NameRequiredDescriptionDefault
limitNoMax results

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered externally. The description adds no behavioral context whatsoever — nothing about pagination behaviour of limit, result ordering, or whether the listing is domain-scoped.

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 words, front-loaded, zero waste. However, the terseness edges into under-specification rather than purposeful brevity, keeping it just below the top mark.

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 one-parameter read-only lister with no output schema, the definition is minimally adequate to call the tool. It is missing any note on scope (which domain/account's users) or what a returned user record contains, which would matter for an IAM listing.

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?

There is a single optional parameter (limit) with 100% schema description coverage, so the schema already carries the parameter meaning. The description adds nothing beyond it, which is acceptable but minimal; baseline 3 applies.

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?

"List IAM users" states a specific verb (list) and a specific resource (IAM users), which is enough to distinguish it from siblings like hcloud_list_groups, hcloud_list_policies, and hcloud_show_user. It stops short of explicitly contrasting with those siblings, so it lands at a clear-but-undifferentiated 4.

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 at all: no mention of when to pick hcloud_list_users versus hcloud_show_user or hcloud_list_user_policies, and no prerequisites (e.g. domain/tenant scope) for listing IAM users. It only implies usage through the verb itself.

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

hcloud_list_volumeshcloud_list_volumesC
Read-onlyIdempotent

List EVS disk volumes

NameRequiredDescriptionDefault
limitNoMax results
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and idempotentHint=true, so safety is covered. The description adds no behavioral context beyond the bare resource name — nothing on pagination behavior with limit, on whether results are region-scoped or cross-project, or on what happens when a region has no volumes.

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?

Four words, front-loaded with the verb and resource with zero padding. It is efficient rather than verbose, though the brevity reflects under-specification more than disciplined editing.

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 two-parameter read-only list tool with full schema coverage and annotations, the minimum needed to call it is present. Still missing is whether region is mandatory in practice, whether results paginate, and how it differs from hcloud_show_volume, leaving the definition merely adequate.

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 100%, so both parameters are documented in the schema, making the baseline 3. The description contributes nothing to parameter meaning — it never mentions region scoping or the limit/max-results behavior.

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?

"List EVS disk volumes" gives a specific verb (List) plus the exact resource family (EVS disk volumes), which separates it from unrelated list tools like hcloud_list_snapshots or hcloud_list_volume_types. It does not, however, distinguish itself from the closely related hcloud_show_volume sibling or note how it relates to volume types/snapshots, so it stops short of full sibling differentiation.

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 guidance on when to use this tool versus alternatives such as hcloud_show_volume for a single volume, nor any stated prerequisites (e.g., that a region must be supplied). The agent must infer all usage conditions from the name and schema.

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

hcloud_list_volume_typeshcloud_list_volume_typesB
Read-onlyIdempotent

List available EVS volume types

NameRequiredDescriptionDefault
regionYesRegion

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is fully covered. The description adds nothing beyond that — no note on whether results differ per region, whether the list is cached/eventually consistent, or whether an empty result is possible. For an open-world read with zero added context, 2 is appropriate.

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?

A single front-loaded phrase with no filler or redundancy. It is efficient, though its terseness borders on under-specification rather than polished conciseness.

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 one-parameter, annotation-covered list tool with no output schema, the description is minimally adequate. It omits what a returned volume type actually contains (e.g., IOPS/throughput characteristics) and how region affects results, which would matter to an agent choosing a volume type.

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 100%, so baseline 3 applies. The description does not mention the required `region` parameter at all, leaving the thin schema text ("Region") as the only guidance on expected format or granularity (region vs. availability zone).

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?

States a specific verb and resource ("List available EVS volume types"), which is unambiguous against siblings such as hcloud_list_volumes or hcloud_list_snapshots. However, it does not differentiate from adjacent flavor/storage-type listers (e.g., hcloud_list_rds_storage_types, hcloud_list_dcs_flavors) or clarify that types are region-scoped.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can infer this is the lookup to run before creating a volume in a given region, but the description never says when to call it, whether it must precede volume creation, or what alternatives exist. No exclusions or prerequisites are stated.

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

hcloud_list_vpcshcloud_list_vpcsC
Read-onlyIdempotent

List VPCs in the region

NameRequiredDescriptionDefault
limitNoMax results
offsetNoPagination offset
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds essentially nothing beyond that: no note on pagination behavior despite limit/offset parameters, no indication of result ordering, and no statement of what the response contains.

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?

Five words, front-loaded with the verb and resource, no filler. It is efficient, though brevity here shades into under-specification rather than disciplined editing.

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 paginated list tool with full schema coverage and complete annotations, this is marginally adequate. An agent can call it correctly, but receives no signal about pagination semantics or result shape.

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 100%, so the schema already documents region, limit, and offset, and the baseline is 3. The phrase "in the region" merely restates the required region parameter and adds no format or constraint detail beyond the schema.

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?

"List VPCs in the region" states a specific verb (List) and resource (VPCs) plus a scope qualifier. It is distinguishable from siblings like hcloud_list_subnets or hcloud_list_vpn_gateways purely by resource name, though it never explicitly contrasts with them.

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?

No when-to-use or when-not-to-use guidance. It does not say whether this is the right tool for enumerating VPCs vs. inspecting one (hcloud_show_vpc), nor does it mention any prerequisites or alternative listing paths.

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

hcloud_list_vpn_connectionshcloud_list_vpn_connectionsB
Read-onlyIdempotent

List VPN connections with optional filters

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion
vgw_idNoFilter by VPN gateway ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds essentially nothing beyond that — no pagination behavior, default limit, region scoping, or volume-of-results context — despite 'optional filters' being the only substantive claim.

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?

A single short, front-loaded sentence with no filler. Nothing is wasted, but the brevity borders on under-specification rather than crispness.

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?

The tool is simple and the schema is fully described, so little is strictly missing. However, with no output schema and no mention of pagination semantics or the required region scope, the description leaves an agent to infer how results are returned and bounded.

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 100%, so all four parameters (limit, offset, region, vgw_id) are already documented in the schema. The description's mention of 'optional filters' only hints at vgw_id filtering and adds no syntax or default-value detail, so baseline 3 applies.

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?

States a specific verb and resource ('List VPN connections'), which is clearly distinguishable from siblings like hcloud_show_vpn_connection and hcloud_list_vpn_gateways. The phrase 'with optional filters' is vague but doesn't obscure the core purpose.

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

Usage Guidelines3/5

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

'With optional filters' implies that this is the enumeration/filtering tool, but no explicit when-to-use guidance is given. It never states the relationship to hcloud_show_vpn_connection (detail lookup) or hcloud_list_vpn_gateways, nor any exclusions.

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

hcloud_list_vpn_customer_gatewayshcloud_list_vpn_customer_gatewaysC
Read-onlyIdempotent

List VPN customer gateways (CGWs) with optional filters

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds essentially nothing beyond that: it does not describe pagination semantics, result ordering, whether count/total is returned (there is no output schema), or permission requirements, and 'optional filters' loosely mislabels limit/offset, which are pagination, not filters.

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?

A single short sentence with zero waste and the resource front-loaded after the verb. Its brevity is appropriate, though the phrase 'optional filters' is filler that does not map to any actual parameter.

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 read-only list tool with full schema coverage and read annotations, the description is minimally adequate. It leaves the required region parameter unaddressed in prose and gives no indication of return shape or pagination behavior, but nothing critical is missing for correct invocation.

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 100%, so all three parameters are documented in the schema; baseline is 3. The description adds no meaning beyond that and does not clarify that region is the required scoping parameter or how limit/offset interact.

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?

States a specific verb and resource: 'List VPN customer gateways (CGWs)'. The parenthetical abbreviation is helpful, but nothing distinguishes it from the sibling vpn list tools (hcloud_list_vpn_gateways, hcloud_list_vpn_connections, hcloud_list_vpn_ipsec_policies) beyond the resource name itself.

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?

Only 'with optional filters' hints at usage. There is no guidance on when to use this versus the sibling show/list VPN tools, no note that region is required, and no mention of how pagination via limit/offset should be applied.

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

hcloud_list_vpn_gatewayshcloud_list_vpn_gatewaysB
Read-onlyIdempotent

List VPN gateways (VGWs) with optional filters

NameRequiredDescriptionDefault
limitNoMax number of results
offsetNoOffset for pagination
regionYesRegion
vgw_idNoFilter by VPN gateway ID

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds only that filtering is optional; it says nothing about pagination behavior (limit/offset), the required region scoping, or result ordering.

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?

A single front-loaded sentence with no wasted words. It is arguably too terse for a tool with pagination and a required parameter, but there is no redundancy or burying of key information.

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 straightforward list tool with full schema coverage and annotations carrying the safety profile, the definition is minimally complete. It leaves gaps around the mandatory region argument and pagination semantics that an agent would only learn from the schema.

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 100%, so all four parameters are documented in the schema. The description adds no extra meaning about how filters combine, whether region narrows the result set, or how pagination interacts, so the baseline of 3 applies.

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 plus resource ('List VPN gateways (VGWs)') and notes optional filters, which clearly separates it from the singular sibling hcloud_show_vpn_gateway. It stops short of explicitly naming that sibling or stating the scope of the listing.

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

Usage Guidelines3/5

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

The phrase 'with optional filters' implies the tool is for narrowed listing queries, but there is no explicit when-to-use guidance and no routing to hcloud_show_vpn_gateway for single-resource retrieval. Usage is left to inference from the name.

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

hcloud_list_vpn_ike_policieshcloud_list_vpn_ike_policiesC
Read-onlyIdempotent

List VPN IKE policies

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no mention of whether results are region-scoped, whether the list is paginated or truncated, or what a policy object contains — all things annotations cannot convey.

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

Conciseness3/5

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

The description is a single four-word phrase with zero redundancy and is trivially front-loaded, but this is brevity by omission rather than economy of expression. Nothing is wasted because almost nothing is said.

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

Completeness2/5

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

With no output schema and a crowded sibling set containing a near-identical IPsec policy tool, the description should at minimum clarify scope and disambiguation. It provides neither, leaving the agent unable to tell what this returns or why it differs from adjacent VPN list tools.

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 100%, so the single required parameter 'region' is documented in the schema, and per the high-coverage baseline a 3 applies. The description adds no extra meaning such as accepted region formats or whether region changes the result set.

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

Purpose3/5

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

The phrase 'List VPN IKE policies' does name a verb and a resource, so the basic operation is identifiable. However, it is essentially a restatement of the tool name with no scope detail, and it does nothing to distinguish this tool from the very similar sibling hcloud_list_vpn_ipsec_policies, which an agent could easily confuse with it.

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 at all: no statement of what the policies are for, no prerequisite (e.g. a VPN gateway must exist), and no explicit routing to or away from hcloud_list_vpn_ipsec_policies, hcloud_list_vpn_connections, or hcloud_show_vpn_gateway. The agent must infer selection from the name alone.

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

hcloud_list_vpn_ipsec_policieshcloud_list_vpn_ipsec_policiesC
Read-onlyIdempotent

List VPN IPsec policies

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered structurally. The description adds nothing beyond that — no note on pagination, result volume, or region-scoped visibility, which for an open-world list operation is the kind of context that would be valuable.

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

Conciseness3/5

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

It is a single four-word phrase with nothing wasted and nothing front-loaded incorrectly. That said, the brevity reflects under-specification rather than disciplined concision.

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

Completeness2/5

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

With no output schema, the description should at least signal what a policy record looks like or how results are returned, and it says nothing. For a list tool with one region-scoped parameter and full annotation coverage the gap is not severe, but the definition is bare.

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?

There is a single required parameter and schema description coverage is 100%, so the schema carries the full burden and the baseline of 3 applies. The description does not explain what 'region' means here (scoping dimension vs. filter value) or whether it accepts names or IDs, so it adds no meaning beyond the schema.

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

Purpose3/5

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

The description gives a verb ('List') plus a specific resource ('VPN IPsec policies'), so the basic purpose is readable and the resource name distinguishes it from the sibling hcloud_list_vpn_ike_policies. However, it is essentially a decoded restatement of the tool slug with no further scope detail, so it sits at minimum-viable rather than clearly differentiated.

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 mention of the IKE-policy sibling as an alternative, and no stated prerequisites. An agent must infer from the name alone that this is the IPsec-policy listing endpoint rather than the IKE one.

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

hcloud_obs_cathcloud_obs_catB
Read-onlyIdempotent

View content of a text object in OBS

NameRequiredDescriptionDefault
keyYesObject key
bucketYesBucket name
regionYesRegion

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered and the bar is lower. The description's one added behavior fact is the 'text object' restriction, which usefully implies binary or oversized objects may not be viewable, but it says nothing about encoding, truncation, size limits, or access permissions on the bucket.

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?

A single short sentence with the verb and resource front-loaded and zero filler. It is efficient but borders on under-specified rather than tightly structured, since no clause addresses scope or limits.

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?

With three required, fully documented parameters, no output schema, and annotations covering read-only/idempotent behavior, the definition is minimally viable. It leaves out the details an agent would want before calling — output format for the object body, encoding, and any size or content-type constraints — which matters for a content-retrieval tool.

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 100%, with region, bucket and key each documented in the input schema, so the baseline of 3 applies. The description adds no meaning beyond the schema — it does not clarify key path conventions, region format, or how the three parameters jointly identify the object.

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 uses a specific verb ('View content') with a named resource ('text object in OBS'), so an agent can tell this reads object bodies rather than listing buckets (hcloud_obs_ls) or returning metadata (hcloud_obs_stat). It stops short of explicitly naming those siblings, so differentiation is implied by the word 'content' rather than stated.

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 explicit when-to-use or when-not-to-use guidance and no mention of alternatives such as hcloud_obs_ls or hcloud_obs_stat, even though they sit in the same OBS family. The only usable signal is the word 'content', which lets the agent infer this is the read-body tool, but nothing prevents misuse on non-text objects or very large keys.

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

hcloud_obs_lshcloud_obs_lsB
Read-onlyIdempotent

List OBS buckets or objects in a bucket

NameRequiredDescriptionDefault
briefNoShow brief output
limitNoMax results
bucketNoBucket name (omit to list all buckets)
prefixNoObject key prefix filter
regionYesRegion

TDQS

B3.3/5.0
Behavior3/5

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

The annotations already declare this as a read-only, idempotent, open-world operation, so the safety profile is clear. The description adds the basic bucket-versus-object listing distinction but does not disclose return format, pagination behavior, or authentication/region 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?

The description is a single front-loaded sentence with no wasted wording. It is appropriately sized for a simple list operation.

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?

The schema and annotations cover parameters and safety, but with no output schema the description does not explain what the returned buckets or objects look like or how 'limit' and 'brief' affect results. For a five-parameter list tool, the definition is adequate but missing helpful return-value context.

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 100%, so all parameters are already documented in the input schema. The description adds little meaning beyond the schema, though the phrase 'in a bucket' reinforces the bucket scoping behavior.

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 ('List OBS buckets or objects in a bucket') and makes clear that it can operate in two modes. It does not explicitly distinguish itself from the sibling tools hcloud_obs_stat and hcloud_obs_cat, so it falls short of full sibling differentiation.

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?

The description states what the tool does but offers no explicit guidance on when to use it versus hcloud_obs_stat or hcloud_obs_cat. The bucket omission behavior is only in the schema, not in the description, leaving selection guidance implicit.

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

hcloud_obs_stathcloud_obs_statC
Read-onlyIdempotent

Show properties of an OBS bucket or object

NameRequiredDescriptionDefault
keyNoObject key (omit for bucket properties)
bucketYesBucket name
regionYesRegion

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is known. The description adds nothing beyond that: it does not say what properties are returned, whether access requires permission on the bucket, or how it behaves for missing keys or buckets.

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?

It is a single front-loaded sentence with no wasted words. That brevity comes at the cost of detail, but the structure itself is clean.

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

Completeness2/5

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

For a metadata-inspection tool with no output schema, the description does not explain what the returned properties are or how the returned properties differ between bucket and object modes. It is too thin for the tool's complexity and leaves significant gaps for an agent trying to invoke it 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 100%, with each of the three parameters documented (region, bucket, and the key that determines whether bucket or object metadata is returned). With no output schema, the description adds no meaning beyond the schema, so the baseline of 3 applies.

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 names a specific verb ('Show') and resource ('properties of an OBS bucket or object'), so it is clear what the tool does. However, it does not distinguish itself from the sibling tools hcloud_obs_ls and hcloud_obs_cat, which an agent would need in order to choose correctly.

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 guidance on when to use this tool versus hcloud_obs_cat or hcloud_obs_ls. The only implied usage rule (omit the key for bucket properties) is already stated in the schema, so the description adds no routing guidance.

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

hcloud_show_bss_account_balancehcloud_show_bss_account_balanceB
Read-onlyIdempotent

Show BSS (Billing and Subscription) account balance

NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered without the description. The description adds nothing beyond the acronym expansion: it does not say whose account is queried, whether the call is scoped to the caller's credentials, what the balance comprises (credit, cash, arrears) or what form the value takes, which matters given openWorldHint signals an external billing system.

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 short phrase with the action verb front-loaded and the acronym expanded inline; there is no padding or redundant restatement of the title.

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 zero-parameter read with no output schema, the description is minimally adequate: it names the resource but leaves the return shape undefined, since with no output schema the agent has no way to know whether it receives a numeric amount, a currency code, or a breakdown. It is sufficient to select the tool but thin on what to expect back.

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 tool takes zero parameters and the schema is an empty object, so there is no parameter semantics to explain and the baseline of 4 applies. Nothing in the description misleads about inputs.

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 ('Show') plus a specific resource ('BSS account balance') and expands the BSS acronym to Billing and Subscription, so an agent knows exactly what it retrieves. It does not explicitly distinguish itself from the billing-adjacent siblings hcloud_list_bss_customer_orders and hcloud_list_bss_measurements, but the resource noun 'balance' is unique enough among them that confusion is unlikely.

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 statement of prerequisites, and no reference to any alternative tool or fallback. The agent must infer from the name alone that this is the tool for balance queries and that the BSS list siblings cover orders and measurements instead.

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

hcloud_show_cbr_vaulthcloud_show_cbr_vaultA
Read-onlyIdempotent

Get details of a specific CBR (Cloud Backup and Recovery) vault

NameRequiredDescriptionDefault
regionYesRegion
vault_idYesVault ID

TDQS

A3.6/5.0
Behavior3/5

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

The annotations already establish a read-only, idempotent, open-world operation, and the description is consistent with them. It adds single-vault detail-retrieval scope but no further context about not-found behavior, response scope, or service-side constraints.

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?

The single front-loaded sentence is direct and contains no unnecessary wording. Expanding CBR to 'Cloud Backup and Recovery' adds useful clarity without making the description verbose.

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 simple read-only lookup with two documented required parameters, the description, schema, and annotations provide enough information to invoke the tool correctly. Explicit ID-discovery guidance and a brief response or error-behavior note would make it more complete, especially without an output schema.

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 100%, so the baseline of 3 applies. 'Specific ... vault' loosely reinforces the role of vault_id, but the description adds no region selection or identifier-format guidance beyond the schema.

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 uses a clear verb and resource: retrieving details for one specific CBR vault, and usefully expands the CBR acronym. It implies differentiation from hcloud_list_cbr_vaults but does not explicitly define that boundary.

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

Usage Guidelines3/5

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

The phrase 'a specific ... vault' implies use when the target vault is already known, rather than when browsing vaults. However, there is no explicit when-to-use guidance or pointer to hcloud_list_cbr_vaults for discovering a vault ID.

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

hcloud_show_cce_clusterhcloud_show_cce_clusterC
Read-onlyIdempotent

Get details of a specific CCE cluster

NameRequiredDescriptionDefault
regionYesRegion
cluster_idYesCluster ID

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond them - no note on what happens if the cluster_id is unknown, no mention of region scoping behavior, and no indication of response shape.

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?

A single front-loaded sentence with zero filler. Its brevity is appropriate in form, though the extreme terseness leaves informational gaps that are penalized elsewhere rather than here.

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

Completeness2/5

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

There is no output schema, so the description is the only place an agent could learn what a cluster detail record contains, and it says nothing. For a show/detail tool with two required identifiers, this leaves the agent guessing about returned fields and error conditions.

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 100%, so both required parameters (region, cluster_id) are documented in the schema itself. The description adds no extra meaning such as ID formats or where to obtain the cluster_id, so the baseline of 3 applies.

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

Purpose3/5

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

The description gives a verb ("Get details") and a resource ("a specific CCE cluster"), so it is not tautological. However, "details" is vague about what is actually returned, and nothing distinguishes it from siblings such as hcloud_list_cce_clusters or hcloud_list_cce_nodes beyond the implicit singular/plural split.

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 guidance on when to use this tool instead of hcloud_list_cce_clusters, and no prerequisites or exclusions are stated. The agent must infer that a cluster_id from the list tool is required before calling.

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

hcloud_show_dcs_instancehcloud_show_dcs_instanceB
Read-onlyIdempotent

Get details of a specific DCS (Redis) instance

NameRequiredDescriptionDefault
regionYesRegion
instance_idYesInstance ID

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds only that it targets a single Redis-flavored DCS instance; it says nothing about failure behavior when the instance is not found, region scoping implications, or the shape of the returned detail, which is meaningful for a read that has no output schema.

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?

A single front-loaded sentence with zero filler; the resource and qualifier appear immediately. It is efficient but so terse that it omits useful operational detail rather than wasting words.

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?

The tool is simple (two required params, rich annotations), so the short description is nearly sufficient. However, with no output schema, some statement about what details are returned, or about the not-found case, would make it complete.

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 nominally 100%, so the baseline is 3, but the schema descriptions are bare restatements ('Region', 'Instance ID'). The description adds no meaning about region semantics (e.g., region/project scoping) or where instance_id is sourced, so it does not compensate for the shallow schema text.

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 ('Get details') and resource ('a specific DCS (Redis) instance'), and the word 'specific' implicitly separates it from the list sibling hcloud_list_dcs_instances. It is clear but never names the sibling that returns the collection from which instance_id must be obtained.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can infer this is the detail lookup used after hcloud_list_dcs_instances, but the description states no when-to-use condition, no prerequisite that instance_id comes from the list call, and no when-not guidance. The sibling list (list_dcs_instances, list_dcs_available_zones) is never referenced.

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

hcloud_show_dns_zonehcloud_show_dns_zoneC
Read-onlyIdempotent

Get details of a specific DNS zone

NameRequiredDescriptionDefault
regionYesRegion
zone_idYesZone ID
zone_typeNoZone type: public or privatepublic

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: it does not say what "details" comprise (recordsets? nameservers? status?), whether the call fails for private zones, or what the region scoping implies. With no output schema, that omission matters.

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?

A single front-loaded sentence with no filler or redundancy. It is efficient, though its brevity borders on under-specification rather than tight scoping.

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

Completeness2/5

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

For a detail-retrieval tool with no output schema, three parameters, and an enum distinguishing public from private zones, the description leaves out what is returned and any behavioral edge cases. An agent can call it, but cannot predict the response shape or failure modes from the definition.

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 100%, and all three parameters (region, zone_id, zone_type) are documented in the schema including the enum for zone_type, so the baseline of 3 applies. The description contributes no additional meaning, such as whether zone_type must match the zone's actual type or whether region is required for private zones.

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 uses a specific verb ("Get details") on a specific resource ("a specific DNS zone"), which is enough for an agent to distinguish it from the plural sibling hcloud_list_dns_zones. It does not explicitly name that sibling or state the singular/listing contrast, keeping it 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 statement of when to use this instead of hcloud_list_dns_zones or hcloud_list_dns_recordsets, and no prerequisites or exclusions are given. The agent must infer from the name alone that this is the single-zone detail call.

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

hcloud_show_drs_jobhcloud_show_drs_jobB
Read-onlyIdempotent

Get details of a specific DRS job

NameRequiredDescriptionDefault
job_idYesDRS job ID
regionYesRegion

TDQS

B3.4/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety and idempotency profile is covered without the description's help. The sentence adds nothing beyond them - no indication of what detail fields come back, whether a missing job returns an error or empty result, or any auth/region scoping caveat - so it is minimum viable, not rich.

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?

A single six-word sentence, front-loaded with the verb and carrying no filler or redundancy. It is lean, though its brevity comes partly from omitting anything useful rather than from tight editing.

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 trivially simple two-required-parameter read tool with full schema coverage and safety annotations, the definition is adequate to invoke correctly. With no output schema, however, an agent has no idea what 'details' comprises, and that gap is left entirely unaddressed.

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 100% with both required parameters (job_id, region) documented in the schema. The description only restates 'a specific DRS job', adding no format hints for job_id or semantic explanation of region scoping, so the baseline 3 applies.

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 states a specific verb ('Get details of') and resource ('a specific DRS job'), and the word 'specific' distinguishes single-item retrieval from the sibling hcloud_list_drs_jobs. It does not name that sibling explicitly, which keeps it 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 Guidelines3/5

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

Usage is only implied: 'specific DRS job' signals this is the detail lookup that follows a listing, and the required job_id reinforces it, but there is no explicit statement of when to use this versus hcloud_list_drs_jobs or hcloud_list_drs_quotas, and no prerequisites or error-case guidance.

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

hcloud_show_dws_clusterhcloud_show_dws_clusterB
Read-onlyIdempotent

Get details of a specific DWS (GaussDB Data Warehouse) cluster

NameRequiredDescriptionDefault
regionYesRegion
cluster_idYesDWS cluster ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond them: no statement about what detail fields are returned, error behavior for an unknown cluster_id, or region-scoping effects.

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?

A single front-loaded sentence with no filler, and the resource scope is stated before anything else. It is efficient but arguably undersized for a tool whose return contents are undocumented.

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 two-parameter read tool with full schema coverage and no output schema, the definition is minimally adequate. The gap is that nothing tells the agent what "details" comprise the response, which matters because no output schema exists to fall back on.

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 100%, so both region and cluster_id are already documented in the schema. The description adds no extra meaning such as ID format, region naming conventions, or cross-region lookup behavior, so the baseline of 3 applies.

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 states a specific verb and resource ("Get details of a specific DWS ... cluster") and disambiguates the abbreviation, so an agent knows it is a single-resource read. It does not name the sibling hcloud_list_dws_clusters explicitly, so the list-vs-show distinction is only implied by "specific".

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

Usage Guidelines3/5

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

"a specific ... cluster" implies the tool is used once a cluster_id is known, and the required cluster_id parameter reinforces that. However there is no explicit when-to-use, no prerequisite/permission note, and no named alternative such as hcloud_list_dws_clusters for discovery.

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

hcloud_show_er_routerhcloud_show_er_routerC
Read-onlyIdempotent

Get details of a specific ER (Enterprise Router) router

NameRequiredDescriptionDefault
regionYesRegion
router_idYesER router ID

TDQS

C2.9/5.0
Behavior2/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is fully covered by structured data. The description adds nothing behavioral beyond that — no indication of what 'details' comprise, what happens on an unknown router_id or region, or whether cross-region lookups behave differently under the open-world hint.

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?

A single short sentence with the resource front-loaded and no wasted words. It is efficient, though its brevity borders on under-specification rather than true crispness.

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 two-parameter read tool this covers the minimum, and the absence of an output schema means return-value explanation is not strictly required. However, a 'show details' tool would benefit from at least a hint about the kind of detail returned (routes, attachments, status) and how to source a valid router_id.

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 100%, so both parameters (region, router_id) are already documented in the schema, and the baseline of 3 applies. The description does not add any semantics such as ID format or region scoping rules.

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 states a specific verb ('Get details') and a specific resource ('a specific ER (Enterprise Router) router'), and usefully expands the acronym ER, which the name alone does not. It is distinguishable from hcloud_list_er_routers by the word 'specific', though it never names that list tool as the way to discover IDs.

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 prerequisite information, and no mention that router_id must typically be obtained from hcloud_list_er_routers. An agent is left to infer the single-object vs. list distinction from the name alone.

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

hcloud_show_gaussdb_instancehcloud_show_gaussdb_instanceC
Read-onlyIdempotent

Get details of a specific GaussDB (openGauss) instance

NameRequiredDescriptionDefault
regionYesRegion
instance_idYesGaussDB instance ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so safety and repeatability are covered. The description adds nothing beyond them — no note on what happens if the instance_id is invalid, no indication of the returned detail set, no mention that region must match the instance's actual region.

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?

A single front-loaded sentence with no filler; the '(openGauss)' parenthetical is the only extra detail and it is genuinely disambiguating. It is efficient but extremely thin, offering nothing to structure beyond the purpose statement.

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 read-only show tool with two fully documented required parameters, the minimum needed to call it is present. However, with no output schema, the description should say something about what fields a 'details' response contains; that gap is left entirely unaddressed.

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 100%, so both parameters are documented ('Region', 'GaussDB instance ID'). The description adds no extra meaning such as ID format or how to source the instance_id, making the baseline 3 appropriate.

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?

States a specific verb ('Get details') and a specific resource ('a specific GaussDB (openGauss) instance'), and the singular 'specific' plus the parameter set makes clear this is a single-object read. It does not explicitly name the sibling hcloud_list_gaussdb_instances or state that listing precedes it, so it falls short of full sibling differentiation.

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 at all: no statement of alternatives (hcloud_list_gaussdb_instances, hcloud_list_gaussdb_flavors), no prerequisite that an instance_id must first be obtained, and no exclusion conditions. Only the show-vs-list naming convention implies usage.

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

hcloud_show_imagehcloud_show_imageB
Read-onlyIdempotent

Get details of a specific IMS image (min_ram, min_disk, status)

NameRequiredDescriptionDefault
regionYesRegion
image_idYesImage ID

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description contributes the returned attribute set (min_ram, min_disk, status), which is genuinely useful since there is no output schema, but it says nothing about error behavior for an invalid image_id or region scoping.

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?

A single front-loaded sentence with zero filler. The unexplained 'IMS' abbreviation and parenthetical field list are compact and readable.

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 simple two-parameter read tool with full schema coverage and annotations, this is nearly sufficient. The only real gap is that it does not explain where an image_id comes from or how region interacts with the lookup.

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 100%, but the schema field text is only a restatement ('Region', 'Image ID'), so no real meaning is added by either source. The description adds nothing about region format or ID format, so the baseline 3 applies.

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?

States a specific verb ('Get details') and resource ('IMS image') and names the fields returned. The word 'specific' plus the required image_id signals single-resource lookup versus the sibling hcloud_list_images, though it never names that sibling explicitly.

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?

No when-to-use guidance, no mention of the list-first workflow to obtain an image_id, and no exclusions. The usage is only inferable from the tool name and the required image_id parameter.

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

hcloud_show_image_quotashcloud_show_image_quotasC
Read-onlyIdempotent

Show IMS image resource quotas

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered, and the description adds nothing on top of that. It says nothing about whether quotas are per-region limits vs. current usage, whether missing regions error out, or what a quota response contains. For a near-empty description against annotations, this is below the added-value bar.

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

Conciseness3/5

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

The single phrase is front-loaded and free of waste, so it is structurally clean. But brevity here comes from under-specification rather than economy — there is only one clause and no useful content follows it.

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

Completeness2/5

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

With no output schema, the description is the only place that could explain what quota data comes back (limit/used/reserved fields, per-region behavior), and it does not. The one required parameter is documented by the schema, but the agent still cannot predict the response shape or the region's role.

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?

There is one required parameter (region) with 100% schema description coverage, so the schema carries the documentation load. The description adds no meaning about what region scoping does (e.g., whether quotas differ per region or whether an empty result is possible), so baseline 3 applies.

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

Purpose3/5

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

"Show IMS image resource quotas" identifies the resource (IMS image quotas) and the read action, which is marginally more specific than the name alone. However, it does not distinguish this from other quota-listing siblings such as hcloud_show_quota, hcloud_list_drs_quotas, or hcloud_list_eip_quotas, nor does it clarify what an "IMS image quota" covers.

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 or when-not-to-use guidance at all. The description never mentions the alternative quota tools or the image tools (hcloud_list_images, hcloud_show_image), leaving the agent to infer selection purely from the tool name.

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

hcloud_show_load_balancerhcloud_show_load_balancerB
Read-onlyIdempotent

Get details of a specific load balancer

NameRequiredDescriptionDefault
regionYesRegion
loadbalancer_idYesLoad balancer ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no note on what the returned detail includes, whether the ID must come from a list call, or what happens if the region/ID pair is invalid.

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?

A single, front-loaded sentence with no filler or redundancy. It is efficient, though its brevity borders on under-specification rather than polished conciseness.

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 two-required-parameter read tool with full schema coverage and read-only annotations, the description is minimally sufficient to call it. It still leaves the agent guessing about return contents and the region parameter's constraint, which matters given there is no output schema.

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 100% and both parameters (region, loadbalancer_id) are documented in the schema, so the baseline is 3. The description contributes no extra meaning, such as ID format or whether region must match the load balancer's actual region.

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 states a specific verb ('Get details') and resource ('a specific load balancer'), which clearly separates it from hcloud_list_load_balancers. It does not, however, distinguish itself from hcloud_show_load_balancer_topology, the other show-style sibling for the same resource.

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

Usage Guidelines3/5

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

Usage is only implied: the word 'specific' suggests the agent must already know a load balancer ID, so listing via hcloud_list_load_balancers is the natural prerequisite. No explicit when-to-use, when-not-to-use, or alternative (topology) is named.

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

hcloud_show_load_balancer_topologyhcloud_show_load_balancer_topologyB
Read-onlyIdempotent

Show load balancer topology tree (listeners, pools, members)

NameRequiredDescriptionDefault
regionYesRegion
loadbalancer_idYesLoad balancer ID

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds the useful fact that the result is a topology tree spanning listeners, pools, and members, but says nothing about depth, shape, or whether all three levels are always populated.

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 the resource named first and the returned entities immediately after. No filler, no restatement of the tool name, nothing that could be cut.

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 two-parameter read-only tool with no output schema, the description is minimally sufficient: it names the returned entities, which is the main thing the schema cannot convey. However, it leaves the tree's structure and any per-level detail unexplained, so an agent cannot anticipate the response format.

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 100% for both required parameters (region, loadbalancer_id), so the schema carries the parameter burden. The description adds no meaning about region scoping or ID format beyond what the schema already states; baseline 3 applies.

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 pairs a specific verb ("Show") with a specific resource ("load balancer topology tree") and enumerates the contained entities (listeners, pools, members). This distinguishes it from the flat siblings hcloud_list_listeners, hcloud_list_pools, and hcloud_list_members by signalling an aggregated hierarchical view, though it never explicitly contrasts with hcloud_show_load_balancer.

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 statement of when to choose this tool over hcloud_show_load_balancer or the three separate list_* calls for listeners, pools, and members. The parenthetical contents hint at an aggregation convenience, but the agent must infer that; no prerequisites, exclusions, or alternatives are named.

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

hcloud_show_metric_datahcloud_show_metric_dataC
Read-onlyIdempotent

Show CES (Cloud Eye) metric data points

NameRequiredDescriptionDefault
toYesEnd time (UNIX timestamp in ms)
dim_0YesDimension 0 (e.g. instance_id,xxxx)
from_YesStart time (UNIX timestamp in ms)
filterYesAggregation method: average, variance, min, max, sum
periodYesAggregation period in seconds (1, 60, 300, 1200, 3600, 14400, 86400)
regionYesRegion
namespaceYesMetric namespace (e.g. SYS.ECS)
metric_nameYesMetric name (e.g. cpu_util)

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing behavioral beyond that: no note on data-point limits, how from_/to/period interact, whether large ranges are truncated, or any latency/rate considerations for a Cloud Eye query.

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

Conciseness3/5

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

The single sentence is front-loaded and free of waste, but it is terse to the point of under-specification for an 8-required-parameter tool. Brevity here is not a virtue because no useful detail is delivered.

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

Completeness2/5

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

For a tool requiring region, namespace, metric_name, dimension, aggregation, period and a time range, plus no output schema, the description should explain how the time window and period constrain results or what shape the returned data points take. None of that is present, leaving significant gaps relative to the tool's complexity.

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 100%, with each of the 8 parameters documented, including the allowed period set and filter aggregation methods, so the baseline is 3. The description contributes no additional meaning about required combinations or the format of dim_0 beyond the schema's own 'instance_id,xxxx' example.

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 names a specific verb and resource: 'Show CES (Cloud Eye) metric data points'. An agent can tell this retrieves time-series metric values rather than metric definitions (hcloud_list_metrics) or alarms. It stops short of explicitly differentiating itself from those siblings, which keeps it at 4 rather than 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 guidance on when to use this tool versus hcloud_list_metrics or hcloud_list_alarms, nor any prerequisites such as needing a valid namespace/metric pair first. The description gives only what it does, leaving the agent to infer the selection context.

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

hcloud_show_mrs_clusterhcloud_show_mrs_clusterB
Read-onlyIdempotent

Get details of a specific MRS (MapReduce Service) cluster

NameRequiredDescriptionDefault
regionYesRegion
cluster_idYesMRS cluster ID

TDQS

B3.4/5.0
Behavior2/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds no behavioral context of its own — nothing about what the returned details include (status, nodes, version), latency, or cross-region considerations, despite region being a required qualifier.

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 short sentence with zero filler, front-loading the verb and resource. Nothing in it is redundant with the title in a wasteful way, and no sentence fails to earn its place.

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 simple two-parameter read tool whose annotations and fully-documented schema cover safety and inputs, and with no output schema to explain, the description is nearly sufficient. A brief note on what the detail payload contains would complete it, but nothing needed for correct invocation is missing.

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 100% for both parameters (region, cluster_id), so the schema already carries the semantics and a baseline of 3 applies. The description contributes only the word "specific," which reinforces that cluster_id selects one cluster but adds no format or scoping detail.

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 uses a specific verb ("Get details") and a named resource ("a specific MRS (MapReduce Service) cluster"), and the word "specific" distinguishes it from the sibling hcloud_list_mrs_clusters. It does not name that sibling explicitly, so sibling differentiation is implied rather than stated.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can infer this is the tool for fetching one cluster once it has a cluster_id, versus listing many. There is no explicit statement of when to use this instead of hcloud_list_mrs_clusters, nor any prerequisite or error guidance (e.g., what happens with an unknown cluster_id).

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

hcloud_show_nat_gatewayhcloud_show_nat_gatewayC
Read-onlyIdempotent

Get details of a specific NAT gateway

NameRequiredDescriptionDefault
regionYesRegion
nat_gateway_idYesNAT gateway ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is fully covered structurally. The description adds no behavioral context whatsoever — no mention of what details are returned, whether the lookup fails when the ID is unknown, or how region scopes the lookup — so it earns little credit beyond the annotations.

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?

A single seven-word sentence with zero redundancy and the resource front-loaded after the verb. It is efficient, but the brevity is close to under-specification rather than disciplined conciseness.

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 two-required-parameter read tool with full annotation coverage and no output schema, the minimum an agent needs to invoke it is present. It nonetheless leaves the return payload and the region/ID relationship unexplained, which is a real gap for a 'show details' operation.

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 100%, so per the baseline this is a 3 even though the description says nothing about parameters. Worth noting the schema's own labels are bare ('Region', 'NAT gateway ID') and the description misses the chance to explain that region and ID jointly identify the gateway.

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?

States a specific verb ('Get details') and resource ('a specific NAT gateway'), which clearly contrasts with the list-style sibling hcloud_list_nat_gateways by virtue of 'specific'. However, the description itself does no explicit sibling differentiation beyond the noun phrase, so an agent must infer the show-vs-list split from naming conventions.

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: nothing says to call this after listing gateways, nothing points to hcloud_list_nat_gateways or the SNAT/DNAT rule list tools as alternatives, and no prerequisites are stated. The agent gets an implied 'fetch one by ID' only.

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

hcloud_show_node_poolhcloud_show_node_poolC
Read-onlyIdempotent

Get details of a specific CCE node pool

NameRequiredDescriptionDefault
regionYesRegion
cluster_idYesCluster ID
nodepool_idYesNode pool ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: it does not mention region scoping as a prerequisite, what happens if the pool does not exist, or any notable return characteristics.

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?

A single front-loaded sentence with no filler or redundancy. It is efficient, though its brevity reflects under-specification rather than tight curation of substantive content.

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 read-only lookup with fully documented required parameters and no output schema, the description is adequate but thin. It leaves the caller without the ID-sourcing workflow or any indication of what the returned details contain, which an agent planning a multi-step node pool inspection would benefit from.

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 100%, so each of the three required parameters is documented in the schema and the baseline is 3. The description contributes no extra meaning, such as whether nodepool_id must belong to the given cluster_id or whether region must match the cluster's region.

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 states a specific verb and resource ('Get details of a specific CCE node pool'), which is unambiguous against sibling list tools like hcloud_list_node_pools. It does not explicitly name the close sibling, but the singular 'specific ... node pool' versus list semantics is clear from the text.

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 beyond the implicit single-object fetch. It never tells the agent it needs a nodepool_id obtained from hcloud_list_node_pools, nor does it state that this tool is the follow-up to the list call. The agent must infer the workflow entirely.

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

hcloud_show_oms_taskhcloud_show_oms_taskB
Read-onlyIdempotent

Get details of a specific OMS (Object Storage Migration Service) task

NameRequiredDescriptionDefault
regionYesRegion
task_idYesTask ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds essentially no behavioral context beyond that label - nothing about error behavior for an unknown task_id, region scoping requirements, or what the returned 'details' comprise.

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?

A single front-loaded sentence with zero waste and the acronym expanded for clarity. It is efficient, though the brevity leaves little substance beyond what the name already conveys.

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 two-parameter read-only lookup with annotations covering safety, this is minimally adequate: the agent knows what it fetches and which inputs are required. Missing is any sense of the response content (no output schema exists) or failure modes, which would matter for a get-by-ID call.

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 100%, so the baseline is 3. However, the schema only labels the parameters ('Region', 'Task ID') with no format hints, and the description does not compensate by explaining task_id format or whether region must match the task's region.

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 states a specific verb ('Get details') and resource ('a specific OMS task'), and the word 'specific' plus the required task_id distinguish it from the sibling hcloud_list_oms_tasks. It stops short of naming the list tool explicitly, but the singular/plural split is inferable.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can guess this is the follow-up call after listing tasks to get one task's details. There is no explicit statement of when to use this versus hcloud_list_oms_tasks or hcloud_list_oms_sync_tasks, and no prerequisites such as needing an existing task_id in the given region.

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

hcloud_show_public_iphcloud_show_public_ipC
Read-onlyIdempotent

Get details of a specific elastic public IP

NameRequiredDescriptionDefault
regionYesRegion
publicip_idYesPublic IP ID

TDQS

C2.9/5.0
Behavior2/5

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

This is a pure read tool, and the annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds no behavioral context beyond the annotations: it does not say what 'details' includes, what happens if the ID or region is invalid, or whether the lookup is per-region.

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

Conciseness3/5

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

The single sentence contains no waste and is front-loaded with the verb. However, it is too terse to make that sentence earn its place when compared with what an agent still needs to know.

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 two-parameter read tool with full schema coverage and complete annotations, the level of detail is borderline adequate. What is missing is a brief note on the returned details or the relationship to the list tool; however, without an output schema, that gap is relatively minor.

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 100%, so both required parameters are documented, but only minimally ('Region', 'Public IP ID'). The description contributes nothing beyond that, so it does not compensate for the vague schema text; the baseline of 3 applies.

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 names a specific verb and resource ('Get details of a specific elastic public IP'), which is much clearer than the tautological title. It does not differentiate from the sibling hcloud_list_public_ips, but the single-object scope is still unambiguous.

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 guidance on when to use this versus hcloud_list_public_ips, and no mention of prerequisites such as needing a known publicip_id or region first. The agent must infer that a single-ID lookup is the right choice.

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

hcloud_show_quotahcloud_show_quotaC
Read-onlyIdempotent

Show VPC resource quotas

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds almost nothing beyond restating the resource: it does not say whether quotas are returned as absolute limits, used/available counts, or per-project versus per-region scope, nor what a caller learns from the result.

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

Conciseness3/5

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

It is a single front-loaded phrase with no filler, so nothing is wasted. The problem is under-specification rather than verbosity; the same brevity with a clarifying clause about what quota data is returned would cost nothing.

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

Completeness2/5

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

The tool is simple (one required parameter, no output schema), so the description carries responsibility for explaining what comes back, and it does not. An agent cannot tell what a quota response contains or how it relates to siblings like hcloud_show_server_limits and hcloud_list_eip_quotas.

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 100%, so the single region parameter is documented in the schema (albeit minimally as just "Region"). The description adds no format hints, allowed values, or default, so the baseline of 3 applies rather than anything higher.

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

Purpose3/5

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

The description names a verb ("Show") and a resource ("VPC resource quotas"), but it is a bare noun phrase with no scope detail. It does not distinguish this from other quota tools in the sibling list such as hcloud_list_eip_quotas, hcloud_list_drs_quotas, or hcloud_show_image_quotas, so an agent cannot tell which quota family to pick from the name and text alone.

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 precondition for the required region argument, and no mention of alternatives. The agent must infer entirely from the tool name that this answers "how much VPC capacity is left in a region" rather than listing VPC objects.

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

hcloud_show_scaling_confighcloud_show_scaling_configC
Read-onlyIdempotent

Get details of a specific AS configuration

NameRequiredDescriptionDefault
regionYesRegion
scaling_configuration_idYesScaling configuration ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no indication of what an 'AS configuration' contains, what happens on an unknown ID, or any auth/regional scoping caveat.

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?

A single short sentence with no filler, and the resource is front-loaded. It is efficient but so terse that conciseness shades into under-specification rather than crispness.

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 two-parameter read tool with full schema coverage and safety annotations, the essentials are present. The remaining gap is that no output schema exists and the description does not say what a scaling configuration record returns, nor what 'AS' stands for, which an agent may need to interpret results.

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 100%, so the two parameters are documented, albeit tautologically ('Region', 'Scaling configuration ID'). The description adds no format guidance such as the expected region code convention or whether the ID must come from the list endpoint, so it sits at the baseline for full schema coverage.

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 ('Get details') and resource ('a specific AS configuration'), and the singular/plural contrast with hcloud_list_scaling_configs makes the single-item scope inferable. However, it never names the sibling tool or expands the 'AS' abbreviation, so the differentiation comes from the tool name rather than the description itself.

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 mention of prerequisites, and no reference to hcloud_list_scaling_configs as the way to discover the required ID. The word 'specific' implies an existing identifier, but the agent gets no explicit routing instruction.

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

hcloud_show_scaling_grouphcloud_show_scaling_groupB
Read-onlyIdempotent

Get details of a specific AS group

NameRequiredDescriptionDefault
regionYesRegion
scaling_group_idYesScaling group ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description contributes nothing further: no note on error behavior for unknown IDs, cross-region lookup behavior, or what level of detail is returned.

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?

A single front-loaded sentence with no filler. It is efficient, though its brevity is closer to under-specification than to disciplined concision.

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 read-only lookup with full schema coverage and annotations, the essentials are present. Gaps remain around region/ID interaction and the shape of the returned detail, which the absent output schema leaves unexplained.

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 100%, so both parameters are documented in the schema, making 3 the baseline. The description adds no meaning beyond them, notably not explaining why a region is required alongside a globally unique scaling group ID.

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 ("Get details") and a specific resource ("a specific AS group"), which is enough to distinguish it from the listing sibling hcloud_list_scaling_groups. It does not name that sibling or expand "AS", so a bit of inference is required.

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

Usage Guidelines3/5

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

Usage is only implied: fetch one group by ID rather than enumerate them. There is no explicit statement of when to prefer this over hcloud_list_scaling_groups, nor any precondition such as obtaining the ID from the list call first.

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

hcloud_show_scaling_policyhcloud_show_scaling_policyB
Read-onlyIdempotent

Get details of a specific AS policy

NameRequiredDescriptionDefault
regionYesRegion
scaling_policy_idYesScaling policy ID

TDQS

B3.3/5.0
Behavior2/5

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

The annotations establish that the operation is read-only, idempotent, and open-world, and the description is consistent with them. Beyond indicating a lookup, the description adds no behavioral context such as the source of the details, response scope, or handling of an unknown policy ID.

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?

The single short sentence is direct, front-loaded, and contains no unnecessary wording. Its brevity is appropriate for a simple show operation, although the surrounding definition remains minimal.

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 two-parameter read operation, the schema and annotations provide enough information to make a basic call. With no output schema, however, the description could add more value by indicating what policy details are returned or how this tool relates to hcloud_list_scaling_policies.

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 100%, so both required parameters are already documented, establishing the baseline score. The description's reference to a specific policy aligns with scaling_policy_id but adds no further meaning about region selection or ID discovery.

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 clearly states the action and resource: retrieving details for a specific auto-scaling policy. It implies a single-item lookup but does not explicitly distinguish this tool from hcloud_list_scaling_policies or other scaling-related siblings.

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

Usage Guidelines3/5

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

The phrase 'a specific AS policy' implies use when the caller already has a policy ID and wants its details. There is no explicit guidance on when to use the list tool first, when this tool is unnecessary, or any prerequisites.

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

hcloud_show_security_grouphcloud_show_security_groupC
Read-onlyIdempotent

Get details of a specific security group

NameRequiredDescriptionDefault
regionYesRegion
security_group_idYesSecurity group ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered by structured data. The description adds nothing beyond that: no indication of what details are returned, whether rules are included, or how a missing ID is handled. For a read tool with full annotation coverage this is a minimal contribution.

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?

A single short sentence with the verb and resource front-loaded and no filler. Its brevity is efficient, though it borders on under-specification rather than being genuinely well-structured.

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 two-parameter read tool with no output schema, the definition is minimally adequate: annotations cover safety and the schema covers parameters. It is missing any statement of what the returned detail comprises or the failure mode for an unknown ID, which an agent would want before calling.

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 100% with only two parameters (region, security_group_id), so the schema already carries the parameter semantics and the baseline of 3 applies. The description adds no format, scoping, or sourcing hints for either parameter.

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?

States a specific verb ("Get details") and a specific resource ("a specific security group"), which distinguishes it from the list-style sibling hcloud_list_security_groups. The differentiation is only implicit through the word "specific" rather than an explicit contrast with the 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?

The description gives no when-to-use guidance, no prerequisites (e.g. that a group ID must first come from hcloud_list_security_groups), and no exclusions. An agent must infer from the tool name alone that this is the single-resource lookup counterpart to the list tool.

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

hcloud_show_serverhcloud_show_serverC
Read-onlyIdempotent

Get details of a specific ECS server

NameRequiredDescriptionDefault
regionYesRegion
server_idYesServer ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds nothing beyond that — no statement about what fields are returned, whether the call fails for a nonexistent ID, or any regional/auth considerations for this read operation.

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?

A single short sentence with the verb and resource front-loaded and no filler. It is efficient, though the brevity is close to under-specification given the number of sibling tools with similar names.

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 two-parameter read tool with full annotation coverage and no output schema, the description is minimally sufficient. It still leaves an agent without guidance on obtaining a valid server_id or on what the returned detail set contains.

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 100%, so both required parameters (region, server_id) are documented in the schema and the baseline is 3. The description contributes no extra meaning, such as the expected ID format or whether region must match the server's actual region.

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 uses a specific verb ('Get details') and resource ('a specific ECS server'), and the word 'specific' signals single-item retrieval rather than listing. It does not explicitly distinguish itself from the many sibling show_* tools or from hcloud_list_servers, 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 mention of the prerequisite of knowing a server_id (e.g., obtained from hcloud_list_servers), and no exclusion or alternative named. An agent must infer the list-then-show workflow on its own.

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

hcloud_show_server_limitshcloud_show_server_limitsC
Read-onlyIdempotent

Show ECS quota/limits for the tenant

NameRequiredDescriptionDefault
regionYesRegion

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds the tenant-level scope, which is modest but real context; it does not describe the return shape, quota units, or the reset period, which is a gap given there is no output schema.

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?

A single seven-word sentence with the key scope (tenant) front and center, zero padding. It is efficient rather than padded, though the brevity leans toward under-specification.

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 one-parameter read tool with full annotation coverage, the description is minimally sufficient — the agent knows to pass a region and get quotas back. But without an output schema, the agent cannot know what quota categories or units to expect, and overlapping sibling quota tools remain undifferentiated.

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 100% and there is only one parameter, so baseline is 3. The description implies the region scoping but adds no meaning beyond the schema's bare "Region" label — not even an example format or whether it is required to match an existing availability zone.

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

Purpose3/5

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

The description has a verb ("Show") and a resource ("ECS quota/limits") with tenant scoping, so the general intent is legible. However, "quota/limits" is unspecified — it does not say which quota dimensions (vCPU, memory, instance count, per-AZ) are returned, and it gives no signal distinguishing it from the sibling hcloud_show_quota or hcloud_show_image_quotas.

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 stated alternative, and no prerequisite (e.g., whether the region must exist or whether it targets the current project). An agent seeing hcloud_show_quota alongside this tool has nothing to route on.

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

hcloud_show_sms_serverhcloud_show_sms_serverB
Read-onlyIdempotent

Get details of a specific SMS (Server Migration Service) source server

NameRequiredDescriptionDefault
regionYesRegion
server_idYesServer ID

TDQS

B3.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds no behavior beyond that: nothing about what happens when the server_id is unknown, whether lookup is region-scoped, or what the 'details' comprise. It essentially restates the title.

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 zero filler; the resource and its scope come first and the acronym is disambiguated inline. Nothing is wasted.

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 two-parameter read tool with full annotation and schema coverage, the definition is barely sufficient. Because there is no output schema, the agent has no idea what fields the returned 'details' contain, and the description does not compensate for that gap.

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 100% and both parameters (region, server_id) are required and documented in the schema, so the baseline is 3. The description only hints that server_id identifies a 'specific' server and says nothing about how region constrains the lookup or what format an ID takes.

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?

States a specific verb ('Get details of') and a specific resource (an SMS source server), and expands the SMS acronym so the domain is unambiguous. The word 'specific' implicitly contrasts with the sibling hcloud_list_sms_servers, but it never names that sibling explicitly.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can infer this is for fetching one server when it already holds a server_id, versus listing servers. There is no explicit when-to-use, prerequisites, or named alternative such as hcloud_list_sms_servers for discovery.

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

hcloud_show_sms_taskhcloud_show_sms_taskC
Read-onlyIdempotent

Get details of a specific SMS (Server Migration Service) migration task

NameRequiredDescriptionDefault
regionYesRegion
task_idYesTask ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered structurally. The description contributes nothing behavioral beyond that — no indication of what the response contains, whether a missing task errors or returns empty, or any pagination/consistency notes.

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?

A single front-loaded sentence with no filler or redundancy. It is efficient, though its brevity leaves no room for structure that would carry usage or behavioral cues.

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 two-parameter read tool with full schema coverage, no output schema, and annotations carrying safety, the description is minimally sufficient to pick the tool. It still leaves out how to obtain a task_id and what details are returned, which a caller of a resource-detail endpoint would want.

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 100%, so baseline is 3. The description adds no meaning to the two parameters — it does not say what form a task_id takes or whether region must match the task's home region — so it neither compensates nor detracts.

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 names a specific verb ("Get details") and a specific resource (an SMS Server Migration Service migration task), and the word "specific" implicitly contrasts with the sibling hcloud_list_sms_tasks. It also expands the SMS acronym so the agent knows the domain, though it never names the list tool it complements.

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: nothing says to call hcloud_list_sms_tasks first to discover a task_id, nothing explains when to prefer this over hcloud_show_sms_server, and no prerequisites are given. The agent must infer the list-then-show workflow from the sibling names alone.

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

hcloud_show_snapshothcloud_show_snapshotA
Read-onlyIdempotent

Get details of a specific EVS snapshot

NameRequiredDescriptionDefault
regionYesRegion
snapshot_idYesSnapshot ID

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so safety and repeatability are covered without help from the description. The description adds nothing beyond that — no note on error behavior for a nonexistent ID, no cross-region caveat, and no hint at response shape despite there being no output schema.

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?

It is a single tight sentence with the resource front-loaded and zero filler. It is arguably over-terse for a tool definition, but nothing in the sentence is wasted.

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?

This is a simple two-parameter read operation whose safety profile is fully covered by annotations and whose parameters are fully covered by the schema, so the description's burden is small. The only real gap is the unexplained 'EVS' acronym and lack of any pointer to the listing tool that produces the required ID.

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 100%, so both required parameters (region, snapshot_id) are documented in the schema, establishing the baseline of 3. The description contributes no additional meaning — it does not explain the region/snapshot_id relationship or any format expectations.

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 names a specific verb ('Get details') and resource ('EVS snapshot') and narrows scope to 'a specific' one, which implicitly distinguishes it from the sibling hcloud_list_snapshots. It does not explicitly name that sibling or state what fields the details include, so it stops short of full differentiation.

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

Usage Guidelines3/5

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

'A specific ... snapshot' implies the caller must already hold a snapshot_id, which hints at a list-then-show workflow, but the description never says to use hcloud_list_snapshots first or when not to use this tool. Guidance is implied rather than stated.

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

hcloud_show_subnethcloud_show_subnetB
Read-onlyIdempotent

Get details of a specific subnet

NameRequiredDescriptionDefault
regionYesRegion
subnet_idYesSubnet ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety and repeatability are covered. The description adds nothing beyond that — no statement about failure behavior when the ID is unknown, cross-region lookup semantics, or response shape — making it largely redundant with the structured metadata.

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 short sentence with the operation and target front-loaded, and no filler or repetition of the tool name. Nothing in it is wasted, even if more could have been said.

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

Completeness2/5

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

For a lookup tool with no output schema, the description should at minimum sketch what details are returned and how a caller resolves the required region/subnet_id pair. Neither is present, so an agent knows the intent but not the result or the lookup semantics.

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 100%, so both 'region' and 'subnet_id' are documented in the schema, and the baseline is 3. The description adds no extra meaning, such as whether region must correspond to the subnet's home region or what identifier format subnet_id expects.

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 states a specific verb and resource: 'Get details of a specific subnet', which is unambiguous about the read-by-identifier operation. It does not, however, distinguish this from the very similar sibling hcloud_list_subnets, so an agent must infer the singular-vs-list split from the name alone.

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

Usage Guidelines3/5

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

The word 'specific' implies a single-subnet lookup as opposed to listing, which is a weak but real usage signal. There is no explicit when-to-use, no prerequisite note (e.g. that region must match the subnet's region), and no named alternative such as hcloud_list_subnets.

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

hcloud_show_swr_domainhcloud_show_swr_domainB
Read-onlyIdempotent

Show the SWR login domain for the tenant

NameRequiredDescriptionDefault
regionYesRegion

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds the tenant-specific scope of the returned domain, which is useful behavioral context, but it does not discuss permissions, rate limits, or response format.

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?

The description is a single, front-loaded sentence with no unnecessary wording. It immediately communicates the operation and its scope.

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 simple show operation with one fully documented parameter and no output schema, the description sufficiently explains what is returned: the SWR login domain for the tenant. It could be slightly more complete with usage context, but the core information is present.

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 100%, so the single "region" parameter is already documented in the schema. The description does not add meaning beyond what the schema provides for that parameter; baseline 3 is appropriate.

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 states a specific verb ("Show") and resource ("SWR login domain") with a clear tenant scope. It does not explicitly contrast with sibling SWR tools, but the resource is distinct enough for an agent to identify the operation.

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 guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. The only implied usage is that it retrieves the SWR login domain, which is not sufficient when-to-use guidance.

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

hcloud_show_userhcloud_show_userB
Read-onlyIdempotent

Get details of a specific IAM user

NameRequiredDescriptionDefault
user_idYesUser ID

TDQS

B3.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond them — no indication of what happens with an invalid or missing user_id, no permission/domain-scoping notes, and no sense of return shape.

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?

One short sentence, front-loaded with the verb and resource, with zero filler. Nothing can be trimmed without losing information.

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 one-parameter read tool with full annotations, the definition is minimally sufficient. With no output schema, though, the description could reasonably say what a 'detail' response contains, and it never tells the agent how to obtain a user_id.

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 100% for the single parameter, so the schema already documents user_id. The description adds no meaning beyond it (e.g., whether it is an IAM user ID, name, or the source list call to obtain it), so the baseline holds.

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?

States a specific verb ('Get details') and a specific resource ('a specific IAM user'), which is enough to distinguish a single-user fetch from the sibling hcloud_list_users. It does not name the sibling explicitly, so it stops short of the top band.

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

Usage Guidelines3/5

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

Usage is only implied: 'specific' suggests calling this when a user_id is already known rather than enumerating. There is no explicit when-to-use/when-not guidance and no pointer to hcloud_list_users for discovering IDs.

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

hcloud_show_volumehcloud_show_volumeA
Read-onlyIdempotent

Get details of a specific EVS volume

NameRequiredDescriptionDefault
regionYesRegion
volume_idYesVolume ID

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: it does not say what happens on an unknown ID, whether lookup is region-scoped, or how errors surface.

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. Nothing is redundant, and the key information (detail retrieval for one volume) appears immediately.

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 two-parameter read tool with full schema coverage and safety annotations, this is minimally adequate. With no output schema, however, the description should at least indicate what detail fields are returned, which it omits.

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 100% for both required parameters, so the baseline is 3. The description only loosely ties volume_id to an EVS volume and adds no format, region-scoping, or ID-discovery guidance beyond the schema.

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?

States a specific verb and resource: 'Get details of a specific EVS volume'. This clearly distinguishes it from the sibling lister hcloud_list_volumes, but it does not explicitly name that sibling or note that it requires an existing volume ID.

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

Usage Guidelines3/5

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

Usage is only implied by the singular 'specific volume' phrasing versus the list-style siblings. There is no explicit when-to-use or when-not-to-use guidance and no mention of prerequisites such as already knowing the volume_id.

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

hcloud_show_vpchcloud_show_vpcC
Read-onlyIdempotent

Get details of a specific VPC

NameRequiredDescriptionDefault
regionYesRegion
vpc_idYesVPC ID

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is fully covered and the lower bar applies. The description adds nothing on top: no note that this is a non-mutating lookup, no indication of whether a missing VPC errors or returns empty, and no mention that region scopes the lookup (the same VPC ID may not exist across regions).

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?

One short sentence with no padding and the resource in focus — structurally clean. It is arguably too terse rather than too long, but nothing is wasted or buried.

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

Completeness2/5

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

This is a simple two-parameter read with no output schema, so the description carries the burden of explaining the return shape and the region/ID relationship. It does neither, and it never routes the agent to hcloud_list_vpcs for enumeration, leaving the definition insufficient for confident invocation sequencing.

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 100% (both required parameters are documented, albeit tersely as 'Region' and 'VPC ID'), which sets the baseline at 3. The description adds no meaning beyond the schema — nothing on ID format, on whether region must match the VPC's owning region, or on accepted region naming conventions.

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

Purpose3/5

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

The description names a verb and resource ('Get details of a specific VPC'), which is enough to distinguish a single-resource fetch from a browse operation in the abstract. However, it never mentions the sibling hcloud_list_vpcs, and 'details' is undefined, so the boundary between fetching one VPC and listing all VPCs rests entirely on the reader's inference from the word 'specific'.

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 exclusion pointing to hcloud_list_vpcs for discovery, and no statement of prerequisites such as needing a VPC ID obtained from a list call first. The agent must guess the intended call sequence.

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

hcloud_show_vpn_connectionhcloud_show_vpn_connectionB
Read-onlyIdempotent

Get details of a specific VPN connection

NameRequiredDescriptionDefault
regionYesRegion
connection_idYesVPN connection ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds nothing beyond that — no indication of what detail fields come back, whether the call fails on a missing connection, or any regional scoping behavior.

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?

A single front-loaded sentence with no filler or redundancy. It is efficient, though the extreme brevity leaves little room for the guidance an agent would benefit from.

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?

This is a simple two-parameter read tool with full schema coverage and annotations, so the essentials are present. However, with no output schema the description could have sketched what 'details' includes, which would help an agent decide whether this call is worth making.

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 100% for both parameters (region, connection_id), so the schema carries the parameter documentation. The description contributes no additional meaning such as region format or ID source; baseline 3 applies.

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 plus resource ('Get details of a specific VPN connection'), and the word 'specific' implicitly contrasts with the sibling hcloud_list_vpn_connections. It stops short of naming the sibling explicitly, so an agent must infer the list-vs-show split.

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

Usage Guidelines3/5

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

Usage is only implied: retrieve one connection by ID when the ID is already known, versus listing them via hcloud_list_vpn_connections. There is no explicit when-to-use, when-not, or prerequisite statement.

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

hcloud_show_vpn_gatewayhcloud_show_vpn_gatewayB
Read-onlyIdempotent

Get details of a specific VPN gateway (VGW)

NameRequiredDescriptionDefault
regionYesRegion
vgw_idYesVPN gateway ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is fully covered. The description adds nothing beyond that — no note on what the response contains, whether a missing gateway raises an error, or why region is needed alongside the ID.

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?

A single short sentence with no filler and the resource front-loaded. It is efficient rather than padded, though its brevity borders on under-specification.

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 two-parameter read tool with full schema coverage and rich annotations, the description is minimally sufficient. It omits any hint of the returned gateway attributes or error behavior, which would be the only remaining gaps.

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 100%, so the baseline is 3; the schema labels both parameters ('Region', 'VPN gateway ID'). The description only implies that vgw_id selects the gateway and adds no meaning about region scoping or ID format beyond the schema text.

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 states a specific verb and resource ('Get details of a specific VPN gateway') and the word 'specific' signals it is a single-resource read, which distinguishes it from the sibling hcloud_list_vpn_gateways. It does not explicitly name the sibling, but the show/list contrast is clear.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can infer this is for fetching one known VGW rather than enumerating them, but the description never states when to prefer it over hcloud_list_vpn_gateways or what to do if the ID is unknown. No prerequisites or exclusions are given.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 150 tool updatesv0.4.0
    • First observedhcloud_cli
    • First observedhcloud_list_addon_instances
    • First observedhcloud_list_agencies
    • First observedhcloud_list_alarm_rules
    • First observedhcloud_list_alarms
    • First observedhcloud_list_availability_zones
    • First observedhcloud_list_bandwidths
    • First observedhcloud_list_bss_customer_orders
    • First observedhcloud_list_bss_measurements
    • First observedhcloud_list_cbr_backups
    • First observedhcloud_list_cbr_policies
    • First observedhcloud_list_cbr_vaults
    • First observedhcloud_list_cce_clusters
    • First observedhcloud_list_cce_nodes
    • First observedhcloud_list_cci_deployments
    • First observedhcloud_list_cci_namespaces
    • First observedhcloud_list_cci_pods
    • First observedhcloud_list_cfw_acl_rules
    • First observedhcloud_list_cfw_firewalls
    • First observedhcloud_list_cfw_service_rules
    • First observedhcloud_list_codearts_pipelines
    • First observedhcloud_list_codearts_projects
    • First observedhcloud_list_codearts_repositories
    • First observedhcloud_list_dataarts_catalogs
    • First observedhcloud_list_dataarts_workspaces
    • First observedhcloud_list_dcs_available_zones
    • First observedhcloud_list_dcs_flavors
    • First observedhcloud_list_dcs_instances
    • First observedhcloud_list_dds_flavors
    • First observedhcloud_list_dds_instances
    • First observedhcloud_list_dds_storage_types
    • First observedhcloud_list_dns_recordsets
    • First observedhcloud_list_dns_zones
    • First observedhcloud_list_domains
    • First observedhcloud_list_drs_jobs
    • First observedhcloud_list_drs_quotas
    • First observedhcloud_list_dws_clusters
    • First observedhcloud_list_dws_flavors
    • First observedhcloud_list_eip_quotas
    • First observedhcloud_list_elb_flavors
    • First observedhcloud_list_er_attachments
    • First observedhcloud_list_er_route_tables
    • First observedhcloud_list_er_routers
    • First observedhcloud_list_flavors
    • First observedhcloud_list_gaussdb_datastores
    • First observedhcloud_list_gaussdb_flavors
    • First observedhcloud_list_gaussdb_instances
    • First observedhcloud_list_groups
    • First observedhcloud_list_health_monitors
    • First observedhcloud_list_images
    • First observedhcloud_list_keypairs
    • First observedhcloud_list_kms_key_detail
    • First observedhcloud_list_kms_keys
    • First observedhcloud_list_l7_policies
    • First observedhcloud_list_listeners
    • First observedhcloud_list_load_balancers
    • First observedhcloud_list_lts_groups
    • First observedhcloud_list_lts_streams
    • First observedhcloud_list_members
    • First observedhcloud_list_metrics
    • First observedhcloud_list_mrs_clusters
    • First observedhcloud_list_mrs_flavors
    • First observedhcloud_list_nat_gateway_dnat_rules
    • First observedhcloud_list_nat_gateway_snat_rules
    • First observedhcloud_list_nat_gateways
    • First observedhcloud_list_node_pools
    • First observedhcloud_list_oms_sync_tasks
    • First observedhcloud_list_oms_tasks
    • First observedhcloud_list_organizations_accounts
    • First observedhcloud_list_organizations_ous
    • First observedhcloud_list_os_versions
    • First observedhcloud_list_policies
    • First observedhcloud_list_pools
    • First observedhcloud_list_projects
    • First observedhcloud_list_public_ips
    • First observedhcloud_list_rds_backups
    • First observedhcloud_list_rds_datastores
    • First observedhcloud_list_rds_flavors
    • First observedhcloud_list_rds_instances
    • First observedhcloud_list_rds_storage_types
    • First observedhcloud_list_rgc_control_policies
    • First observedhcloud_list_route_tables
    • First observedhcloud_list_scaling_configs
    • First observedhcloud_list_scaling_groups
    • First observedhcloud_list_scaling_instances
    • First observedhcloud_list_scaling_policies
    • First observedhcloud_list_security_group_rules
    • First observedhcloud_list_security_groups
    • First observedhcloud_list_server_block_devices
    • First observedhcloud_list_server_interfaces
    • First observedhcloud_list_servers
    • First observedhcloud_list_smn_subscriptions
    • First observedhcloud_list_smn_topics
    • First observedhcloud_list_sms_migration_projects
    • First observedhcloud_list_sms_servers
    • First observedhcloud_list_sms_tasks
    • First observedhcloud_list_snapshots
    • First observedhcloud_list_subnets
    • First observedhcloud_list_swr_namespaces
    • First observedhcloud_list_swr_repositories
    • First observedhcloud_list_swr_tags
    • First observedhcloud_list_user_policies
    • First observedhcloud_list_users
    • First observedhcloud_list_volume_types
    • First observedhcloud_list_volumes
    • First observedhcloud_list_vpcs
    • First observedhcloud_list_vpn_connections
    • First observedhcloud_list_vpn_customer_gateways
    • First observedhcloud_list_vpn_gateways
    • First observedhcloud_list_vpn_ike_policies
    • First observedhcloud_list_vpn_ipsec_policies
    • First observedhcloud_obs_cat
    • First observedhcloud_obs_ls
    • First observedhcloud_obs_stat
    • First observedhcloud_show_bss_account_balance
    • First observedhcloud_show_cbr_vault
    • First observedhcloud_show_cce_cluster
    • First observedhcloud_show_dcs_instance
    • First observedhcloud_show_dns_zone
    • First observedhcloud_show_drs_job
    • First observedhcloud_show_dws_cluster
    • First observedhcloud_show_er_router
    • First observedhcloud_show_gaussdb_instance
    • First observedhcloud_show_image
    • First observedhcloud_show_image_quotas
    • First observedhcloud_show_load_balancer
    • First observedhcloud_show_load_balancer_topology
    • First observedhcloud_show_metric_data
    • First observedhcloud_show_mrs_cluster
    • First observedhcloud_show_nat_gateway
    • First observedhcloud_show_node_pool
    • First observedhcloud_show_oms_task
    • First observedhcloud_show_public_ip
    • First observedhcloud_show_quota
    • First observedhcloud_show_scaling_config
    • First observedhcloud_show_scaling_group
    • First observedhcloud_show_scaling_policy
    • First observedhcloud_show_security_group
    • First observedhcloud_show_server
    • First observedhcloud_show_server_limits
    • First observedhcloud_show_sms_server
    • First observedhcloud_show_sms_task
    • First observedhcloud_show_snapshot
    • First observedhcloud_show_subnet
    • First observedhcloud_show_swr_domain
    • First observedhcloud_show_user
    • First observedhcloud_show_volume
    • First observedhcloud_show_vpc
    • First observedhcloud_show_vpn_connection
    • First observedhcloud_show_vpn_gateway

TDQS

C2.7/5.0

Scored across 150 tools

Disambiguation3/5

Most tools are service-prefixed and target distinct resources, but the generic hcloud_cli tool overlaps every specialized tool by allowing arbitrary operations. There are also near-duplicates such as list_alarms vs list_alarm_rules and OBS-specific tools vs CLI-based OBS access, so boundaries are not fully clean.

Naming Consistency4/5

The set mostly follows a clear hcloud_<verb>_<resource> pattern, such as hcloud_list_servers and hcloud_show_server. Minor deviations exist: hcloud_cli, the Unix-style hcloud_obs_ls/stat/cat names, and hcloud_list_kms_key_detail acting like a detail getter.

Tool Count1/5

150 tools is far beyond a practical agent-sized tool set, even for a broad cloud provider. Many services are represented only by list/show tools, so the large count is not matched by deep structured operations and creates an overwhelming selection surface.

Completeness3/5

The server provides broad read-only inventory coverage across many Huawei Cloud services, and hcloud_cli acts as a catch-all for gaps. However, the specialized tools omit create/update/delete, start/stop, attach/detach, and many lifecycle operations, so the structured surface is notably incomplete for management tasks.

Related MCP Connectors

Related MCP Servers