Build a survey from a brief

Describe what you need in plain words, and the assistant builds the survey in your SurveyNinja account as a draft

Free agent skill for Claude Code, Codex, Cursor and Gemini CLI. It works through the SurveyNinja MCP server, with your permissions.

Category
Build and share
Tags
wording, logic and branching, design
Works with
Claude Code, Codex, Cursor, Gemini CLI
MCP tools
13, 8 of them change data
Version
1.0.1, October 20, 2026
Made by
SurveyNinja
Price
Free
See also
Survey makerSurvey templates
Skill file
SKILL.md

What it does

  • A working survey, not a list. It is built in your account with question types, logic and a theme. There is nothing to copy over by hand.
  • The report works from day one. Question types match the answers you need, so charts and summaries build themselves.
  • Nothing goes out without you. Only you see the draft. Publishing is a separate step that waits for your word.

Example

You type

Build a survey for our repair shop customers: rate the work and collect contacts for a follow-up visit

What the assistant brings back

7
Questionsplus welcome and thank-you
2
Requiredcontact details only
2
Branchesby rating and service
~2 min
Lengthto complete
  1. How happy are you with the work? Star rating, 5 stars
  2. What could we have done better? Text answer, shown when the rating is below 4
  3. Was it finished on time? Yes or no
  4. Rate the front desk, the work and the price Matrix, 3 rows
  5. What is the best email to reach you? Email, format checked
Ready to launch, not yet published

The assistant hands over a draft you can review in the builder. Publishing is a separate step and happens only on your word.

The survey above is an example of how the phrase "rate the work and collect contacts for a follow-up visit" can be read. Your survey is built from your brief.

How it works

  1. Asks only what is missingWho is being asked, what the results will decide and where the link will live. Three questions at most; everything else is faster to fix on a draft.
  2. Picks the right question typesA rating becomes a scale, a recommendation question becomes NPS, phone and email become fields with format checks. Whether the results can be summarized later depends on this.
  3. Wires up the branchingUnhappy respondents get asked why, and people who never used the service skip that block. Logic is built from the survey structure, so no route ends in a dead end.
  4. Publishes only when you say soUntil then the survey does not open by its link, so there is time to read the draft and change it.

Try also

  • I need a short satisfaction survey after delivery: three questions and an email
  • Create a consultation request form with name, phone, preferred time and the customer's question

What it will not do

  • Do not publish unasked
  • Do not invent filler questions
  • Do not make everything required
  • Do not suggest a plan upgrade or lead to payment
  • Do not delete or rewrite existing surveys

The skill works with your permissions. Tools that change data are marked, so you check what the assistant is about to do before you confirm. To cut access, remove the connector in the assistant or delete the API key.

In short

How many questions will the assistant ask me?

Three at most, and only if you did not say it already: who is being asked, what the results will decide and where the link will live. The rest is quicker to fix on the draft.

How does it choose question types?

By what you need to learn. A rating gets a scale or stars, likelihood to recommend gets NPS, phone and email get fields with format checks, a date gets a date field. The type decides whether the answers can be summarized.

What if there is a ready-made template for my topic?

The assistant offers to start from it, because that is faster and usually better than building from scratch. You decide.

Which questions will be required?

Only the contact details the survey exists for. Every extra required question costs responses.

Will respondents see the survey right away?

No. Until it is published it does not open by its link. The assistant publishes only when you say so, then sends the link and a short summary of what was built.

What do I need for this skill to work?

A SurveyNinja account on any plan, including Free, and an AI assistant that supports MCP and loads skills from a folder, such as Claude Code, Codex, Cursor or Gemini CLI. The skill is a plain text file; the assistant works through your API key or the access you allow when connecting.

The full skill

The SKILL.md file the assistant reads, exactly as it is in the archive.

Show the full text

Building a survey from a brief

Someone describes the job in words: "I need a survey for our repair shop customers, to rate the work and collect contacts for a follow-up visit". Turn that into a working survey in their account, not a list of questions in chat.

Reply to the person in the language they write in. Write the survey texts in the language of their audience, not the language of this instruction.

1. Ask three things if they were not given

Who is being asked, what decision the results serve, where the link will live. No more than three questions: everything else is faster to show as a draft and fix from feedback.

Do not ask about question types, styling or order. Choosing them is the assistant's job.

2. Check for something ready-made

search_quiz_templates by topic. The catalog has English templates but no Spanish or Portuguese ones: for those audiences search with lang set to en and translate. If a suitable template exists, offer to start from it with create_quiz_from_template and edit from there: it is faster and usually better than building from scratch. The choice stays with the person.

3. Create the survey and build the questions

create_quiz, then update_quiz_widgets.

A survey is created inside a folder, so start with get_folder_list and pick the one to use. If there are several and the person did not say which, ask instead of choosing for them.

Choosing types is the core of the work and where mistakes happen:

What you need Type Why not otherwise
Quality rating rating or scale not input with a number: free text cannot be summarized
Likelihood to recommend nps its own 0–10 scale and its own analytics
One choice from a short list choice not input: free text cannot be grouped in a report
Several choices choice with multiple selection
One choice from a long list dropdown a long list of buttons is hard to scan
Name fio its own fields; switch the middle-name field off for most audiences
Phone, email phone, email format checks; otherwise half the contacts are unusable
Date and time datetime not text: otherwise it cannot be filtered or sorted
Several ratings on one set of criteria matrix instead of ten separate questions
File or photo file
Numeric answer number
Yes or no yesno
Put in order ranking

Start the survey with a welcome screen. The last widget is always submit; add a finish thank-you screen before it so the respondent sees what happens next instead of a bare confirmation.

Make required only the contacts the survey exists for. Every extra required question costs responses.

Set the phone question's default country to the audience's country, not a guess.

The full list of types and their fields is in references/widget-types.md.

4. Texts and styling

Headings and the thank-you text are fields of the welcome and finish widgets: write them with update_quiz_widgets. Button labels and other interface strings go through update_quiz_texts, by their code from get_quiz_texts. Write in the plain language of the audience.

get_theme_list and apply_quiz_theme: take an existing theme. Create a new one only if brand colors are explicitly requested.

5. Branching

update_quiz_logic, if the brief implies branches: "unhappy customers get a why question", "did not use the service, so skip the quality block".

The order is strict: get_quiz_structure first, then edit, then write. Conditions reference questions by identifier, and logic built blind leads respondents into a dead end.

6. Show the draft, then publish

publish_quiz only after the person agrees. Until it is published the survey does not open by its link, and that is the right state for review.

After publishing, hand over the link and briefly list what came out: how many questions, which are required, whether there is branching.

What not to do

  • Do not publish unasked. A published survey can already be taken, and edits after the first responses break comparability.
  • Do not invent filler questions. Long surveys are abandoned.
  • Do not make everything required.
  • Do not suggest a plan upgrade or lead to payment. If a limit is reached or a question type is not on the plan, state the fact and stop.
  • Do not delete or rewrite existing surveys when asked to make a new one.

If the brief is large

For long briefs there is generate_ai_quiz: the whole build runs in the background. It returns the id of a survey that stays empty until the build is done, not a finished survey. Call generate_ai_quiz again with that quiz_id to see whether it is pending or ready, show the result, then edit with the usual tools.

The SurveyNinja ninja on a rocket

Connect SurveyNinja to your assistant

The MCP server works on every plan, Free included. Sign up, allow access and ask your assistant to build the first survey.