Skip to main content
Glama
swiftyspiffy

Flighty MCP

by swiftyspiffy

apply_changes

Destructive

Apply validated sync changes to Flighty data; destructive or bulk actions require explicit confirmation.

Instructions

Advanced sync editor supporting all 43 supported actions, with strict protobuf validation.

Each object has exactly one action, plus an optional RFC3339 timestamp (generated if omitted). Inspect get_schema('SyncChangeRequestProto') and the action's schema first. Requires writes enabled. Delete/remove/revoke/bulk actions additionally require confirm_destructive=true. No automatic retries or implicit empty changes. Omitted fields may clear values; provide a complete action when semantics are unclear.

Input Schema

NameRequiredDescriptionDefault
changesYes
confirm_destructiveNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and non-idempotent behavior, and the description adds substantive context beyond them: no automatic retries, no implicit empty changes, and the warning that omitted fields may clear values. The writes-enabled and confirm_destructive gates are exactly the kind of operational detail an agent needs before a destructive call.

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?

The description is front-loaded with the core purpose and then stacks safety-critical facts; every sentence carries information. It is slightly dense and the phrase 'Advanced sync editor supporting all 43 supported actions' is more marketing than specification, which is the only real slack.

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 batch-mutation tool with an output schema (so return values need no explanation), the description covers the essentials: preconditions, the destructive confirmation gate, idempotency/retry behavior, and the risk of partial field clearing. Nothing an agent needs to call it safely appears to be missing.

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

Parameters4/5

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

Schema coverage is 0% and the schema itself is an opaque array of free-form objects, so the description has to carry the burden — and it does, explaining that each item holds exactly one action plus an optional RFC3339 timestamp that is generated if omitted, and tying confirm_destructive to destructive action types. It sensibly defers enumeration of the 43 actions to get_schema rather than inlining them.

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 description establishes a specific verb (apply a batch of sync change objects) and resource (sync changes with protobuf validation), and it clarifies that each array element is a single-action object. It does not differentiate itself from plausible siblings such as sync_account, import_calendar, or request_bulk_import, so an agent must still infer which tool owns which write path.

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 prerequisites ('Requires writes enabled', 'Inspect get_schema('SyncChangeRequestProto') and the action's schema first') and a conditional gate ('Delete/remove/revoke/bulk actions additionally require confirm_destructive=true'). It never explicitly says when to choose this over the sibling write tools, so it lands just short of top marks.

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