Get specific handle
retrieveHandleGet specific handle - Get specific handle
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| handleId | Yes | ||
| x-trace-id | No | ||
| x-request-id | Yes |
retrieveHandleGet specific handle - Get specific handle
| Name | Required | Description | Default |
|---|---|---|---|
| handleId | Yes | ||
| x-trace-id | No | ||
| x-request-id | Yes |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Input schema / properties / x-hapi-auth-stateRemoved value: -{
- "type": "string"
-}Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false, so the safety profile is clear. However, the description adds no behavioral context beyond the annotation—no return format, permission requirements, error behavior, or rate limits. Given annotations exist, the bar is lower, but the description should still add value; here it adds none.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description repeats itself verbatim ('Get specific handle - Get specific handle'), wasting characters without adding information. Effective conciseness would use a single sentence with distinct content about the operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 3 parameters (2 required) and no output schema, yet the description provides no context about the return object, usage conditions, or relationship to sibling tools like listHandles. The name implies a get-by-ID operation, but the description fails to confirm or elaborate, leaving the agent under-equipped.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the three parameters (handleId, x-request-id, x-trace-id). With no parameter semantics in either the schema or description, the agent must guess at the meaning of handleId and the required UUID pattern for x-request-id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is 'Get specific handle - Get specific handle', which is a tautology that merely restates the tool's name and title. It does not explain what a handle is, what the returned data contains, or how it differs from listHandles or other retrieve* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like listHandles or other retrieve calls. It does not specify use cases, prerequisites, or exclusions, leaving the agent without decision criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Many tools have clearly distinct CRUD roles per resource, but there are several confusing overlaps: start/stop/restart/shutdown/rescue are similar lifecycle actions, and there are duplicate audit tools like retrieveImageAuditsList and retrieveImageAuditsList1 (one even mislabeled as DNS Zones audit). Additionally, retrieveTagAuditsList appears to duplicate retrieveAssignmentsAuditsList, and updateDnsZoneRecord incorrectly says 'Create resource record'. These overlaps and mislabeled descriptions make it hard to pick the right tool.
The naming is a mix of camelCase verb_noun patterns, but inconsistent. Some tools use 'retrieveXList' while others use 'listX', some use 'Cancel' with a capital letter, and 'tool_search' uses snake_case. Numeric suffixes like 'retrieveImageAuditsList1' and verbs like 'patchInstance' instead of 'updateInstance' further break consistency.
With 124 tools, this is an extremely large tool surface for an MCP server. Even for a broad cloud provider API, this overwhelms an agent's context and selection capabilities. The number far exceeds reasonable scoping and creates unnecessary selection overhead.
The tool set covers a wide range of resources thoroughly: instances, snapshots, images, private networks, object storage, DNS, domains, tags, roles, users, secrets, and audits. Most resources have create/retrieve/update/delete lifecycle operations, and there are extensive audit history tools. Minor gaps exist (e.g., no explicit instance deletion besides cancel, no separate firewall management beyond upgradeInstance), but overall the surface is quite complete for its domain.