
Usertour MCP Server: Setup for Claude, Cursor and Other Apps
Lets Claude, Cursor or Codex build, test and publish Usertour onboarding flows, checklists and surveys.
This is the built-in server from Usertour, hosted at the address in the install box. You sign in with your Usertour account when you connect, and self-hosted Usertour users point it at their own address from Settings.
It can publish content to real users and delete data. Check each publish step before you approve it.
Good for
- Product teams who want an assistant to build in-app onboarding
- Developers who wire Usertour into their app with AI help
- Teams that review onboarding results and survey answers in chat
Works in
14 should work
Tap an app to see how to set it up and any known problems.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Install Usertour MCP
Claude Code
- 1
Copy this prompt.
Add the Usertour MCP server to Claude Code. Run this command: claude mcp add --transport http usertour https://mcp.usertour.io/mcp Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Sign-in with the vendor account (OAuth).
Built from the package data we hold. Not yet tested by us.
Tools
Lists flows, checklists, banners and more
Lists content in the project and filters by name, type, published state or date. Deleted content is listed on request.
Try: “Show all published flows.”
Network ·
list_contentReads one piece of content
Returns content by id, with its draft and published versions and a link to review it in the dashboard.
Try: “Open the Create Task flow.”
Network ·
get_contentFinds why content is not showing
Checks a piece of content and reports problems that could keep it from reaching users.
Try: “Why is my welcome flow not showing?”
Network ·
diagnose_contentLists custom user and company fields
Lists the attributes defined for users, companies, memberships and events, with filters by name and scope.
Try: “What user attributes do we track?”
Network ·
list_attribute_definitionsReads one attribute definition
Returns one attribute definition by id.
Try: “Show the plan attribute.”
Network ·
get_attribute_definitionLists tracked events
Lists the event catalog and filters by name.
Try: “Which events do we track?”
Network ·
list_event_definitionsReads one event definition
Returns one event with its attached attributes.
Try: “Show the project_created event.”
Network ·
get_event_definitionLists your tracked end users
Lists the end users in an environment, with filters by email, company, segment or date.
Try: “Find users from company Acme.”
Network ·
list_usersReads one end user
Returns a user by their external id, including companies and roles.
Try: “Show the user with id 123.”
Network ·
get_userFinds why a user sees or misses content
Checks a user and explains what content they qualify for and why.
Try: “Why did user 123 not see the tour?”
Network ·
diagnose_userLists your style themes
Lists the project's themes with whether each is the default and how many variations it has.
Try: “What themes do we have?”
Network ·
list_themesReads one theme
Returns a theme and optionally its stored or resolved style settings.
Try: “Show the colors of the default theme.”
Network ·
get_themeShows what still uses an item
Lists everything that uses an attribute, event, segment, theme or content. Run it before deleting.
Try: “What uses the plan attribute?”
Network ·
list_referencesLists the versions of a content
Lists a content's versions in order. It does not mark which one is live.
Try: “Show the versions of the welcome flow.”
Network ·
list_content_versionsShows who published what and when
Returns the permanent publish and unpublish record for a content, with person, version and environment.
Try: “Who published the checklist last?”
Network ·
list_publish_historyReads one version of a content
Returns a version by id, and can include its steps, data, questions and translations.
Try: “Show the steps of version 3.”
Network ·
get_content_versionChecks a draft before publishing
Runs the same checks as publishing without changing anything and lists errors and warnings.
Try: “Is this draft ready to publish?”
Network ·
validate_content_versionLists tracked companies
Lists companies in an environment, filtered by segment or date.
Try: “List companies created this month.”
Network ·
list_companiesReads one company
Returns a company by external id, with users and memberships on request.
Try: “Show company Acme.”
Network ·
get_companyLists audience segments
Lists the project's user and company segments.
Try: “What segments exist?”
Network ·
list_segmentsReads one segment
Returns a segment with its conditions, and optionally how many members it has.
Try: “How many users are in the Trial segment?”
Network ·
get_segmentLists content sessions
Lists sessions of content shown to users, filtered by content, user, completion or date.
Try: “Show sessions of the welcome flow.”
Network ·
list_sessionsReads one session
Returns a session, and can include its content, user, company, version and answers.
Try: “Show the answers in session abc.”
Network ·
get_sessionShows how content performs
Returns starts, completions and per-step results for a content. The shape depends on the content type.
Try: “How is the onboarding flow performing?”
Network ·
get_content_analyticsShows survey results
Returns the answers to each survey question, including NPS and ratings.
Try: “What is the NPS from our survey?”
Network ·
get_content_question_analyticsRanks which content is used most
Shows all content in one table ranked by unique users.
Try: “Which content is used most?”
Network ·
get_usage_overviewLists languages
Lists the project's languages and which one is the source.
Try: “Which languages do we support?”
Network ·
list_localizationsReads a translation of a version
Returns the text units of one language of a content version, with source and current translation.
Try: “Show the French translation of the flow.”
Network ·
get_version_localizationReads one environment
Returns one environment by id.
Try: “Show the production environment.”
Network ·
get_environmentCreates new content
Creates a flow, checklist, launcher, banner, tracker, resource center or announcement with a draft version.
Try: “Create a flow for the Create Task feature.”
Write ·
create_contentRenames content
Changes a content's name or build URL.
Try: “Rename the flow to Welcome tour.”
Write ·
update_contentDeletes content (recoverable)
Soft-deletes a content. It refuses while the content is published anywhere, so unpublish first. restore_content brings it back as an unpublished draft.
Try: “Delete the old banner.”
Delete ·
delete_contentBrings back deleted content
Restores soft-deleted content as an unpublished draft.
Try: “Restore the banner I deleted.”
Write ·
restore_contentWrites steps and rules to a draft
Replaces the full step list and start or hide rules of a draft version. Steps left out are deleted.
Try: “Add three tooltip steps to the draft.”
Delete ·
update_content_versionStarts an editable draft
Returns the current draft or forks a new one when the current version has been live.
Try: “Start a new draft of the welcome flow.”
Write ·
create_content_versionForks an old version into a draft
Copies an earlier version forward as a new draft. It does not change what users see.
Try: “Restore version 2 as a draft.”
Write ·
restore_content_versionWrites translations
Saves translations for one language of a version and can switch its delivery on or off.
Try: “Translate this flow into Spanish.”
Write ·
update_version_localizationCopies content
Copies a content's current draft into a new unpublished content.
Try: “Duplicate the welcome flow.”
Write ·
duplicate_contentMakes a version live
Publishes a version in an environment so real users see it. You must name the environment when you have several.
Try: “Publish version 3 to production.”
Write ·
publish_contentTakes content off live
Clears an environment's live version. The version stays and can be republished.
Try: “Unpublish the banner in production.”
Write ·
unpublish_contentCreates or updates a user
Creates or updates an end user by external id and merges attributes.
Try: “Set plan to pro for user 123.”
Write ·
upsert_userDeletes a user
Permanently deletes an end user by external id, with their sessions, events, answers, company memberships and segment membership. The source has no restore tool for it.
Try: “Delete user 123.”
Delete ·
delete_userCreates or updates a company
Creates or updates a company by external id and merges attributes.
Try: “Set the size of Acme to 50.”
Write ·
upsert_companyDeletes a company
Permanently deletes a company by external id, with its user memberships and segment membership. The source has no restore tool for it.
Try: “Delete company Acme.”
Delete ·
delete_companyAdds a user to a company
Adds a user as a member of a company with a role.
Try: “Add user 123 to Acme as admin.”
Write ·
add_company_memberRemoves a user from a company
Removes a user from a company. The membership and its attributes, such as a role, are deleted for good.
Try: “Remove user 123 from Acme.”
Delete ·
remove_company_memberCreates a segment
Creates a manual segment with a member list or a condition segment with rules.
Try: “Create a segment of trial users.”
Write ·
create_segmentEdits a segment
Changes a segment's name or rules.
Try: “Rename the Trial segment.”
Write ·
update_segmentDeletes a segment
Deletes a segment. It is refused while something still uses it.
Try: “Delete the old segment.”
Delete ·
delete_segmentBrings back a segment
Restores a deleted segment.
Try: “Restore the Trial segment.”
Write ·
restore_segmentAdds a member to a segment
Adds users or companies to a manual segment.
Try: “Add user 123 to the beta segment.”
Write ·
add_segment_memberRemoves a member from a segment
Removes users or companies from a manual segment.
Try: “Remove user 123 from the beta segment.”
Write ·
remove_segment_memberCreates a theme
Creates a theme from a neutral default with the colors, fonts and sizes you set.
Try: “Create a dark theme.”
Write ·
create_themeEdits a theme
Changes a theme's settings. Content using it changes appearance.
Try: “Change the primary color to blue.”
Write ·
update_themeCopies a theme
Copies a theme with all settings and variations into a new theme.
Try: “Duplicate the default theme.”
Write ·
duplicate_themeDeletes a theme
Deletes a theme. It is refused while content uses it.
Try: “Delete the unused theme.”
Delete ·
delete_themeBrings back a theme
Restores a deleted theme.
Try: “Restore the dark theme.”
Write ·
restore_themeAdds a language
Adds a language that content can be translated into.
Try: “Add French.”
Write ·
create_localizationEdits a language
Renames a language or changes its tag or code. Changing the code takes effect on live content at once: users whose locale does not match the new code see the source language.
Try: “Rename the French entry.”
Write ·
update_localizationRemoves a language
Soft-deletes a language: it stops being delivered at once and users of that language see the source language. The translations are kept and restore_localization brings them back. The default language cannot be deleted.
Try: “Remove Spanish.”
Delete ·
delete_localizationBrings back a language
Restores a deleted language.
Try: “Restore Spanish.”
Write ·
restore_localizationDefines a custom attribute
Defines a new attribute on users, companies, memberships or events.
Try: “Add an attribute called plan.”
Write ·
create_attribute_definitionEdits an attribute definition
Changes an attribute definition. Name and scope cannot change.
Try: “Change plan to a list type.”
Write ·
update_attribute_definitionDeletes an attribute definition
Deletes an attribute. It is refused while something uses it.
Try: “Delete the old attribute.”
Delete ·
delete_attribute_definitionBrings back an attribute
Restores a deleted attribute definition.
Try: “Restore the plan attribute.”
Write ·
restore_attribute_definitionDefines a custom event
Defines a new tracked event.
Try: “Add an event called project_created.”
Write ·
create_event_definitionEdits an event definition
Changes an event's display name or description, and can attach attributes to it. The code name is fixed.
Try: “Attach plan to project_created.”
Write ·
update_event_definitionDeletes an event definition
Deletes an event. It is refused while something uses it.
Try: “Delete the old event.”
Delete ·
delete_event_definitionBrings back an event
Restores a deleted event definition.
Try: “Restore project_created.”
Write ·
restore_event_definitionEnds a running session
Ends an in-progress session. Ending an ended one changes nothing.
Try: “End session abc.”
Write ·
end_sessionDeletes a session
Permanently deletes a session, so a single-session item such as a banner can be tested again. Its answers disappear from survey analytics and there is no restore.
Try: “Delete my banner session so I can retest.”
Delete ·
delete_sessionCreates an environment
Creates an environment in the project. The first one becomes primary.
Try: “Create a staging environment.”
Write ·
create_environmentEdits an environment
Renames an environment.
Try: “Rename staging.”
Write ·
update_environmentDeletes an environment
Deletes an environment. The primary or last environment cannot be deleted.
Try: “Delete the test environment.”
Delete ·
delete_environmentLists webhooks
Lists outbound webhooks for an environment. Signing secrets are not shown.
Try: “Which webhooks are set up?”
Network ·
list_webhooksCreates a webhook
Creates an outbound webhook that posts matching events to your URL. The signing secret is shown once. Cloud needs a paid plan.
Try: “Send completed events to https://example.com/hook.”
Write ·
create_webhookEdits a webhook
Changes a webhook's URL, topics, on/off state or description.
Try: “Disable the webhook.”
Write ·
update_webhookDeletes a webhook
Deletes a webhook and its delivery log.
Try: “Delete the old webhook.”
Delete ·
delete_webhookUsed by the assistant behind the scenes
Reads Usertour's rules for building content
Returns the authoring guide: the create, update, validate and publish steps and what each content type needs. The assistant reads it before building.
Try: “How do I author a flow in Usertour?”
Network ·
get_authoring_guideShows the shape of content you can write
Returns the JSON Schema for the steps or data of a content type, so the assistant writes valid content.
Try: “What fields does a checklist accept?”
Network ·
get_content_schemaShows which theme settings you can change
Returns the writable theme settings with their ranges, so edits are valid.
Try: “What can I set on a theme?”
Network ·
get_theme_schemaLists your environments
Lists the environments and whether your credential can act on each.
Try: “Which environments can I publish to?”
Network ·
list_environments
Read from the source code
Permissions
high risk · 3 things to watch
High risk
It can change and delete your onboarding content and end-user records, and publish to live users. Use a token limited to a test environment until you trust the output.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It can publish content to real users
publish_content makes a version live in an environment. Ask the assistant to validate first, and name the environment yourself. github.com
It can delete users, companies and content
delete_user and delete_company are permanent: the source deletes the rows, and a user's sessions, events and answers go with them. Content, segments, themes, attributes, events and languages are soft-deleted and have restore tools. Sessions, webhooks (with their delivery log) and company memberships are deleted for good, and the source describes no restore for environments. github.com
Editing steps replaces the whole step list
update_content_version treats the steps as complete, so any step left out is deleted. Review the draft before publishing. github.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Turning on read-only | No read-only mode is documented. Your token scope can limit which environments it may act on. |
|---|---|
| Talks to | mcp.usertour.io (or your self-hosted Usertour) |
| Sign-in and keys | OAuth sign-in handled by the client. |
| Scopes |
|
Questions
Is the Usertour MCP server official?
Yes. It is built into Usertour and ships in the Usertour project's own repository.
What is the Usertour MCP server URL?
The hosted address is https://mcp.usertour.io/mcp. For a self-hosted Usertour, use the URL shown in Settings, then MCP.
How do I sign in?
The client opens a sign-in with your Usertour account. No API key is needed.
Can it publish to production by itself?
It can if your token allows that environment. Limit the token to a test environment and name the environment when you ask.
Can it delete data?
Yes. Content, segments, themes, attributes, events and languages are soft-deleted and can be restored. Users, companies, sessions and webhooks are deleted for good (environments have no restore tool), and a deleted user takes their sessions, events and answers with them.
Does it work in Claude Code?
Yes. Usertour also publishes a Claude Code plugin that adds the connection and its authoring skills; see the vendor docs for the steps.
Does this list show every tool?
It lists every tool registered in the v0.9.7 source. Newer releases may add more.
Information
updated Nov 2, 2026
- Publisher
- Official
- Endpoint
https://mcp.usertour.io/mcp- Transport
- Streamable HTTP
- Auth
- OAuth
- Version
- 0.9.7
- Last commit
- Oct 30, 2026
- Open issues
- 34
- Listed in
- Official MCP registry
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 3Hide
- Usertour MCP read tools · github.com
- Usertour MCP write tools · github.com
- Usertour README: MCP server · github.com