Skip to main content
Glama

Deploy SSH key

deploy_ssh_key
Destructive

Deploy an SSH key to a VPSnet VPS to enable secure access, then wait 15-30 seconds for it to apply before connecting.

Instructions

Deploy an SSH key to VPS. Returns a noty UUID; follow it with wait_for_event. ASYNC — wait 15-30 seconds after deploying before attempting SSH. Use list_ssh_keys to get available key IDs. To add your own key first: read ~/.ssh/id_rsa.pub from local machine, then create_ssh_key, then deploy it here. Remote OAuth requires vm:exec; direct API-key use requires services:manage and a full-access key.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
orderNoYesTenant-owned service order number: 1-64 ASCII letters, digits or hyphens, e.g. VP12345 or VP12345-1
ssh_keyYesSSH key ID from list_ssh_keys

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.3.16

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already flag destructive/not-readOnly, but the description adds substantial context beyond them: async semantics, the returned noty UUID and its follow-up tool, the 15-30 second propagation delay, and two distinct auth paths (vm:exec for OAuth, services:manage + full-access key for API keys).

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

Conciseness4/5

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

Front-loaded with the action, then the async wait, then the prerequisite workflow and auth requirements. Dense but each clause carries actionable information; not padded, though it is busy enough to be slightly harder to scan in one pass.

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

Completeness5/5

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

For a destructive async operation with no output schema, the description covers the return value convention, the follow-up tool, timing, prerequisite key setup, and both authentication modes — everything an agent needs 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%: orderNo's format and ssh_key's provenance are already documented ('SSH key ID from list_ssh_keys'). The description's pointer to list_ssh_keys for IDs largely restates the schema, so baseline 3 applies with no meaningful added syntax or constraint detail.

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

Purpose5/5

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

Specific verb (deploy) + resource (SSH key) + target (VPS). It clearly distinguishes itself from siblings by naming list_ssh_keys and create_ssh_key as the tools for the adjacent steps, so an agent can tell deploy_ssh_key apart from the other key tools without opening schemas.

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

Usage Guidelines5/5

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

Explicit when-to-use routing: list_ssh_keys to obtain IDs, create_ssh_key to add a personal key, wait_for_event to follow up npm the async noty UUID. It also states the deployment-to-SSH timing (15-30s) and the auth preconditions, leaving nothing to inference.

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