Skip to main content
Glama

Execute Approved Action

swiftly_execute_approved

Execute a previously approved destructive action. This is called by the approval panel when the user clicks Approve. Pass the approval_id that was returned.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
approval_idYesThe approval ID from swiftly_request_approval

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior1/5

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

The description declares the executed action is 'destructive', while the annotations set destructiveHint=false, giving the agent a materially wrong safety signal before an irreversible operation. The only genuine addition, that this is invoked by the approval panel, is outweighed by the contradiction.

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?

Three short sentences with no filler; the action and its trigger are front-loaded before the parameter instruction. Nothing could be cut 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 destructive, no-output-schema tool, the description covers the trigger and parameter but omits failure modes (expired/consumed/unknown approval_id), what actually happens on success, and any permission expectations. The safety mismatch with annotations compounds the 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 the single parameter is already documented as 'The approval ID from swiftly_request_approval'. The description restates that provenance ('the approval_id that was returned') without adding format, expiry, or reuse constraints, so the schema carries the load.

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?

States a specific verb (Execute) on a specific resource (a previously approved destructive action) and names the trigger context (called by the approval panel on Approve). This clearly separates it from siblings like swiftly_request_approval, swiftly_check_approval, and swiftly_decline_action.

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?

Explains when it fires (approval panel on user clicking Approve) and what to pass, which is useful invocation context. It stops short of explicit when-not-to-use guidance, e.g. that an agent should not call it outside the approved flow or that the ID must be unconsumed.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources