# WebAsk — Survey Branching and Logic

> Configures question display logic in a WebAsk survey — branching, skipping blocks, screening out unsuitable respondents and quotas. Use when someone wants different questions shown to different people, or reports that the survey routes respondents to the wrong place. Requires the hosted WebAsk MCP server (Streamable HTTP: https://mcp.webask.io/mcp/v1) and the user’s own WebAsk account/API key. Public skill files: MIT, original publisher WebAsk; hosted service plans and limits apply. English source; Russian counterpart: https://github.com/WebAskio/webask-mcp/tree/main/skills/webask-quiz-logic

- Skill: `dmitry-molchanov/webask-survey-branching-and-logic` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add dmitry-molchanov/webask-survey-branching-and-logic`
- Raw SKILL.md: https://api.skillmd.com/api/skills/dmitry-molchanov/webask-survey-branching-and-logic/raw
- Safety review: pending
- Works with: any agent that reads SKILL.md (Claude Code, Claude.ai, Cursor, Codex, Windsurf, 60+ more)
- Category: AI & ML
- Author: Dmitry Molchanov (https://skillmd.com/u/dmitry-molchanov)
- Updated: 2026-10-01
- Page: https://skillmd.com/skills/dmitry-molchanov/webask-survey-branching-and-logic

---


# Branching and routing

Logic is where surveys break silently: a condition references a question by
identifier, and a branch built blind leads the respondent into a dead end with no
way out.

Reply to the person in the language they write in.

## The order is strict

1. `get_quiz_structure` — read the current state and question identifiers.
2. Build the change against what actually exists.
3. `update_quiz_logic` — write.

The first step cannot be skipped. Identifiers cannot be guessed, and writing over
questions that do not exist produces a survey that will not open.

## What can be built

- **Branch on an answer.** "Rated below four — ask why."
- **Skip a block.** "Did not use the service — do not ask about its quality."
- **Screen out.** A respondent who does not fit belongs on a `screenout` screen,
  not driven to the end and cleaned up afterwards.
- **Quotas.** Once a group is full, stop admitting it.

## Rules people trip over

- **Every branch needs an exit** — to the next block or to the finish screen.
- **A condition on "Other"** matches the option, not the text typed into it.
- **The operator must fit the question type.** Greater/less than are for numbers
  and scales, not for text or choices.
- **Order matters**: the first matching condition wins.
- **A branch must not lead back** to an already answered question — the respondent
  ends up in a loop.

## After the edit

Walk the route by eye: from the first question along every branch to the finish. If
there are more than three or four branches, describe the map in words — who ends
up where.

## What not to do

- **Do not write logic without reading the structure.**
- **Do not change the question set in the same edit** — when something breaks it
  becomes unclear which change caused it.
- **Do not build branching where one question with options is enough.**
- **Do not suggest a plan upgrade or lead to payment.** If a limit is hit, state
  the fact and stop.


