Skip to main content
Glama

lock_ad_items

Destructive

AD items: lock — keep the chosen items unchanged by automatic sync (undo: unlock_ad_items). Use this when the user wants listings frozen. Needs confirm:true after the user agrees. Target item_ids or all_items:true.

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": {
      "ad_id": "<ad_id>"
    },
    "name": "lock_ad_items"
  }
}

Input Schema

NameRequiredDescriptionDefault
ad_idYesintegrationId of the ad (from list_ads).
confirmNotrue only after the user approved; without it the call returns confirm_required and nothing runs.
item_idsNoitemId values (from list_ad_items) to act on. Use this OR all_items.
all_itemsNoApply to every item of the ad. Use this OR item_ids.
project_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already flag this as destructive and non-idempotent; the description adds real behavioral context they cannot convey: the confirm:true approval gate, the fact that a missing confirm returns 'confirm_required' and nothing runs, and the undo path. It never says whether re-locking already-locked items is a no-op, which is the one remaining gap.

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 verb and effect, then the trigger, the confirm requirement, and the targeting rule — no filler sentences. The telegraphic 'AD items: lock —' opener is slightly clipped but not wasteful.

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

Completeness4/5

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

For a destructive, confirm-gated mutation with no output schema, the description covers effect, trigger, approval workflow, targeting, and reversal. Minor omissions (project_id's role, behavior on already-locked items) are not enough to make calling it risky.

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 coverage is 80%, so the schema already carries most parameter meaning (ad_id source, item_ids source, confirm semantics). The description adds the useful targeting rule 'item_ids or all_items:true' as a mutually exclusive choice, but says nothing about project_id, leaving one parameter undocumented in both places.

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 and resource ('AD items: lock') plus the effect ('keep the chosen items unchanged by automatic sync'), which distinguishes it semantically from pause_ad_items and from its own inverse. It even names the reverse operation (unlock_ad_items), so an agent can place it in the family without opening the schema.

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?

'Use this when the user wants listings frozen' gives a clear situational trigger, and the undo pointer supplies the alternative tool for the opposite intent. It stops short of explicit when-not conditions (e.g. versus pause or clean_ad_items), which keeps it from a 5.

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