100+ integrations are ready to connect to your AI.Connect your first MCP

SurveyMonkey MCP server for your AI

Pull a survey's responses fully expanded with every answer, build new surveys and questions, open weblink or email collectors, and load the contact lists behind your next invite send.

PopMCPSurveyMonkey

Summarize the top complaints in our Q3 customer satisfaction survey

Supported SurveyMonkey tools

Every survey, response, collector, contact, analytics and webhook operation on the connection, plus the events an agent can watch.

surveymonkey_create_contact

Create a contact in the address book.

surveymonkey_list_contact_lists

List the account's contact lists.

surveymonkey_list_contacts

List all contacts in the account's address book.

surveymonkey_create_collector_response

Create a survey response programmatically.

surveymonkey_get_survey_response_details

Get one survey response FULLY EXPANDED with every question and answer.

surveymonkey_get_survey_responses_bulk

Get a survey's responses FULLY EXPANDED with every answer (the main way to read survey results across all collectors).

surveymonkey_list_survey_responses

List a survey's responses.

surveymonkey_create_survey

Create a survey — blank, copied from an existing survey (from_survey_id), built from a SurveyMonkey template (from_template_id), or fully specified with pages+questions.

surveymonkey_get_survey

Get a survey's top-level details (title, language, page/question counts, href) — WITHOUT the pages and questions.

surveymonkey_get_survey_details

Get the EXPANDED survey: a `pages` array, each with a `questions` array (question ids, families, headings, and answer choices with their ids).

surveymonkey_list_surveys

List surveys owned by or shared with the account — each survey's id, title, and href.

surveymonkey_update_survey

Partially update a survey — change its title, nickname, language, buttons_text, custom_variables, footer, or folder_id.

surveymonkey_create_collector

Create a collector for a survey (a weblink to share, an email invite collector, SMS, or a popup).

surveymonkey_list_collectors

List a survey's collectors (the ways it's being distributed — weblink, email, etc.).

surveymonkey_create_page

Add a new (empty) page to a survey.

surveymonkey_create_question

Add a question to a survey page.

surveymonkey_create_webhook

