---
title: "Qualtrics XM MCP server for AI agents - actionlake"
description: "Give Claude 293 Qualtrics XM actions through one MCP server: contacts, distributions. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/qualtrics-xm
updated: 2026-10-23
---

Connectors · Marketing & media

# Qualtrics XM MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Qualtrics XM and the rest of your systems. It gives your agent 293 Qualtrics XM actions (152 reads, 102 writes and 39 that wait for a confirmation) and holds the Qualtrics XM credential itself, so the agent never does. It paces Qualtrics XM's limits and records every call.

[Connect Qualtrics XM free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "qualtrics.users.list",
  intent: "check which Qualtrics XM account is connected"
}
# List Users · read · 1 upstream call
```

- 293 actions in one signed file
- 152 read look, never change
- 102 write create and update
- 39 wait for a yes destructive, confirmed first

Set up

## Connect Qualtrics XM in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect Qualtrics XM.
   API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
   - `api_token` Qualtrics API token
   - `host` Where your Qualtrics XM lives: your host
   ```
   account { op: "connections.requirements", service: "qualtrics" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "qualtrics.users.list" }
   # list users · read · 1 upstream call
   check { action: "qualtrics.users.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

Qualtrics XM at a glance

**Sign-in**

API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.

**You provide**

`api_token`

**Setup fields**

`host`

**Limits we pace to**

3,000 calls a minute, per connection

**API covered**

Qualtrics public API v3 (Stoplight reference, fetched 2026-10-23), at your Qualtrics XM instance's API base URL, which you enter when connecting (path /API/v3)

**Built from**

Qualtrics XM's documentation, read 23 October 2026[api.qualtrics.com](https://api.qualtrics.com/ZG9jOjg0MDczOA-api-reference) [stoplight.io](https://stoplight.io/api/v1/projects/cHJqOjk3NDQ/table-of-contents)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

98 of 152 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

7, so ask can line Qualtrics XM up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in Qualtrics XM.

293 actions in 121 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **152** read look, never change
- **102** write create and update
- **39** destructive wait for a confirmation

1. ### Contacts
   6
   3 read · 2 write · 1 destructive
   List Directory Contacts · Create Directory Contact · Get Directory Contact · Update Directory Contact
2. ### Distributions
   6
   2 read · 3 write · 1 destructive
   Create Distribution · List Distributions · Get Distribution · Delete Distribution
3. ### Samples
   6
   3 read · 2 write · 1 destructive
   Create Sample · List Samples · Get Sample · Update Sample
4. ### Contact frequency rules
   5
   2 read · 2 write · 1 destructive
   Create Contact Frequency Rule · List Contact-Frequency Rules · Get Contact Frequency Rule · Update Contact Frequency Rule
5. ### Groups
   5
   2 read · 2 write · 1 destructive
   List Groups · Create Group · Get Group · Update Group
6. ### Imported data project records
   5
   1 read · 3 write · 1 destructive
   Add single record · Get a Record from Imported Data Project · Update a Record in an Imported Data Project · Delete a Record from Imported Data Project
7. ### Library messages
   5
   2 read · 2 write · 1 destructive
   Create Library Message · List Library Messages · Get Library Message · Update Library Message
8. ### Mailing list contacts
   5
   2 read · 2 write · 1 destructive
   Create Contact In Mailing List · List Contacts In Mailing List · Get Contact In Mailing List · Update Contact In Mailing List

**113 more areas · 250 actions**

- Mailing lists **5**
- Research core contacts **5**
- Research core mailing lists **5**
- Sample definitions **5**
- Segments **5**
- Survey definition questions **5**
- Survey definition quotagroups **5**
- Survey definition quotas **5**
- Surveys **5**
- Tickets **5**
- Transactions **5**
- Users **5**
- Client certificates **4**
- Event subscriptions **4**
- SMS distributions **4**
- Survey definition blocks **4**
- Survey sessions **4**
- Survey sessions V2 **4**
- Transaction batches **4**
- Whatsapp distributions **4**
- Divisions **3**
- Employee directory export participants **3**
- Employee directory participants **3**
- Erasure requests **3**
- Ex project participants **3**
- Export contact segment memberships **3**
- Export contacts **3**
- Group members **3**
- Imported data projects **3**
- Research core contact imports **3**
- Response imports **3**
- Survey definition flow **3**
- Survey definition versions **3**
- Survey definitions **3**
- Survey responses **3**
- Transaction batch transactions **3**
- Transaction contact imports **3**
- User API tokens **3**
- Audit exports **2**
- Bulk entity imports **2**
- Customer data requests **2**
- Employee directory delete participants **2**
- Employee directory import participants **2**
- Ex project copy evaluators **2**
- Ex project copy participants **2**
- Ex project copy subjects **2**
- Ex project delete participants **2**
- Ex project export nominations **2**
- Ex project export participants **2**
- Ex project import evaluators **2**
- Ex project import participants **2**
- Ex project import subjects **2**
- Imported data project exports **2**
- Legacy response exports **2**
- Oauth tokens **2**
- Response delete jobs **2**
- Response exports **2**
- Response update jobs **2**
- Responses **2**
- Segment contacts **2**
- Segment refresh jobs **2**
- Survey definition metadata **2**
- Survey definition options **2**
- Survey languages **2**
- Survey translations **2**
- Ticket exports **2**
- Ticket statuses **2**
- Activity log types **1**
- Activity logs **1**
- Audit events **1**
- Conjoint collaborations **1**
- Contact history **1**
- Contact transactions **1**
- Directories **1**
- Distribution history **1**
- Distribution links **1**
- Employee directory delete participants results **1**
- Employee directory import participants results **1**
- Ex participant invitations **1**
- Ex project copy evaluators results **1**
- Ex project copy participants results **1**
- Ex project copy subjects results **1**
- Ex project delete participants results **1**
- Ex project import evaluators results **1**
- Ex project import participants results **1**
- Ex project import subjects results **1**
- Legacy response imports **1**
- Libraries **1**
- Library blocks **1**
- Library graphics **1**
- Library questions **1**
- Library surveys **1**
- Mailing list bounced contacts **1**
- Mailing list contact history **1**
- Mailing list opted out contacts **1**
- Opted out contacts **1**
- Organizations **1**
- Research core sample contacts **1**
- Research core samples **1**
- Sample contacts **1**
- Survey collaborations **1**
- Survey embedded data fields **1**
- Survey filters **1**
- Survey quotas **1**
- Survey response schema **1**
- Survey response uploaded files **1**
- Ticket additional data **1**
- Ticket events **1**
- Ticket groups **1**
- Ticket root causes **1**
- Ticket teams **1**
- Transaction enrichments **1**
- Whoami **1**

Top actions

## The Qualtrics XM API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 42 of Qualtrics XM's 42 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `qualtrics.users.list` List Users | List Users | read | `identity.user.list` 474 connectors |
| `qualtrics.groups.list` List Groups | List Groups | read | `identity.group.list` 262 connectors |
| `qualtrics.whoami.get` Who Am I | Who Am I | read | `identity.current_user.get` 307 connectors |
| `qualtrics.contacts.list` List Directory Contacts | List Directory Contacts | read | `crm.contact.list` 177 connectors |
| `qualtrics.users.create` Create User | Create User | write | `identity.user.create` 262 connectors |
| `qualtrics.groups.create` Create Group | Create Group | write | `identity.group.create` 205 connectors |
| `qualtrics.users.delete` Delete User | Delete User | destructive | `identity.user.delete` 253 connectors |
| `qualtrics.mailing_lists.list` List Mailing Lists | List Mailing Lists | read | `crm.contact_list.list` 34 connectors |
| `qualtrics.contacts.create` Create Directory Contact | Create Directory Contact | write | `crm.contact.create` 161 connectors |
| `qualtrics.tickets.list` Retrieve Tickets for Account | Retrieve Tickets for Account | read | `service.ticket.list` 56 connectors |
| `qualtrics.group_members.list` List Users in Group | List Users in Group | read | `identity.group_member.list` 103 connectors |
| `qualtrics.mailing_lists.create` Create Mailing List | Create Mailing List | write | `crm.contact_list.create` 29 connectors |

Try it

## Prompts to paste into Claude.

Each one names the Qualtrics XM actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   Which Qualtrics XM tickets have been open the longest? Show me the ten oldest with their status.
   calls `qualtrics.tickets.list`
2. Write write
   Create User in Qualtrics XM. Show me exactly what you will send before you save it.
   calls `qualtrics.users.create`

Governance for Qualtrics XM

## Destructive actions wait for a yes.

39 Qualtrics XM actions are destructive. The first 10:

- Delete User `qualtrics.users.delete`
- Delete Group `qualtrics.groups.delete`
- Delete Directory Contact `qualtrics.contacts.delete`
- Delete Mailing List `qualtrics.mailing_lists.delete`
- Remove User From Group `qualtrics.group_members.delete`
- Delete a Ticket `qualtrics.tickets.delete`
- Delete Segment Definition `qualtrics.segments.delete`
- Delete Survey `qualtrics.surveys.delete`
- Delete a Survey Response `qualtrics.survey_responses.delete`
- Delete Sample `qualtrics.samples.delete`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do qualtrics.users.delete confirm_policy: **human**

Delete User?

**intent:** the user asked me to delete User

run suspended · waiting for a named person · key _qualtrics-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "qualtrics-agent",
  allowed_actions: ["qualtrics.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "qualtrics.users.delete", approver: "lead@example.com" },
    { match: "qualtrics.groups.delete", approver: "lead@example.com" },
    { match: "qualtrics.contacts.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to Qualtrics XM only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What Qualtrics XM costs on actionlake.

Every Qualtrics XM action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call Qualtrics XM refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 293 Qualtrics XM actions
- 57 actions page each page of a long list is one call
- 98 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every Qualtrics XM action.

293 actions by area: the id your agent calls, what it does, and its effect.

**Contacts 6**

- `qualtrics.contacts.create` Create Directory Contact write
- `qualtrics.contacts.get` Get Directory Contact read
- `qualtrics.contacts.list` List Directory Contacts read
- `qualtrics.contacts.update` Update Directory Contact write
- `qualtrics.contacts.delete` Delete Directory Contact destructive
- `qualtrics.contacts.search` Search Directory Contacts read

**Distributions 6**

- `qualtrics.distributions.create` Create Distribution write
- `qualtrics.distributions.delete` Delete Distribution destructive
- `qualtrics.distributions.get` Get Distribution read
- `qualtrics.distributions.list` List Distributions read
- `qualtrics.distributions.create_reminder` Create Reminder Distribution write
- `qualtrics.distributions.create_thank_you` Create Thank You Distribution write

**Samples 6**

- `qualtrics.samples.create` Create Sample write
- `qualtrics.samples.get` Get Sample read
- `qualtrics.samples.list` List Samples read
- `qualtrics.samples.update` Update Sample write
- `qualtrics.samples.delete` Delete Sample destructive
- `qualtrics.samples.get_progress` Get Create Sample Progress read

**Contact frequency rules 5**

- `qualtrics.contact_frequency_rules.create` Create Contact Frequency Rule write
- `qualtrics.contact_frequency_rules.get` Get Contact Frequency Rule read
- `qualtrics.contact_frequency_rules.list` List Contact-Frequency Rules read
- `qualtrics.contact_frequency_rules.update` Update Contact Frequency Rule write
- `qualtrics.contact_frequency_rules.delete` Delete Contact Frequency Rule destructive

**Groups 5**

- `qualtrics.groups.create` Create Group write
- `qualtrics.groups.get` Get Group read
- `qualtrics.groups.list` List Groups read
- `qualtrics.groups.update` Update Group write
- `qualtrics.groups.delete` Delete Group destructive

**Imported data project records 5**

- `qualtrics.imported_data_project_records.create` Add single record write
- `qualtrics.imported_data_project_records.delete` Delete a Record from Imported Data Project destructive
- `qualtrics.imported_data_project_records.get` Get a Record from Imported Data Project read
- `qualtrics.imported_data_project_records.update` Update a Record in an Imported Data Project write
- `qualtrics.imported_data_project_records.create_batch` Add Records to Imported Data Project write

**Library messages 5**

- `qualtrics.library_messages.create` Create Library Message write
- `qualtrics.library_messages.get` Get Library Message read
- `qualtrics.library_messages.list` List Library Messages read
- `qualtrics.library_messages.update` Update Library Message write
- `qualtrics.library_messages.delete` Delete Library Message destructive

**Mailing list contacts 5**

- `qualtrics.mailing_list_contacts.create` Create Contact In Mailing List write
- `qualtrics.mailing_list_contacts.get` Get Contact In Mailing List read
- `qualtrics.mailing_list_contacts.list` List Contacts In Mailing List read
- `qualtrics.mailing_list_contacts.update` Update Contact In Mailing List write
- `qualtrics.mailing_list_contacts.delete` Delete Contact In Mailing List destructive

**Mailing lists 5**

- `qualtrics.mailing_lists.create` Create Mailing List write
- `qualtrics.mailing_lists.get` Get Mailing List read
- `qualtrics.mailing_lists.list` List Mailing Lists read
- `qualtrics.mailing_lists.update` Update Mailing List write
- `qualtrics.mailing_lists.delete` Delete Mailing List destructive

**Research core contacts 5**

- `qualtrics.research_core_contacts.create` Create Contact write
- `qualtrics.research_core_contacts.get` Get Contact read
- `qualtrics.research_core_contacts.list` List Contacts read
- `qualtrics.research_core_contacts.update` Update Contact write
- `qualtrics.research_core_contacts.delete` Delete Contact destructive

**Research core mailing lists 5**

- `qualtrics.research_core_mailing_lists.create` Create Mailing List write
- `qualtrics.research_core_mailing_lists.get` Get Mailing List read
- `qualtrics.research_core_mailing_lists.list` List Mailing Lists read
- `qualtrics.research_core_mailing_lists.update` Update Mailing List write
- `qualtrics.research_core_mailing_lists.delete` Delete Mailing List destructive

**Sample definitions 5**

- `qualtrics.sample_definitions.create` Create Sample Definition write
- `qualtrics.sample_definitions.get` Get Sample Definition read
- `qualtrics.sample_definitions.list` List Sample Definitions read
- `qualtrics.sample_definitions.update` Update Sample Definition write
- `qualtrics.sample_definitions.delete` Delete Sample Definition destructive

**Segments 5**

- `qualtrics.segments.create` Create Segment write
- `qualtrics.segments.get` Get Segment Definition read
- `qualtrics.segments.list` List Segments read
- `qualtrics.segments.update` Update Segment Definition write
- `qualtrics.segments.delete` Delete Segment Definition destructive

**Survey definition questions 5**

- `qualtrics.survey_definition_questions.create` Create Question write
- `qualtrics.survey_definition_questions.get` Get Question read
- `qualtrics.survey_definition_questions.list` Get Questions read
- `qualtrics.survey_definition_questions.update` Update Question write
- `qualtrics.survey_definition_questions.delete` Delete Question destructive

**Survey definition quotagroups 5**

- `qualtrics.survey_definition_quotagroups.create` Create Quota Group write
- `qualtrics.survey_definition_quotagroups.get` Get Quota Group for Survey read
- `qualtrics.survey_definition_quotagroups.list` Get Quota Groups for Survey read
- `qualtrics.survey_definition_quotagroups.update` Update Quota Group write
- `qualtrics.survey_definition_quotagroups.delete` Delete Quota Group destructive

**Survey definition quotas 5**

- `qualtrics.survey_definition_quotas.create` Create Quota write
- `qualtrics.survey_definition_quotas.get` Get Quota for Survey read
- `qualtrics.survey_definition_quotas.list` Get Quotas for Survey read
- `qualtrics.survey_definition_quotas.update` Update Quota in the Given Survey write
- `qualtrics.survey_definition_quotas.delete` Delete Quota destructive

**Surveys 5**

- `qualtrics.surveys.delete` Delete Survey destructive
- `qualtrics.surveys.get` Get Survey read
- `qualtrics.surveys.list` List Surveys read
- `qualtrics.surveys.update` Update Survey write
- `qualtrics.surveys.import` Import Survey write

**Tickets 5**

- `qualtrics.tickets.get` Retrieve Ticket read
- `qualtrics.tickets.list` Retrieve Tickets for Account read
- `qualtrics.tickets.search` Search Tickets read
- `qualtrics.tickets.update` Update Ticket write
- `qualtrics.tickets.delete` Delete a Ticket destructive

**Transactions 5**

- `qualtrics.transactions.create` Create Contact Transaction write
- `qualtrics.transactions.delete` Delete Contact Transaction destructive
- `qualtrics.transactions.get` Get Contact Transaction read
- `qualtrics.transactions.update` Update Contact Transaction write
- `qualtrics.transactions.append` Append Contact Transaction write

**Users 5**

- `qualtrics.users.create` Create User write
- `qualtrics.users.get` Get User read
- `qualtrics.users.list` List Users read
- `qualtrics.users.update` Update User write
- `qualtrics.users.delete` Delete User destructive

**Client certificates 4**

- `qualtrics.client_certificates.create` Create Client Certificate write
- `qualtrics.client_certificates.delete` Delete Client Certificate destructive
- `qualtrics.client_certificates.get` Get Client Certificate read
- `qualtrics.client_certificates.list` List Client Certificates read

**Event subscriptions 4**

- `qualtrics.event_subscriptions.create` Create Subscription write
- `qualtrics.event_subscriptions.delete` Delete Subscription destructive
- `qualtrics.event_subscriptions.get` Get Subscription read
- `qualtrics.event_subscriptions.list` List Subscriptions read

**SMS distributions 4**

- `qualtrics.sms_distributions.create` Create New Survey Distribution via SMS write
- `qualtrics.sms_distributions.delete` Delete SMS Distribution destructive
- `qualtrics.sms_distributions.get` Get SMS Distribution read
- `qualtrics.sms_distributions.list` List SMS Distribution read

**Survey definition blocks 4**

- `qualtrics.survey_definition_blocks.create` Create Block write
- `qualtrics.survey_definition_blocks.delete` Delete Block destructive
- `qualtrics.survey_definition_blocks.get` Get Block read
- `qualtrics.survey_definition_blocks.update` Update Block write

**Survey sessions 4**

- `qualtrics.survey_sessions.create` Start a New Session write
- `qualtrics.survey_sessions.delete` Delete Session Without Saving Response destructive
- `qualtrics.survey_sessions.get` Fetch Current Page of Existing Session read
- `qualtrics.survey_sessions.update` Update a Session write

**Survey sessions V2 4**

- `qualtrics.survey_sessions_v2.create` Create a New Survey Session write
- `qualtrics.survey_sessions_v2.delete` Delete a Survey Session Without Saving Responses destructive
- `qualtrics.survey_sessions_v2.get` Resume a Survey Session read
- `qualtrics.survey_sessions_v2.update` Update a Survey Session write

**Transaction batches 4**

- `qualtrics.transaction_batches.create` Create Transaction Batch write
- `qualtrics.transaction_batches.delete` Delete Transaction Batch destructive
- `qualtrics.transaction_batches.get` Get Transaction Batch read
- `qualtrics.transaction_batches.list` List Transaction Batches read

**Whatsapp distributions 4**

- `qualtrics.whatsapp_distributions.create` Create New WhatsApp Survey Distribution write
- `qualtrics.whatsapp_distributions.delete` Delete WhatsApp Distribution destructive
- `qualtrics.whatsapp_distributions.get` Get WhatsApp Distribution read
- `qualtrics.whatsapp_distributions.list` List WhatsApp Distribution read

**Divisions 3**

- `qualtrics.divisions.create` Create Division write
- `qualtrics.divisions.get` Get Division read
- `qualtrics.divisions.update` Update Division write

**Employee directory export participants 3**

- `qualtrics.employee_directory_export_participants.create` Export Participants write
- `qualtrics.employee_directory_export_participants.get` Get Export Participants Status read
- `qualtrics.employee_directory_export_participants.start_all` Export Participants read

Employee directory participants **3** Erasure requests **3** Ex project participants **3** Export contact segment memberships **3** Export contacts **3** Group members **3** Imported data projects **3** Research core contact imports **3** Response imports **3** Survey definition flow **3** Survey definition versions **3** Survey definitions **3** Survey responses **3** Transaction batch transactions **3** Transaction contact imports **3** User API tokens **3** Audit exports **2** Bulk entity imports **2** Customer data requests **2** Employee directory delete participants **2** Employee directory import participants **2** Ex project copy evaluators **2** Ex project copy participants **2** Ex project copy subjects **2** Ex project delete participants **2** Ex project export nominations **2** Ex project export participants **2** Ex project import evaluators **2** Ex project import participants **2** Ex project import subjects **2** Imported data project exports **2** Legacy response exports **2** Oauth tokens **2** Response delete jobs **2** Response exports **2** Response update jobs **2** Responses **2** Segment contacts **2** Segment refresh jobs **2** Survey definition metadata **2** Survey definition options **2** Survey languages **2** Survey translations **2** Ticket exports **2** Ticket statuses **2** Activity log types **1** Activity logs **1** Audit events **1** Conjoint collaborations **1** Contact history **1** Contact transactions **1** Directories **1** Distribution history **1** Distribution links **1** Employee directory delete participants results **1** Employee directory import participants results **1** Ex participant invitations **1** Ex project copy evaluators results **1** Ex project copy participants results **1** Ex project copy subjects results **1** Ex project delete participants results **1** Ex project import evaluators results **1** Ex project import participants results **1** Ex project import subjects results **1** Legacy response imports **1** Libraries **1** Library blocks **1** Library graphics **1** Library questions **1** Library surveys **1** Mailing list bounced contacts **1** Mailing list contact history **1** Mailing list opted out contacts **1** Opted out contacts **1** Organizations **1** Research core sample contacts **1** Research core samples **1** Sample contacts **1** Survey collaborations **1** Survey embedded data fields **1** Survey filters **1** Survey quotas **1** Survey response schema **1** Survey response uploaded files **1** Ticket additional data **1** Ticket events **1** Ticket groups **1** Ticket root causes **1** Ticket teams **1** Transaction enrichments **1** Whoami **1**

This index shows a sample of each area. All 293 actions, with their inputs and prices, are in the [catalogue](https://actionlake.com/console/catalogue), which a free sandbox key can search.

Questions

## The Qualtrics XM MCP server, answered.

**Is there a Qualtrics XM MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 293 Qualtrics XM actions across contacts, distributions, samples and contact frequency rules, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Qualtrics XM.

**What do I need to connect Qualtrics XM?**

Qualtrics API token. Plus your host. The free call account { op: "connections.requirements", service: "qualtrics" } lists exactly what to paste.

**Can an AI agent delete or change things in Qualtrics XM?**

Only if its key allows it, and only with an explicit confirmation. 39 Qualtrics XM actions are destructive, including delete User, delete Group and delete Directory Contact. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my Qualtrics XM API limit?**

actionlake paces every call to the limits in the Qualtrics XM service file: 3,000 calls a minute per connection. Repeated reads are answered from cache (98 Qualtrics XM actions can be), which never reaches Qualtrics XM.

**What does a Qualtrics XM action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (57 Qualtrics XM actions page). Cache hits, searches, dry runs and calls Qualtrics XM refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which Qualtrics XM API does it cover?**

The Qualtrics public API v3 (Stoplight reference, fetched 2026-10-23) at your Qualtrics XM instance's API base URL, which you enter when connecting (path /API/v3). It is built from Qualtrics XM's documentation as read on 23 October 2026. 293 actions in 121 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my Qualtrics XM data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Qualtrics XM credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like Qualtrics XM

Shares the most action names with

- [SurveySparrow 25](https://actionlake.com/connectors/surveysparrow)
- [Cvent 21](https://actionlake.com/connectors/cvent)
- [SurveyMonkey 14](https://actionlake.com/connectors/surveymonkey)
- [Hootsuite 9](https://actionlake.com/connectors/hootsuite)
- [Formstack 9](https://actionlake.com/connectors/formstack)
- [Demandbase 7](https://actionlake.com/connectors/demandbase)

Joins with, on shared entities

- [signNow 5](https://actionlake.com/connectors/signnow)
- [HaloPSA 4](https://actionlake.com/connectors/halopsa)
- [Odoo 4](https://actionlake.com/connectors/odoo)
- [Microsoft Dynamics 365 4](https://actionlake.com/connectors/microsoft-dynamics-365)
- [TOPdesk 4](https://actionlake.com/connectors/topdesk)
- [Freshservice 4](https://actionlake.com/connectors/freshservice)

Browse

- [All Marketing & media connectors](https://actionlake.com/connectors/category/marketing-and-media)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by Qualtrics XM; the name is the vendor's own. Counts are from the Qualtrics XM service file, version 1.0.0.

## Give your agent Qualtrics XM today.

[Connect Qualtrics XM free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/qualtrics-xm
More: https://actionlake.com/llms.txt
