Skip to main content
Glama

delete_survey

DestructiveIdempotent

Permanently delete a survey. IRREVERSIBLE — deletes the survey, its questions, ALL collected responses, stats and uploaded files. NEVER call without explicit user confirmation for this specific survey, spelling out what will be lost. If the survey has responses the API additionally requires confirm=true (409 otherwise) — only pass confirm=true after the user explicitly accepted losing the responses. Participants created from the survey and the sweepstakes itself are preserved. To disable a survey WITHOUT losing data, use update_survey with status false instead — always offer that alternative first. Requires the Surveys module enabled — on 403 "module is not enabled", do NOT retry; tell the user to contact Sweeppea support.

delete_survey

When to use

Permanently delete a survey. IRREVERSIBLE — deletes the survey, its questions, ALL collected responses, stats and uploaded files. NEVER call without explicit user confirmation for this specific survey, spelling out what will be lost. If the survey has responses the API additionally requires confirm=true (409 otherwise) — only pass confirm=true after the user explicitly accepted losing the responses. Participants created from the survey and the sweepstakes itself are preserved. To disable a survey WITHOUT losing data, use update_survey with status false instead — always offer that alternative first. Requires the Surveys module enabled — on 403 "module is not enabled", do NOT retry; tell the user to contact Sweeppea support.

Pre-calls required

  1. get_survey — check ResponsesCount and tell the user exactly what will be lost

Parameters to validate before calling

  • survey_token (string, required) — The survey token (UUID v4) of the survey to delete

  • confirm (boolean, optional) — Required true ONLY when the survey already has responses. Pass it ONLY after the user explicitly confirmed losing all responses

Notes

  • DESTRUCTIVE — IRREVERSIBLE. Always confirm with the user before calling. Explain what will be lost.

  • Deletes questions, ALL responses, stats and uploaded files. Participants created from the survey are preserved

  • confirm: true is required when responses exist — pass it ONLY after the user explicitly accepted losing them

  • Offer update_survey with status false first (disable without data loss)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
confirmNoRequired true ONLY when the survey already has responses. Pass it ONLY after the user explicitly confirmed losing all responses
survey_tokenYesThe survey token (UUID v4) of the survey to delete

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the destructiveHint annotation, the description discloses exactly what gets destroyed (survey, questions, ALL responses, stats, uploaded files), what gets preserved (participants, sweepstakes), the irreversible nature, and the API behavior requiring confirm=true when responses exist. It also notes the 403 'module is not enabled' case, providing complete behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections (When to use, Pre-calls, Parameters, Notes), but it repeats the same content verbatim in the initial paragraph and again in the markdown section, which is redundant. The duplication could be trimmed without losing information, though the content itself is concise and purposeful.

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 operation with no output schema, the description covers all necessary context: prerequisites, error codes, confirmation workflow, alternative non-destructive path, and module requirements. It is fully complete for an agent to execute safely and correctly.

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

Parameters5/5

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

Even though the input schema already provides descriptions for both parameters, the description adds crucial semantic context: survey_token format (UUID v4), the conditional requirement for confirm=true (only when responses exist and after explicit user consent), and validation guidance in a dedicated section. This goes well beyond the schema.

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?

The description explicitly states 'Permanently delete a survey' and enumerates what will be deleted (questions, responses, stats, uploaded files). It clearly distinguishes this from sibling tools like update_survey by contrasting delete vs. disable, and from other delete_* tools because it precisely targets surveys.

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

Usage Guidelines5/5

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

The description provides explicit when-to-use and when-not-to-use guidance: require user confirmation, offer update_survey as a non-destructive alternative, and require a get_survey pre-call to assess responses. It also specifies error handling (confirm=true for 409, not retrying on 403 module not enabled). This is exemplary.

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.

TDQS

A3.6/5.0
Disambiguation4/5

Most tools follow a clear resource+action pattern (fetch_* for lists, get_* for single items, create/update/delete for writes), making them distinguishable. A few near-overlaps exist (fetch_billing_transactions vs fetch_wallet_transactions, draw_winners vs schedule_drawing) but the descriptions clarify the boundaries.

Naming Consistency4/5

Tool names consistently use snake_case verb_noun, with fetch_ for list operations and get_ for single-item retrieval. Some verb variation (add_participant, count_participants, draw_winners, schedule_drawing) deviates from the dominant create/fetch/update/delete pattern but remains predictable and readable.

Tool Count1/5

With 83 tools, this is far beyond a well-scoped server (typically 3-15, with 25+ considered too many). Even though the platform has broad functionality, the sheer number of tools creates significant agent confusion and selection overhead.

Completeness4/5

The sweepstakes domain is thoroughly covered: lifecycle management, participants, groups, rules, drawings, winners, calendar, notes, todos, tickets, surveys, invoices, billing, files, and entry settings. A few minor gaps exist (e.g., no general participant field update, no archive action) but the surface is remarkably complete for its scope.

Resources