Skip to main content
Glama

fetch_survey_report

Read-onlyIdempotent

Fetch the aggregated report of a survey: visit/start/complete totals, completion rate and times, device and browser breakdown, daily timeline, and per-question answer distributions. 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. Distributions are capped at 25 buckets — the long tail counts toward TotalAnswers but does not travel (Truncated flag). A survey with no traffic returns the full structure with zeros — report that honestly, never invent activity. CompletionRate = Completes/Visits as an integer percentage; CompletionTimes are in seconds. For raw individual responses use fetch_survey_responses.

fetch_survey_report

When to use

Fetch the aggregated report of a survey: visit/start/complete totals, completion rate and times, device and browser breakdown, daily timeline, and per-question answer distributions. 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. Distributions are capped at 25 buckets — the long tail counts toward TotalAnswers but does not travel (Truncated flag). A survey with no traffic returns the full structure with zeros — report that honestly, never invent activity. CompletionRate = Completes/Visits as an integer percentage; CompletionTimes are in seconds. For raw individual responses use fetch_survey_responses.

Parameters to validate before calling

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

  • timeline_days (number, optional) — range: 1–365 — Days back for the daily timeline (optional, default 30, max 365)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
survey_tokenYesThe survey token (UUID v4). Get it via fetch_surveys
timeline_daysNoDays back for the daily timeline (optional, default 30, max 365)

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the readOnly/openWorld/idempotent annotations, the description discloses critical behavioral traits: 25-bucket cap with a Truncated flag, zero-filled structure for no traffic, the CompletionRate formula, CompletionTimes in seconds, and the 403 non-retry behavior. This is substantial context that helps the agent predict outcomes without guessing.

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 redundant: the first paragraph and the 'When to use' section are nearly identical, and the parameter validation section duplicates the schema. Each sentence does not add new information; the repetition wastes space and could confuse an agent by duplicating the same instructions twice.

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?

With no output schema, the description compensates thoroughly by explaining the response structure (aggregated metrics, truncation, zero-filled for no traffic), edge cases (403 handling), and formulas. It also covers prerequisites and alternatives, making the tool complete for an agent to invoke and interpret results properly.

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?

The input schema already covers both parameters with 100% description coverage (including UUID v4, range 1–365, default 30). The description's 'Parameters to validate' section merely repeats schema content, adding no new semantic meaning beyond what the schema provides. Baseline 3 is appropriate.

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 clearly states the tool's verb and resource: 'Fetch the aggregated report of a survey' and enumerates the specific metrics (visit/start/complete totals, device breakdown, etc.). It also distinguishes itself from the sibling tool fetch_survey_responses, which handles raw responses, and references fetch_surveys for obtaining the token.

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 gives explicit when-to-use guidance: calling fetch_surveys first for the token, requiring the Surveys module, and not retrying on 403 with instructions to contact support. It also provides an alternative tool ('For raw individual responses use fetch_survey_responses') and explains the empty-report handling, making usage crystal clear.

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