Skip to main content
Glama

fetch_survey_responses

Read-onlyIdempotent

Fetch individual survey responses (paginated, newest first) with each answer. Use fetch_surveys first to get the survey_token. Requires the Surveys module enabled — on 403 "module is not enabled", do NOT retry; tell the user to contact Sweeppea support. PRIVACY: include_metadata adds PII (IP address, user agent, device) — keep it false unless the user explicitly needs it, and NEVER copy that metadata into notes, tickets or any other field. ParticipantToken is null when no contact info was collected. For aggregated results use fetch_survey_report; for unlimited export point the user to the Export CSV button in the app. DISPLAY RULE: never show ResponseToken/ParticipantToken UUIDs.

fetch_survey_responses

When to use

Fetch individual survey responses (paginated, newest first) with each answer. Use fetch_surveys first to get the survey_token. Requires the Surveys module enabled — on 403 "module is not enabled", do NOT retry; tell the user to contact Sweeppea support. PRIVACY: include_metadata adds PII (IP address, user agent, device) — keep it false unless the user explicitly needs it, and NEVER copy that metadata into notes, tickets or any other field. ParticipantToken is null when no contact info was collected. For aggregated results use fetch_survey_report; for unlimited export point the user to the Export CSV button in the app. DISPLAY RULE: never show ResponseToken/ParticipantToken UUIDs.

Parameters to validate before calling

  • survey_token (string, required) — The survey token (UUID v4). Get it via fetch_surveys

  • completed (boolean, optional) — true = completed only, false = abandoned only, omit = both (optional)

  • from_date (string, optional) — Inclusive start date YYYY-MM-DD (optional)

  • to_date (string, optional) — Inclusive end date YYYY-MM-DD, covers the whole day (optional)

  • include_metadata (boolean, optional) — Include device/browser/IP metadata — PII, default false. Only set true if the user explicitly needs it

  • page (number, optional) — range: 1–+∞ — Page number (optional, default 1)

  • limit (number, optional) — range: 1–100 — Results per page (optional, default 25, max 100)

Notes

  • include_metadata adds PII (IP address, user agent, device) — keep it false unless the user explicitly needs it

  • NEVER copy response metadata into notes, tickets or any other field

  • For unlimited export point the user to the Export CSV button in the app

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (optional, default 1)
limitNoResults per page (optional, default 25, max 100)
to_dateNoInclusive end date YYYY-MM-DD, covers the whole day (optional)
completedNotrue = completed only, false = abandoned only, omit = both (optional)
from_dateNoInclusive start date YYYY-MM-DD (optional)
survey_tokenYesThe survey token (UUID v4). Get it via fetch_surveys
include_metadataNoInclude device/browser/IP metadata — PII, default false. Only set true if the user explicitly needs it

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the readOnly/idempotent hints, the description discloses important behavioral details: pagination and ordering, the 403 non-retry rule, PII implications of include_metadata, null ParticipantToken semantics, and a display rule forbidding UUID exposure. These add substantial context not visible in annotations or schema.

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

Conciseness2/5

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

The description is verbose and repetitive. The initial paragraph and the 'When to use' section contain nearly identical text, and the PII warning appears multiple times. Although it is structurally sectioned, the redundancy violates the 'every sentence earns its place' principle.

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?

Despite lacking an output schema, the description covers pagination, filtering parameters, prerequisites, error handling, privacy constraints, alternative tools, and output-specific edge cases (null ParticipantToken, UUID display rules). This is comprehensive for a tool with seven parameters and significant privacy implications.

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 100%, so the schema already explains all seven parameters. The description's 'Parameters to validate' section largely restates the schema without adding new meaning. While it reinforces the PII warning and the prerequisite for survey_token, it does not significantly augment what is already present in the input 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 opens with a specific verb+resource ('Fetch individual survey responses') and immediately differentiates from siblings by noting paginated, newest-first order. It also explicitly contrasts with fetch_survey_report (aggregated) and references fetch_surveys as the prerequisite, distinguishing it clearly from related tools.

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 usage context: 'Use fetch_surveys first to get the survey_token.' It also names alternatives with clear direction: 'For aggregated results use fetch_survey_report; for unlimited export point the user to the Export CSV button.' It even includes error-handling guidance for 403 responses, making it highly actionable.

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