Subscribe a callback URL to SurveyMonkey events (e.g.

surveymonkey_delete_webhook

Delete a webhook subscription.

surveymonkey_get_survey_rollups

Aggregated answer counts for every question in a survey (answered/skipped, per-choice counts, basic stats).

surveymonkey_get_survey_trends

Answer counts for a survey bucketed into time periods.

surveymonkey_list_webhooks

List the account's webhooks (event subscriptions).

surveymonkey_get_me

Get the authenticated SurveyMonkey account (the user this token acts as) — id, username, email, account_type/plan, language, and scopes.granted/available.

surveymonkey_add_contact_to_list

Create a contact and add it to a list.

surveymonkey_bulk_add_contacts

Create many contacts at once.

surveymonkey_bulk_add_list_contacts

Add many contacts to a list at once.

surveymonkey_bulk_get_contacts

Get all contacts in the account with ALL fields in one call.

surveymonkey_bulk_get_list_contacts

Get every contact in a list with ALL fields (including custom_fields) in one call.

surveymonkey_copy_contact_list

Duplicate a contact list (creates 'Copy of …').

surveymonkey_create_contact_list

Create a contact list.

surveymonkey_delete_contact

Delete a contact from the address book.

surveymonkey_delete_contact_list

Delete a contact list (the contacts themselves remain in the account).

surveymonkey_get_contact

Get one contact.

surveymonkey_get_contact_field

Get one custom contact field.

surveymonkey_get_contact_list

Get one contact list.

surveymonkey_list_contact_fields

List the (up to 6) custom contact field definitions — their numeric ids and labels.

surveymonkey_list_contacts_in_list

List the contacts in a contact list.

surveymonkey_merge_contact_list

Copy the contacts from one list (list_id) into the list named in the path.

surveymonkey_replace_contact

Replace a contact wholesale.

surveymonkey_replace_contact_list

Replace a contact list (its name).

surveymonkey_update_contact

Partially update a contact (any create field).

surveymonkey_update_contact_field

Rename a custom contact field's label (the 6 field slots are fixed — you can only change labels).

surveymonkey_update_contact_list

Rename a contact list.

surveymonkey_add_workgroup_member

Add one member to a workgroup.

surveymonkey_bulk_add_workgroup_members

Add several members to a workgroup at once.

surveymonkey_bulk_create_workgroup_shares

Share several surveys with a workgroup at once.

surveymonkey_create_workgroup

Create a workgroup.

surveymonkey_create_workgroup_share

Share a survey with a workgroup (this is how you 'share' a survey via the API).

surveymonkey_delete_workgroup

Delete a workgroup.

surveymonkey_delete_workgroup_member

Remove a member from a workgroup.

surveymonkey_delete_workgroup_share

Un-share a resource from a workgroup.

surveymonkey_get_workgroup

Get one workgroup.

surveymonkey_get_workgroup_member

Get one workgroup member.

surveymonkey_get_workgroup_share

Get one workgroup share record.

surveymonkey_list_roles

List the organization's user roles.

surveymonkey_list_workgroup_members

List a workgroup's members.

surveymonkey_list_workgroup_shares

List resources (surveys) shared into a workgroup.

surveymonkey_list_workgroups

List the organization's workgroups.

surveymonkey_update_workgroup

Partially update a workgroup.

surveymonkey_update_workgroup_member

Update a workgroup member (e.g.

surveymonkey_delete_all_collector_responses

⚠️ DANGER: delete EVERY response collected by this collector (not a single one).

surveymonkey_delete_collector_response

Delete a single collector response.

surveymonkey_delete_survey_response

Delete a single survey response.

surveymonkey_get_collector_response

Get one collector response's metadata.

surveymonkey_get_collector_response_details

Get one collector response fully expanded with every answer.

surveymonkey_get_collector_responses_bulk

Get one collector's responses fully expanded with every answer.

surveymonkey_get_survey_response

Get one survey response's metadata.

surveymonkey_list_collector_responses

List one collector's responses (metadata only).

surveymonkey_replace_collector_response

Replace a collector response wholesale.

surveymonkey_replace_survey_response

Replace a response wholesale.

surveymonkey_update_collector_response

Partially update a collector response.

surveymonkey_update_survey_response

Partially update a response (e.g.

surveymonkey_create_survey_folder

Create a folder to organize surveys.

surveymonkey_delete_survey

Permanently delete a survey (and its collectors and responses).

surveymonkey_list_survey_folders

List the team's survey folders.

surveymonkey_replace_survey

Replace a survey's top-level settings wholesale.

surveymonkey_create_message

Create an invite, reminder, thank-you, or SMS message on a collector.

surveymonkey_delete_message

Delete a message from a collector.

surveymonkey_get_message

Get one message.

surveymonkey_get_message_stats

Get send/response stats for a single message (responded/partial/not-responded; opened/sent/bounced/opted-out; recipients).

surveymonkey_list_messages

List the invite/reminder/thank-you messages on an email or SMS collector.

surveymonkey_replace_message

Replace a not-yet-sent message's editable content.

surveymonkey_send_message

Send (or schedule) an existing message to all of its recipients.

surveymonkey_update_message

Edit a not-yet-sent message's subject, body_text/body_html, branding, or recipient_status (reminder/thank-you only).

surveymonkey_delete_collector

Delete a collector (and the responses gathered through it).

surveymonkey_get_collector

Get one collector with all its settings.

surveymonkey_get_collector_stats

Get aggregate send/response stats across all messages on a collector (responded/partial/not-responded counts, mail opened/sent/bounced/opted-out, recipients).

surveymonkey_replace_collector

Replace a collector's configuration wholesale (same fields as create, minus `type`, plus `status`).

surveymonkey_update_collector

Partially update a collector — most commonly open or close it with `status`.

surveymonkey_add_message_recipient

Add one recipient to a not-yet-sent invite/SMS message — by an existing contact_id, or by email (email collector) / phone_number (SMS collector).

surveymonkey_bulk_add_message_recipients

Add many recipients to a message at once — from contact ids, whole contact lists, and/or inline contact objects.

surveymonkey_delete_collector_recipient

Remove a recipient from a collector.

surveymonkey_delete_page

Delete a survey page and its questions.

surveymonkey_delete_question

Delete a question from a survey page.

surveymonkey_get_collector_recipient

Get one recipient on a collector.

surveymonkey_get_page

Get one survey page's details.

surveymonkey_get_page_rollups

Aggregated answer counts for the questions on one page.

surveymonkey_get_page_trends

Answer counts over time for one page's questions.

surveymonkey_get_question

Get one question's full definition (family, subtype, headings, answer choices with ids).

surveymonkey_get_question_rollups

Aggregated answer counts for a single question.

surveymonkey_get_question_trends

Answer counts over time for a single question.

surveymonkey_get_webhook

Get one webhook.

surveymonkey_list_collector_recipients

List ALL recipients across every message on a collector.

surveymonkey_list_message_recipients

List the recipients of a specific message.

surveymonkey_list_pages

List a survey's pages.

surveymonkey_list_questions

List the questions on a survey page.

surveymonkey_replace_page

Replace a survey page wholesale (title, description, position).

surveymonkey_replace_question

Replace a question wholesale.

surveymonkey_replace_webhook

Replace a webhook wholesale.

surveymonkey_update_page

Partially update a survey page (title, description, position).

surveymonkey_update_question

Partially update a question.

surveymonkey_update_webhook

Partially update a webhook.

surveymonkey_create_survey_translation

Create a translation for a survey in one language.

surveymonkey_delete_survey_translation

Delete a survey's translation for one language.

surveymonkey_get_survey_translation

Get the translation structure for one language — the full list of translatable strings with their current translations (empty where untranslated).

surveymonkey_list_survey_translations

List a survey's translations (one per language code) with translated/stale/inherited string counts.

surveymonkey_update_survey_translation

Update an existing survey translation.

surveymonkey_analyze_benchmark_bundle

Get benchmark distribution / quartile values for specific questions in a bundle.

surveymonkey_get_benchmark_bundle

Get the questions and details in a benchmark bundle.

surveymonkey_get_group

Get a team's details.

surveymonkey_get_group_member

Get a team member's details.

surveymonkey_get_question_benchmark

Get the benchmark (num_responses, quartile_values, distribution) for a specific question in your survey.

surveymonkey_list_benchmark_bundles

List the benchmark bundles you have access to (industry comparison data).

surveymonkey_list_group_members

List a team's members.

surveymonkey_list_groups

List the team(s) the user belongs to.

surveymonkey_get_user_shared_resources

List resources (surveys) shared with an user across all workgroups — share_id, workgroup_id, resource_type, resource_id, privileges.

surveymonkey_get_user_workgroups

List the workgroups a specific user belongs to (Team/Enterprise).

surveymonkey_list_survey_categories

List survey categories (used to filter survey templates).

surveymonkey_list_survey_languages

List supported survey languages (id = language code, name, native_name) — the codes you use when adding survey translations.

surveymonkey_list_survey_templates

List SurveyMonkey's built-in survey templates.

surveymonkey_get_error

Get the details of a known API error code.

surveymonkey_list_errors

List the known SurveyMonkey API error codes (id, name, href) — a reference for interpreting failures.

Connect SurveyMonkey to your AI

Credentials off one SurveyMonkey screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.

Create a Private app at developer.surveymonkey.com → My Apps, copy the Access token from its Settings, and paste it here. Add Data region (us, eu, or ca) if needed. The token scopes the connection to that one account.

Access token••••••••••••3f7a
Data region (us, eu, or ca)us
ConnectionVerified

Then just ask for the work

  • Summarize the top complaints in our Q3 customer satisfaction survey

    • list_surveys
    • get_survey_responses_bulk
    • get_survey_rollups
  • Rename our NPS surveys with a 2026 prefix and move them into the Archive folder

    • list_surveys
    • get_survey
    • update_survey
  • Copy last quarter's NPS survey, add a free-text question, and give me a weblink

    • create_survey
    • create_page
    • create_question
    • create_collector
  • Which contacts on the VIP list have not finished the onboarding survey yet

    • list_contact_lists
    • bulk_get_list_contacts
    • list_survey_responses

Use SurveyMonkey from the assistant you already open

One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.

Claude DesktopCustom connector

Add the PopMCP URL under Settings → Connectors and the tools appear in every chat.

Claude WebCustom connector

The same endpoint, registered in the browser. Nothing to install on the machine you are working from.

ChatGPTCustom connector

Register PopMCP as a custom connector, then let ChatGPT read and update the account.

CodexDesktop & CLI

Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.

OpenCodeCoding agent

Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.

ZCodeDesktop app

Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.

SurveyMonkey MCP server questions

What teams ask before putting SurveyMonkey behind an AI client.

Where do I get the SurveyMonkey access token, and does it expire?

In the SurveyMonkey developer portal, go to My Apps, create a New app of type Private, and copy the access token shown in that app's Settings. Paste it into the Access token field on the connect form. SurveyMonkey tokens don't expire, so there is no OAuth popup and nothing to re-authenticate later.

Which surveys and data can the connection actually reach?

The token acts as one SurveyMonkey account, and the connection is locked to it. Listing surveys returns the ones owned by or shared with that account, and surveymonkey_get_me tells you exactly which account you're on — its username, email, plan, and the scopes granted to the token. If a survey isn't owned by or shared with that account, the agent can't see it.

What is the Data region field for?

It's the optional second field on the connect form and accepts us, eu, or ca. Set it to match the region your SurveyMonkey account is hosted in. The Access token is the only required value.

Can the agent read individual answers, or only response counts?

Both. surveymonkey_get_survey_responses_bulk is the main way to read results across all collectors — it returns responses fully expanded with every answer, and surveymonkey_get_survey_response_details does the same for a single response. For aggregates, surveymonkey_get_survey_rollups gives answered/skipped and per-choice counts for every question, and surveymonkey_get_survey_trends buckets answer counts into time periods.

Why does the agent look up a survey before writing questions or responses?

SurveyMonkey's API works on ids, not labels. surveymonkey_get_survey_details returns the expanded survey — a pages array, each with its questions, their families and headings, and the answer choices with their ids — which is what a new question or a programmatically created response has to reference. Contacts behave the same way: surveymonkey_list_contact_fields returns the numeric ids for the custom contact field definitions, of which an account has up to six.

Which SurveyMonkey events can PopMCP watch?

Webhook-backed events cover the response lifecycle — started, completed, updated, disqualified, deleted, and over quota — plus collector created, updated and deleted, and survey created, updated and deleted. Two more run on change detection: a contact added to the address book, and a new contact list created. The agent can also manage the subscriptions itself with surveymonkey_list_webhooks, surveymonkey_create_webhook and surveymonkey_delete_webhook.

Do I have to run or host the SurveyMonkey MCP server myself?

No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.

Which AI clients can use this MCP server?

Any client that supports a remote Streamable HTTP MCP server — Claude Desktop, Claude Web, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.

Why do only 22 of the 131 tools load by default?

Loading 131 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 22-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. You can switch a connection to the full catalog at any time.

What is the difference between a tool and a trigger?

A tool is something your AI calls — there are 131 here. A trigger is something PopMCP watches for you: 14 SurveyMonkey events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into SurveyMonkey.

Connect SurveyMonkey to your AI in minutes

Launch a hosted MCP endpoint for SurveyMonkey, keep tool access under control, and start testing real workflow prompts right away.

Connect your first MCP