# Qualtrics MCP

> Qualtrics connects your AI client to your Experience Management system. List surveys, manage contact lists, and pull massive amounts of raw feedback data—all without navigating the Qualtrics UI. Your agent handles everything from creating new distributions to monitoring response exports.

## Overview
- **Category:** data-analytics
- **Price:** Free
- **Tags:** survey-automation, experience-management, data-collection, customer-feedback, xm-directory

## Description

Yo, check it: This whole thing connects your AI client straight into Qualtrics' Experience Management system. You bypass all that clunky UI garbage and run everything through plain talk. Your agent handles the heavy lifting—you just tell it what you need done.

**List and Get Survey Details**
You don't gotta guess what surveys are running, either. The agent can pull a list of every single survey you got in Qualtrics using `list_surveys`, letting you see exactly what's available. If you know the ID, it uses `get_survey` to grab all the metadata and full details for that specific survey. Need to build something from scratch? You can use `create_survey` to whip up an entirely new survey structure and save it in your account. And if a survey changes but you don't want to restart the whole thing, `update_survey` lets you edit existing details right there.

**Manage Contact Directory**
Keeping track of who gave you feedback is half the battle. The agent keeps your contact directory clean. You can run `list_directory_contacts` to see a list of every person stored in the system. If someone new pops up, use `create_contact` to add them as a fresh record into the directory. And if an email changes or their job title gets updated, you just run `update_contact` to change that existing information so your audience lists stay current and accurate.

**Control Survey Distribution**
Want to push out a survey link? You don't walk around clicking menus. The agent handles it. It can use `create_distribution` to set up a new way to send the survey link to an entire group of people. If you wanna know what’s going on with a distribution already running, `get_distribution` pulls those specific details for you, showing who got the message or when it went out. You can also pull a list of all current distributions using `list_distributions` so you don't send duplicate links.

**Start Data Exports**
Got finished responses and need 'em in a spreadsheet? This is where the magic happens. When you tell the agent to start an export for any survey, it kicks off the job by calling `create_response_export`. You don't get the file right away; you gotta wait. The agent tracks that progress using `get_export_progress` until the job status flips to 'finished.' Once it’s done, `get_export_file` downloads the actual finished data—whether it’s CSV or JSON format—so you can dive deep into the numbers.

**Build Workflows and Monitor Events**
This is for the advanced stuff. You can set up reactive workflows without touching a single webhook configuration screen. The agent lets you use `create_event_subscription` to set up webhooks that fire when specific things happen with your surveys or contacts, letting you build complex, automated reactions. Need to see what subscriptions are already running? Just run `list_event_subscriptions` to get a full list of all active webhooks for the account. This gives you total visibility over how the system is reacting to data.

So yeah, your agent takes charge of every single part of Qualtrics: from building the survey structure itself and managing the raw contact lists, through launching distributions to tracking progress on massive data exports, it’s all there. You just talk to it; it runs the code.

## Tools

### create_contact
Adds a new person record into your Qualtrics contact directory.

### create_distribution
Creates a new way to send out a survey link to an audience.

### create_event_subscription
Sets up a webhook that triggers when specific actions happen with your surveys or contacts.

### create_response_export
Starts the process of gathering all responses for a chosen survey into a data file.

### create_survey
Builds and saves a brand new survey structure in your Qualtrics account.

### get_distribution
Shows the specific details of an existing survey distribution, like who received it or when.

### get_export_file
Downloads the actual finished data file after a response export job is complete.

### get_export_progress
Checks if a requested survey data export has started, is running, or is finished.

### get_survey
Retrieves the full details and metadata for one specific survey by its ID.

### list_directory_contacts
Shows a list of all people stored in your contact directory.

### list_distributions
Retrieves a list of all current survey distributions you have set up.

### list_event_subscriptions
Lists all active webhooks and event subscriptions for your account.

### list_surveys
Shows a list of every survey you have created in Qualtrics.

### update_contact
Changes existing information for a contact in the directory, like an email or title.

### update_survey
Edits details on an already-built survey without having to rebuild it.

## Prompt Examples

**Prompt:** 
```
List all my Qualtrics surveys.
```

**Response:** 
```
I've retrieved your surveys. You have 3 active surveys: 'Customer Satisfaction 2024' (ID: SV_123), 'Employee Engagement' (ID: SV_456), and 'Product Feedback' (ID: SV_789).
```

**Prompt:** 
```
Create a new survey named 'Market Research Q3' in English.
```

**Response:** 
```
The survey 'Market Research Q3' has been successfully created with ID: SV_98765. You can now start adding questions or setting up distributions.
```

**Prompt:** 
```
Export the responses for survey SV_12345 in CSV format.
```

**Response:** 
```
I've initiated the export for survey SV_12345. The Export ID is ES_abc123. I will monitor the progress for you.
```

## Capabilities

