Skip to main content
Glama

Renew VPN period

renew_vpn_period

Renew a VPN subscription term by paying an approved quote from the account balance with the same idempotency key; confirm the exact EUR charge and poll the returned operation until completion.

Instructions

Pay the VPN's approved quoted renewal term from account balance using the exact quote and original key. Requires explicit networking:read for reads or networking:manage for changes; full/read defaults do not grant networking. The backend enforces ownership, feature availability and service 2FA locks. Read current capabilities and owned resource state first; obtain approval for the exact change. An accepted operation is pending, not proof of connectivity. Poll the returned operation/resource on its in_progress flag, waiting next_check_seconds between reads: while in_progress is true its reason_code is what is awaited (reason_kind waiting, e.g. a queued or pending reason, or a control plane that has not answered yet), never an error; only in_progress false with reason_kind failure is a failure. Preserve reason_code. On transport uncertainty inspect state and reuse only the original key and unchanged request; never automatically retry. Requires full API access, networking:manage, enabled paid operations, networking:order and spend caps. Choose a supported live catalog tier and its documented request kind; preserve the exact quote; disclose its gross_amount in EUR before user approval. The same Idempotency-Key is required for quote and confirmation. API-key checkout supports the advertised account-balance payment method only. Payment acceptance is not resource readiness.

Input Schema

NameRequiredDescriptionDefault
quote_idYesExact lowercase UUID returned by an owned networking resource
gateway_idYesExact lowercase UUID returned by an owned networking resource
quoteTokenYesExact quote_token returned by the quote; sent only as X-Quote-Token
idempotencyKeyYesStable Idempotency-Key for this exact intent; reuse unchanged on recovery, never generate a new key for an uncertain result
acknowledge_chargeYesSet only after the user approves the exact quoted EUR total and intended purchase/renewal

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.3.16

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already disclose a non-read-only, non-destructive, non-idempotent, open-world mutation, and the description goes well beyond that: it specifies the required scopes (networking:manage, networking:order, spend caps), backend ownership/2FA enforcement, the pending-vs-failed polling contract with next_check_seconds and reason_kind, and the no-auto-retry rule on transport uncertainty. However, that safety profile is essentially fully covered by the annotations and payment flow conventions, and the description adds little about reversibility or what state the resource enters after payment, so it lands at adequate-but-not-rich relative to the annotation floor.

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 action is front-loaded in the first sentence, and most later content (polling, retry safety, scope requirements) is genuinely necessary. But the description runs long and dense, with overlapping reassurances ('an accepted operation is pending, not proof of connectivity' vs 'payment acceptance is not resource readiness') and repeated idempotency-key warnings that could be consolidated.

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 payment-carrying mutation with no output schema, the description covers permissions, preconditions, approval gate, idempotency key reuse, operation polling with next_check_seconds and reason_code semantics, and recovery on transport failure. An agent has everything needed to call it correctly and interpret the accepted-but-pending result.

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 already documented, including acknowledge_charge's approval condition and quoteToken's X-Quote-Token usage. The description corroborates those semantics ('exact quote', 'original key', user approval of EUR total) but adds no new per-parameter syntax, format, or edge-case detail, 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 opening sentence names a specific verb (pay/renew), the exact resource (the VPN's approved quoted renewal term), and the funding source (account balance), plus the required inputs (exact quote and original key). It is clearly distinguishable from other 'renew_*' tools by the VPN/quote framing, but it never names the quote-producing sibling (quote_vpn_period_renewal) even though the workflow depends on it.

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

Usage Guidelines4/5

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

It gives real pre-call sequencing: read capabilities and owned resource state first, obtain approval for the exact change, choose a supported live catalog tier, and disclose gross_amount in EUR before approval. That is clear context, but no explicit when-not-to-use case or named alternative tool, so it stops short of a 5.

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