MCP App Store
by KeenEthics

Overview

Versive is the most flexible AI research platform: AI interviews, surveys, usability tests, and synthetic users in one place. Run surveys with more than 20 question types, AI-moderated interviews over text, voice, or video with adaptive follow-ups, and multilingual studies in dozens of languages. This connector makes Claude part of your research team, with direct access to your Versive workspace: Design and build studies. Workshop the approach in conversation, then let Claude do the building: create a study, add questions from Versive's full catalog (multiple choice, ratings, NPS, ranking, AI-moderated interview questions, and more), organize them into groups with randomization, and set up screening and skip logic. Edit and iterate. Reword or reorder questions, adjust logic rules, update the interviewer's welcome and closing messages, and change settings like response quotas on any study you have access to. Analyze and report. Ask how a study is performing and get completion rates, drop-off by question, and answer aggregates. Pull real quotes from transcripts, surface themes, and generate findings and recommendations grounded in what participants actually said. Built-in prompts create structured research summaries and executive summaries, and because Claude connects to your other tools too, it can turn results into presentations, documents, or Slack updates for your team. Humans stay in the loop: everything Claude creates appears in your Versive dashboard for review, and nothing reaches participants until you share the study link yourself. You connect with your own Versive account through OAuth, access is read-only by default, your organization role and each study's access policy apply to every request, and every action is audited and revocable. Get started free at getversive.com.

Tools

add_logic_rule

ChatGPT
Add a conditional logic rule to a question. For single-select multipleChoice use operation 'equals' with the EXACT option text; for multi-select use 'contains'; for numeric questions (ratingScale/nps/starRating/number) use numeric comparisons with the number as a string; all other types only support 'always'. Use move_to_group to enter a question group at its first question. To screen participants out (screeners, disqualification) use screen_out, not end_interview: end_interview counts the interview as completed.

add_question_group

ChatGPT
Create a top-level question group or one subgroup. Nesting is capped at two levels. Use move_questions_to_group to place existing questions in it.

add_questions

ChatGPT
Add one or more questions to a study. Supports all Versive question types with sensible per-type defaults (see get_capabilities for the full catalog). In flat studies, questions are inserted at after_position; in grouped studies they are appended (set question_group_id to target a group) and after_position is ignored. The result reports the placement actually used.

add_randomizer

ChatGPT
Create a weighted split test from existing content: each arm shows one question or one existing group (several question_ids are grouped automatically), or is left empty as a placeholder. Weights are basis points and must total 10000. Use this for A/B or concept tests; use a randomized question group to shuffle order instead.

archive_study

ChatGPT
Archive a study: it stops accepting responses and disappears from list_studies, but all its data is preserved and it can be restored from the Versive dashboard. This is the only removal MCP offers — studies are never hard-deleted here.

create_prolific_panel_project

ChatGPT
Create a DRAFT Prolific recruiting panel for a study: title, description, participant count (max 250), duration, reward per participant in USD (Prolific enforces at least $8 per hour of survey time; aim for $20-30 per hour), optional targeting filters (find ids with search_prolific_filters, check get_prolific_eligible_count) and naivety rate. Best for general-population and consumer samples, speed and low cost. Studies with screen-out logic must set screen_out_reward and screen_out_slots (Prolific pays screened-out participants; more slots can only be bought by the user in the dashboard after publishing); redirect logic rules are not supported. Requires full access to the study. Before creating: call get_study (mode and duration drive the reward and device needs), propose provider, participant count, duration, incentive, targeting and the estimate_panel_project_cost total, and get the user's go-ahead. Then create ONE draft and refine it with the update tool. Nothing here is published or charged: the user pays and publishes in the Versive dashboard at the edit_url the tools return.

create_respondent_panel_project