### List and Get Survey Details
Retrieve a full list of surveys or fetch specific metadata for one, helping you know exactly what data exists.

### Create and Modify Surveys
Build new survey structures, update existing ones, or create entirely new projects within your Qualtrics account.

### Manage Contact Directory
Add, modify, or list contacts in the XM directory to ensure your audience lists are always current and accurate.

### Start Data Exports
Trigger a response export for any survey. The agent tracks the job status until it retrieves the final CSV or JSON file.

### Control Survey Distribution
Create new distribution links and manage existing ones to push surveys out to specific groups of people.

## Use Cases

### Need a full survey inventory for an audit.
A manager needs to confirm every active study before handing off account ownership. Instead of clicking through dozens of folders, they simply prompt the agent to `list_surveys`. The agent immediately returns a clean list of all available surveys and their IDs, solving the problem in seconds.

### Must gather data from last week's feedback session.
A data analyst needs raw CSV files for Q4 analysis. They prompt the agent to `create_response_export` for a specific survey ID. The agent gives an Export ID and continually checks status using `get_export_progress` until the final file is ready via `get_export_file`, eliminating manual monitoring.

### Updated contact list needs mass synchronization.
A Customer Success Lead gets a new master spreadsheet of contacts. They don't have time to update each record manually, so they use the agent to run `update_contact` multiple times or check directory integrity with `list_directory_contacts`, keeping the entire audience list current.

### Launching a new research campaign fast.
A researcher needs to launch feedback surveys and ensure they reach specific groups. They use the agent to `create_survey` first, then immediately run `create_distribution` to send it out, completing the entire lifecycle without leaving the chat interface.

## Benefits

- Get a full inventory of your research projects instantly. Instead of navigating multiple dashboards to see what exists, you just ask the agent to `list_surveys` and get everything in one shot.
- Never manually trigger an export again. Use `create_response_export` to start data gathering, then use `get_export_progress` until it's done, finally pulling the raw file with `get_export_file`—all via chat.
- Keep your audience lists clean. Need to update a contact’s title or email? Use `update_contact` instead of logging into the directory and clicking through forms for every single person.
- Automate feedback loops by setting up event triggers. The agent handles `create_event_subscription`, allowing you to build reactive workflows based on specific survey activity without writing boilerplate code.
- Speed up your setup phase. Use `create_survey` or `update_survey` to rapidly build or adjust research tools, saving time spent in the native Qualtrics editor.

## How It Works

The bottom line is that your agent runs complex administrative tasks in Qualtrics using plain conversation, bypassing the need for manual UI clicks entirely.

1. Subscribe to the Qualtrics server and enter your required API Token and Datacenter ID.
2. Tell your AI client what you need—for example, 'List all active surveys for Q3.'
3. The agent executes the necessary tool calls (like `list_surveys`) and returns structured data or commands to complete the task.

## Frequently Asked Questions

**How do I list all my surveys using the Qualtrics MCP Server?**
You simply ask the agent to run `list_surveys`. The server returns a structured list of every survey you have created in your account, including key identifiers.

**Can I update contact information with the Qualtrics MCP Server?**
Yes. Use the `update_contact` tool and provide the agent with the unique ID and the specific fields (like email or title) that need changing in the XM Directory.

**What do I do if my Qualtrics data export fails?**
If an export job fails, you can ask the agent to check the status again using `get_export_progress`. The agent will report the failure reason or confirm that a new attempt is needed.

**How do I create a brand new survey?**
Run the `create_survey` tool. You'll need to specify initial details, and the server handles generating the basic structure for you, saving it to your account.

**How do I retrieve specific metadata for a Qualtrics survey using the `get_survey` tool?**
You pass the unique survey ID to `get_survey`. This returns deep metadata—like question types, status dates, and ownership info—without listing all your surveys.

**What do I use to manage my automated webhooks using `list_event_subscriptions` in Qualtrics?**
Use the `list_event_subscriptions` tool. It shows you every active webhook connected to your account, letting you confirm which events trigger data sends when a user interacts with a survey.

**What if I need to check the status of an export after running `create_response_export` in Qualtrics?**
Use `get_export_progress`. You feed it the Export ID, and it tells you exactly where the data is: pending, processing, or ready for download.

**How do I get detailed status information about an active Qualtrics distribution using `get_distribution`?**
Just use `get_distribution` with the ID. You can confirm if the survey is live, who received it, and when its targeted activity window ends.

**How can I export survey responses using the AI?**
You can use the `create_response_export` tool to start the process. Then, use `get_export_progress` to check when it's ready, and finally `get_export_file` to retrieve the data.

**Can I create a new survey directly through the agent?**
Yes! Use the `create_survey` tool by providing a name, and optionally the language and project category. The agent will return the new Survey ID for you.

**Is it possible to manage my XM Directory contacts?**
Absolutely. You can use `list_directory_contacts` to see existing members and `create_contact` or `update_contact` to modify your directory information.