Skip to main content
Glama

services_ssh_keys_edit

Destructive

Update an existing SSH key's name, public key, or auto-assignment setting by ID to keep server access credentials current.

Instructions

Edit SSH key PATCH /services/ssh-keys/{sshKeyId}

Tool call template

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

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "sshKeyId": "<sshKeyId>",
      "body": "<body>"
    },
    "name": "services_ssh_keys_edit"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyYes
sshKeyIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, openWorldHint=true and idempotentHint=false, so the safety profile is known; the description adds nothing beyond that, not even that a PATCH on a key may overwrite publicKey/name or that it affects key assignment behavior. Repeating "PATCH" restates what destructiveHint already implies rather than adding context.

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 very short lines, front-loaded with the verb, with no filler; but the endpoint line functions as padding for an agent that needs semantics rather than a route. Brevity here reflects under-specification rather than discipline.

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 destructive mutation on a nested payload with no output schema and 0% parameter description coverage, the definition is too thin: it omits what fields are updatable, partial-vs-full update semantics, and any confirmation or permission notes. Annotations carry the risk signal, which keeps this from being lower, but the description does not complete the picture.

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

Parameters2/5

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

Schema description coverage is 0% and the input includes a nested body object with name, publicKey and autoAssign, none of which the description explains. The only parameter meaning conveyed is that sshKeyId appears in the path, which is the bare minimum; agents get no guidance on which body fields are optional or how autoAssign changes behavior.

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 and resource ("Edit SSH key") plus the HTTP endpoint PATCH /services/ssh-keys/{sshKeyId}, so the operation is identifiable, but it never distinguishes this from close siblings such as services_ssh_keys_create or services_ssh_keys_get. An agent must infer from the name alone that this modifies an existing key rather than creating one.

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 named alternative; the sibling list shows create/get/get_list variants that would be the obvious confusions, but the description routes the agent to none of them. Only the raw endpoint line hints at context.

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

Deploy Server

Other Tools