ChatGPT
Create a DRAFT Respondent recruiting panel for a study: title (3-50 chars), description, participant count (max 500), duration, whole-dollar incentive ($5-$1000; Respondent suggests $2/min b2c, $3/min b2b), market type (b2c targets 1-2 topics; b2b targets industries, job titles, skills), demographic targeting (values from get_respondent_lookups) and screener questions. Best for professionals, B2B roles and screener-gated recruiting. The market type cannot change later. Screeners (2+) and b2b job titles are only required to publish, so the draft can be created first and the screener proposed to the user and added with the update tool. Requires full access to the study and a user identity. Before creating: call get_study (mode and duration drive the reward and device needs), propose provider, participant count, duration, incentive, targeting and the estimate_panel_project_cost total, and get the user's go-ahead. Then create ONE draft and refine it with the update tool. Nothing here is published or charged: the user pays and publishes in the Versive dashboard at the edit_url the tools return.

create_study

ChatGPT
Create a new research study in your organization. Three INDEPENDENT axes, do not conflate them: (1) status — live from creation, no draft state, but a live study is inert until someone distributes its share_url, so do NOT apply protective settings (paused, quota, restricted access) unprompted; (2) access_policy — which ORG MEMBERS see the study in the dashboard, never who can participate; (3) share_url — the participant entry point; it stops accepting responses when the study is paused or archived. Creation requires an owner, admin, or creator organization role; for other users this returns guidance instead of creating. Existing studies can be edited by anyone with edit access.

delete_logic_rule

ChatGPT
Delete (soft-delete) a logic rule from a question.

edit_interview_message

ChatGPT
Edit one of the study's participant-facing messages: welcome (start), thank_you (completion), or screen_out. Only provided fields change.

edit_logic_rule

ChatGPT
Edit an existing logic rule. Only provided fields change. Use get_logic_rules first.

edit_question

ChatGPT
Edit any aspect of a question: content, type, options, labels, scale settings, or behavior flags. Only provided fields change; props merge with the existing configuration. Changing question_type preserves the id and position but rebuilds props for the new type. The result warns when an edit orphans logic rules that match on removed option text. Use get_question_details first.

edit_question_group

ChatGPT
Rename a question group or change whether it randomizes its direct children. Only provided fields change.

edit_randomizer

ChatGPT
Replace a randomizer's final arm configuration: rename it, add/update/remove arms, change weights or targets, or move it. Pass every arm that should survive — arms left out are removed with their content.

edit_study_settings

ChatGPT
Edit study-level settings: title, description, status (published/paused), conversation mode, completion quota, pause redirect URL, org-visibility access_policy, interviewer branding (display name, personality, brand color), or languages (default_language / supported_languages — setting supported_languages triggers background translation). The personality is freeform prompt text describing any persona or tone; the interviewer defaults are tuned to work well, so leave name/personality/color untouched unless the user asks for a specific change or you are fixing a specific problem — and read the current values (get_study) before changing them. Only provided fields change.

estimate_panel_project_cost

ChatGPT
Advisory cost estimate for recruiting a number of participants at a given incentive on Prolific or Respondent (rewards plus provider and platform fees), before creating a panel. For Prolific it reports screen_out_required when the study screens participants out, and then prices the required screen-out budget (defaults unless screen_out_reward / screen_out_slots are given); use those values in the plan and the create call. The charged amount is always computed at checkout in the dashboard.

export_study_data

ChatGPT
Export interview responses as CSV: one row per interview, one column per question (answers come from what participants actually said). Paginated over interviews — check total_interviews in the result and page through for large studies. Useful for analysis in external tools or handing the raw data to the user.

get_capabilities

ChatGPT
Ground truth about what Versive studies support: the full question-type catalog with per-type props and their server-side defaults, logic-rule operations and actions per question type, question-group rules, known-unsupported features WITH their workarounds, and Versive's distinctive capabilities. Consult this before telling a user something is or is not possible, and before building questions of an unfamiliar type. Optional topic narrows the answer (e.g. "logic", "randomization", "question_types").

get_interview

ChatGPT
Fetch a single interview by id, including the question/answer conversation. Use this to quote or analyze what a participant actually said. Long conversations are windowed: total_messages reports the full length, and message_offset/message_limit page through it. Requires read access to the study the interview belongs to.

