Skip to main content
Glama

dForms

Count responses by status and choice

get_response_facets
Read-onlyIdempotent

Over every response of the form, unfiltered: how many there are, how many completed and partial, and for each choice question how many picked each option. The values here are what the answers filter of export_responses_csv, get_form_summary and search_answers takes.

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": {
      "form_id": "<form_id>"
    },
    "name": "get_response_facets"
  }
}

Input Schema

NameRequiredDescriptionDefault
form_idYesThe form id, from list_forms or get_form.
workspace_idNoThe workspace this call acts in: an id from list_my_workspaces. Required for a person signed in with several workspaces and for staff of this deployment; optional with an API key or with only one workspace.

Output Schema

NameRequiredDescriptionDefault
totalYes
choicesYesPer choice question key: every option in the form order, then any stored value no option carries any more.
form_idYes
partialYes
completedYes
workspaceYesThe workspace this call acted in, to compare with the one the user means.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior3/5

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

The annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds one genuinely useful behavioral fact: aggregation is over every response with no filtering, and the output values are reused as filter inputs elsewhere. Beyond that it says nothing about edge cases (for example, no responses or choice questions with no answers), though the presence of an output schema lowers that burden.

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

Conciseness5/5

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

Two sentences and no filler. The scope and the counts come first, and the cross-tool consumption note follows, so the reader hits the most important information immediately.

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 only two fully documented parameters, an output schema, and annotations covering the safety profile, this description supplies everything an agent needs in order to know what the tool returns and how to use those values in sibling calls.

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%, and both form_id and workspace_id are documented in the schema, including workspace scoping and requiredness. The description adds no meaning beyond that, which is acceptable at full coverage but is still the baseline rather than added value.

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 uses a specific verb (count) on a specific resource (response facets) and enumerates what is counted: totals, completed vs partial, and per-option counts for each choice question. The 'unfiltered' scope clause further distinguishes it from filtered siblings such as search_answers and list_responses.

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

Usage Guidelines4/5

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

It states the operation is unfiltered and explains the downstream payoff, namely that these values are exactly what the answers filter of export_responses_csv, get_form_summary, and search_answers expects, which effectively tells the agent to call this first to discover valid filter values. It is clear context, but it never explicitly says when not to use this tool or contrasts it with get_form_summary's own aggregation role.

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.

Resources