Skip to main content
Glama

Fudge for Shopify

Record preview choice

set_preview_consent
Destructive

Record the merchant’s answer from the preview consent card, with the answer code only that card receives.

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": {
      "draft": "<draft>",
      "scope": "<scope>",
      "state": "<state>",
      "answer": "<answer>"
    },
    "name": "set_preview_consent"
  }
}

Input Schema

NameRequiredDescriptionDefault
draftYesThe draft’s fudge://project/… ref.
scopeYesproject: this draft only; site: every draft.
stateYes
storeNoThe connected store to use. Omit when only one is connected.
answerYesThe answer code from Fudge’s consent card.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=false, so the safety profile is known. The description adds one genuinely new behavioral fact — the answer code is card-specific, implying validation and rejection of arbitrary codes — but it never explains what the destructive aspect actually destroys (e.g., whether recording "declined" revokes site-wide preview) or what a repeat call does given non-idempotency.

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?

A single front-loaded sentence with no filler; the key constraint (card-issued answer code) is placed at the end where it reads naturally. It is tight, though it trades away detail for brevity.

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, non-idempotent write with 5 parameters, 2 enums and no output schema, the description covers what is being recorded but not the consequences, error modes, or the store parameter's role. It is adequate to attempt the call but leaves the risk profile under-explained.

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%, and the schema already documents draft, scope (including the project-vs-site distinction) and answer. The description's only addition is framing answer as an opaque code issued by the card, which clarifies provenance but not format or failure behavior; with the schema doing most of the work, baseline 3 is appropriate.

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 names a specific verb ("record") and a specific resource ("the merchant's answer from the preview consent card"), which is clearly distinguishable from the sibling show_preview_consent by the write-oriented verb. It stops short of explicitly contrasting itself with that sibling, so it lands just below the top mark.

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

Usage Guidelines3/5

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

Usage is implied — you record an answer that came from the consent card, which suggests show_preview_consent precedes it — but the description never states that prerequisite or names alternatives. There are no when-not conditions, so an agent must infer the ordering from the wording alone.

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.