get_logic_rules

ChatGPT
List conditional logic rules — for one question (question_id) or the whole study (study_id). Rules are returned in the same vocabulary the write tools accept (equals/contains/always, skip_to/move_to_group/end_interview/screen_out/redirect), so values can be passed back to add_logic_rule / edit_logic_rule as-is.

get_panel_project

ChatGPT
Fetch one recruiting panel with its provider-specific targeting: Prolific filters, naivety rate, device requirements, and readiness; or Respondent market type, demographic and professional targeting, and screener questions. Read before updating.

get_prolific_eligible_count

ChatGPT
How many Prolific participants match a set of filters (empty filters = the whole pool). Prolific reports 0 when fewer than masked_below (5) match. Use it to sanity-check targeting before creating a panel, and warn the user when the count is close to or below the participants they want.

get_question_details

ChatGPT
Fetch one question's full configuration (content, type, props, media assets, attached logic rules). Use assets[].download_url to view media; private links expire at download_url_expires_at. Fetch details again for a fresh link. assets[].url is the stable identifier, not a private-media download link. Use before editing a question to see its current state.

get_respondent_lookups

ChatGPT
Respondent targeting vocabularies: country, companySize, householdIncome, gender, educationLevel, ethnicity, ageGroup, seniorityLevel, industries, jobFunction, topics. Job titles and skills are NOT lookups: search them with search_respondent_options. Pass the ids or values returned here to create_respondent_panel_project.

get_study

ChatGPT
Fetch a single Versive study by id: status, settings, quota, interviewer branding, participant-facing messages, languages, question/group/interview counts, and its share_url (participant link) and study_url (dashboard link). Always use these URLs when referring to the study — never construct one. Use before editing to see current values. Fails with an access error if you cannot read the study.

get_study_stats

ChatGPT
One-call answer to "how is my study doing?": totals and per-status counts of STARTED interviews (never-started invitation links are excluded), completion rate, median progress of incomplete interviews, approximate drop-off by question, and weekly started/completed trends. Real vs AI-simulated interviews are always split (completed_real vs completed_simulated) — report them separately, never as one number. active_interviews matches the default list_interviews total. Pass question_id to instead get answer aggregates for one quantitative question (the same numbers the dashboard charts show) — prefer that over reading every interview and tallying by hand.

list_interviews

ChatGPT
List interviews for a Versive study (paginated, with the total count). By default returns the ACTIVE set (in_progress + closed + processing) — 'open' invitation links that were never started, screened_out, paused, and canceled interviews appear only when filtered for explicitly by status. The default total matches get_study_stats active_interviews. Filter by status or exclude AI-simulated interviews with include_simulations: false. Requires read access to the study.

list_panel_projects

ChatGPT
List recruiting panels (Prolific or Respondent projects): provider, status (DRAFT = not paid or published yet, PAID = live, CLOSED), recruiting status, participant counts, and dashboard links (panel_url; edit_url for drafts). Omit study_id to list EVERY panel in your organization in one call (each row carries its study_title) — never walk list_studies and query study by study. Pass study_id for one study. Use get_panel_project for targeting details.

list_question_groups

ChatGPT
List a study's question groups, hierarchy, display order, and randomization settings. Use with list_questions to understand the complete grouped interview structure.

list_questions

ChatGPT
List a study's interview questions, including question type, group membership, per-parent display order, interviewer notes, and whether each question has logic rules attached (has_logic). For grouped studies, combine this with list_question_groups to reconstruct the interview tree.

list_randomizers

ChatGPT
List a study's randomizers (weighted split tests) with their arms, weights, and each arm's target question or question group. A group whose routing_branch_id is set in list_question_groups is owned by one of these arms.

list_studies

ChatGPT
List the research studies in your Versive organization that you have access to, newest first, paginated (returns items plus the total count). Optionally filter by status or a title/description query, and set include_activity for per-study response counts (which studies have interviews, completions, simulations). Use get_study for full details of one study.

