Skip to main content
Glama

Finish draw

finish_giveaway_draw
Destructive

Finish a giveaway draw and select winners from submitted participants, closing the promotion with final results.

Instructions

Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.

Finish draw and select winners

Input Schema

NameRequiredDescriptionDefault
idYesNative id
accountNoExact private shop profile label; not a provider identity or authorization proof.
confirmNoSet true only when the user asked for exactly this action.
payloadNoComplete current native JSON body; cannot mix with native body flags or payload_file.
participantsNo
payload_fileNoAbsolute regular non-symlink native JSON body file, at most1MiB. Cannot mix with payload or body flags.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changedv3.0.0
    • addedInput schema / $defs
      Added value: +{
      +  "participants": {
      +    "items": {
      +      "oneOf": [
      +        {
      +          "allOf": [
      +            {
      +              "properties": {
      +                "service": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "service"
      +              ],
      +              "title": "Participant"
      +            },
      +            {
      +              "properties": {
      +                "userId": {
      +                  "type": "string"
      +                },
      +                "userName": {
      +                  "type": "string"
      +                }
      +              },
      +              "type": "object"
      +            }
      +          ],
      +          "required": [
      +            "userId",
      +            "userName"
      +          ],
      +          "title": "Twitch"
      +        }
      +      ]
      +    },
      +    "type": "array"
      +  }
      +}
    • changedInput schema / properties / confirm / description
      Previous value: -"Explicit approval for this exact provider effect or local private-file operation."New value: +"Set true only when the user asked for exactly this action."
    • addedInput schema / properties / participants / $ref
      Added value: +"#/$defs/participants"
    • removedInput schema / properties / participants / items
      Removed value: -{
      -  "oneOf": [
      -    {
      -      "allOf": [
      -        {
      -          "properties": {
      -            "service": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "service"
      -          ],
      -          "title": "Participant"
      -        },
      -        {
      -          "properties": {
      -            "userId": {
      -              "type": "string"
      -            },
      -            "userName": {
      -              "type": "string"
      -            }
      -          },
      -          "type": "object"
      -        }
      -      ],
      -      "required": [
      -        "userId",
      -        "userName"
      -      ],
      -      "title": "Twitch"
      -    }
      -  ]
      -}
    • removedInput schema / properties / participants / type
      Removed value: -"array"
    • addedInput schema / properties / payload / properties / participants / $ref
      Added value: +"#/$defs/participants"
    • removedInput schema / properties / payload / properties / participants / items
      Removed value: -{
      -  "oneOf": [
      -    {
      -      "allOf": [
      -        {
      -          "properties": {
      -            "service": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "service"
      -          ],
      -          "title": "Participant"
      -        },
      -        {
      -          "properties": {
      -            "userId": {
      -              "type": "string"
      -            },
      -            "userName": {
      -              "type": "string"
      -            }
      -          },
      -          "type": "object"
      -        }
      -      ],
      -      "required": [
      -        "userId",
      -        "userName"
      -      ],
      -      "title": "Twitch"
      -    }
      -  ]
      -}
    • removedInput schema / properties / payload / properties / participants / type
      Removed value: -"array"
  2. First observedv2.0.0

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare this as destructive, non-idempotent, and open-world. The description adds a concrete rate limit, which is useful behavioral context, but it does not expand on what finishing the draw destroys, whether it is irreversible, or what happens to existing draw state.

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 minimal and has no filler. The rate limit is useful, but placing it before the core purpose makes the structure slightly less front-loaded than ideal.

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?

The action and a rate limit are given, while annotations cover the destructive/non-idempotent profile and the schema documents most parameters. However, the description does not explain the effect on existing draw state or how it relates to sibling giveaway tools.

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 83%, so the input schema carries most parameter semantics. The description adds no parameter details, but the high coverage justifies the baseline score of 3.

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 states a clear action: finishing a draw and selecting winners. It implies a specific draw resource and distinguishes the action from broader giveaway operations, though it never explicitly says 'giveaway' or names a sibling tool for contrast.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives such as finish_giveaway or get_giveaway_draw, nor any prerequisite or postcondition context. The only additional context is a rate limit, which is not usage guidance.

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