move_questions_to_group

ChatGPT
Move questions into a group, or pass null to move them to the study top level. Questions are appended to the target. Moves that would invalidate randomized-group skip logic are rejected.

read_doc

ChatGPT
Read one help-center page as plain Markdown, optionally a single section. Use the slug from search_docs (e.g. "mcp/setup", "getting-started/concepts"); a docs.getversive.com URL is accepted too. Pass section to read just one heading (its text or anchor, e.g. "Troubleshooting") — the response lists every heading, so read a section first for long pages. Answer from the content and cite the page url. The pages describe the product in general; use get_study, list_interviews, etc. for anything about the user's own data.

remove_question_group

ChatGPT
Remove a group. mode='ungroup' dissolves it and keeps its children; mode='delete' also removes descendant groups and questions. Prefer ungroup unless deletion is explicit.

remove_questions

ChatGPT
Remove (soft-delete) one or more questions from a study. This cannot be undone via MCP. The result reports logic rules on other questions that targeted a removed question and now need fixing.

remove_randomizer

ChatGPT
Remove a randomizer. mode='ungroup' dissolves it and keeps every question (arm content moves back into the study in arm order); mode='delete' also removes the questions and groups inside its arms. Prefer ungroup unless deletion is explicit.

reorder_questions

ChatGPT
Reorder a study's questions. Provide ALL question ids in the desired order (use list_questions first to get the current order). Grouped studies must use move_questions_to_group instead.

search_docs

ChatGPT
Search Versive's help center (docs.getversive.com) for product knowledge: how features work in the app, credits and billing, sharing and distribution, recruiting participants, results and insights, organizations, roles and permissions, MCP server setup, and API / SDK basics. Use it for "how do I…" and "how does … work" questions instead of guessing (get_capabilities stays the source of truth for what the study tools can literally do). Returns the best-matching pages with the matched section and a snippet; call read_doc with a result's slug for the full page or one section, then answer from it and link the page url.

search_prolific_filters

ChatGPT
Search the Prolific participant-filter catalog by text (titles, ids, choice labels) or category. Returns filter ids, their type (select or range), and choice ids with labels to use in create/update_prolific_panel_project filters. Small filters list every choice; when choices_truncated is true, or the choice you need is not shown, call again with filter_id to list that filter's choices (query then narrows them). Never guess an id.

search_respondent_options

ChatGPT
Search Respondent job titles or skills by text and get the ids to use for B2B targeting (target_job_titles, target_audience_skills).

set_question_quotas

ChatGPT
Cap completed interviews per option on a multiple choice question (replace-set: pass the FULL bucket list; an empty list clears the question's quotas). match 'equals' = that option is the only one selected (works on single- and multi-select), 'includes' = option among the selected values (multi-select only); limit 0 closes the option; options without a bucket are unlimited. When a bucket is full, new participants who choose that option are screened out when they answer; other options keep going. Independent of the study-level quota in edit_study_settings. Values must be the exact option text — use get_question_details first. Success returns {question_id, buckets} with the normalized saved buckets. Fails with a clear error for an unknown question, a non multipleChoice question, a value that is not one of the question options, or an 'includes' bucket on a single-select question.

add_logic_rule

Claude

add_question_group

Claude

add_questions

Claude

archive_study

Claude

create_study

Claude

delete_logic_rule

Claude

edit_interview_message

Claude

edit_logic_rule

Claude

edit_question

Claude

edit_question_group

Claude

edit_study_settings

Claude

export_study_data

Claude

get_capabilities

Claude

get_interview

Claude

get_logic_rules

Claude

get_question_details

Claude

get_study

Claude

get_study_stats

Claude

list_interviews

Claude

list_question_groups

Claude

list_questions

Claude

list_studies

Claude

move_questions_to_group

Claude

remove_question_group

Claude

remove_questions

Claude

reorder_questions

Claude

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

Similar Apps