MCP tools for snippet, data status, previews, and built-in guides
Retrieve installation code, inspect tracking freshness, build audience preview URLs, and request text-only implementation guides.
Use these MCP tools to get your installation snippet, check when tracking data last arrived, create audience preview links, or request setup guides. None publishes configuration. A preview link is not a sandbox. Opening it can still run forms, redirects, widgets, and flows.
MCP setup access and examples
Snippet and status tools accept an optional string project_id. Preview requires it. Calls follow the shared MCP authorization and project-selection rules. Invalid IDs, unresolved projects, cross-project access, and unavailable MCP access return errors.
The three guide tools do not take a project ID or resolve project data. They return text instructions for clients that cannot use MCP prompts.
Examples are illustrative and were not executed. Requests are tools/call parameters; responses show decoded content or labeled excerpts.
get-snippet-code
Returns the project's complete tracking snippet for installation on the website.
Arguments: optional project_id string.
Illustrative response excerpt, showing metadata only:
The complete response has three fields: project_id, snippet, and instructions. snippet is the complete script-tag string, including the project ID, loader, cloaking styles, and error timeout. Use the returned string rather than assembling your own loader from this excerpt. The default script host is https://tag.rightmessage.com; the uncloaking timeout is 20,000 milliseconds.
instructions says to install the snippet in the head of every page. It also explains immediate analytics suppression using window.RightMessage.disableAnalytics = true before the snippet or ?__rm_disable_analytics=true in the page URL. Suppression affects reporting and connected analytics providers only. It does not disable form submissions, redirects, widgets, or flow actions.
Analytics suppression is separate from development mode. window.RightMessage.useDraftConfig = true opts into the authenticated draft debugger; it is not a public, analytics-free staging switch. A browser without a debugger token is sent through debugger authorization and may need to sign in. Use disableAnalytics when you only want to suppress tracking without requesting unpublished configuration.
Retrieving code does not install it or prove that it fired. No project identifier returns Unable to determine project identifier for this team. The operation does not edit or publish configuration.
get-data-status
Reports the timestamp of the most recently received tracking data.
Arguments: optional project_id string.
Data older than seven days returns a stale-data message with the timestamp and elapsed days. No recorded timestamp returns:
This is not a live browser inspection. A quiet site, removed snippet, blocked request, or reporting failure can prevent an active result. A reporting failure can return the same no-data message as a site with no tracking data, so that message alone does not establish a broken installation.
The first successful check can record that the project has received data. It does not change the website draft or publish configuration.
get-preview-url
Builds a legacy preview URL with a selected audience and analytics suppression. The link alone does not authorize access to draft configuration. Draft loading requires an authorized dashboard session or debugger token.
| Argument | Type | Required | Default and behavior |
|---|---|---|---|
project_id | string | Yes | Public project ID. |
url | string | Yes | Nonempty page URL to preview. |
segments | array | Yes | Segment IDs or names; [] requests unmatched audience mode. |
email | string | No | Simulated integration email address. |
custom_fields | object | No | Provider field-ID/key to simulated value; open key-value schema. |
tags | array | No | Simulated provider tag IDs. |
lists | array | No | Simulated provider list IDs. |
segments, tags, and lists declare string-or-number items. Segment resolution actually uses nonempty strings; nonstring or unresolved entries can produce warnings. IDs match exactly, names case-insensitively. When multiple selected segments belong to one dimension, the last resolved selection wins. Ambiguous names are not a reliable way to identify a segment; prefer IDs.
For a segment preview, the returned payload contains segments, an object keyed by dimension ID with segment-ID values. When simulated provider data is supplied and an active integration exists, it also contains context, keyed by provider, with email, customFields, tags, and lists as applicable. The tool reads draft configuration first for segment resolution but finds the active integration from saved connection state.
Illustrative response excerpt:
Unmatched responses also include audience_note. They do not contain an encoded audience payload. Use a fresh private browser session when testing an unmatched audience; the link is not a promise to erase an existing browser's identity or segment state. Empty-segment mode rejects supplied visitor context rather than silently creating an identified audience.
For a resolved segment audience, the response contains preview_url, payload, and resolved_segments, an array of human-readable Dimension = Segment descriptions. It adds warnings when needed. The URL encodes the payload using base64, not encryption. Avoid real addresses or private field values in shareable links. Provider context without a connected integration is omitted with a warning.
Missing required inputs, unresolved audience choices, or invalid combinations return errors. The handler only requires a nonempty URL; it does not prove the destination belongs to the project or that the snippet is installed there.
Creating a link has no website effect. Opening it runs the destination page and opts into the draft debugger. The returned rmpreview=1 flag contains no signed debugger credential. A browser without a token is sent through debugger authorization and may need to sign in. A failed draft request can fall back to published configuration, but the browser may still redirect for authorization. Use the dashboard's authorized preview and debugger workflow to verify unpublished changes. This link alone does not prove that the draft loaded.
The runtime also limits the encoded test payload to 10,000 characters and validates dimension/segment ID prefixes and provider context keys. The URL tool does not enforce all those runtime checks. Analytics suppression is not suppression of forms, redirects, or provider-affecting flow actions. Confirm those effects before interacting with the preview.
get-survey-builder-guide
Returns the built-in survey methodology and five-phase workflow as plain text.
Arguments: optional goal string, default build a survey to segment visitors. No project ID.
Illustrative response excerpt:
The text covers context gathering, an interview, strategy approval, resource creation order, and draft handoff. It includes branching, scoring, and outcome guidance. The tool does not run those steps, create a survey, query a provider, or publish anything. There are no configuration validation errors because the request supplies a goal, not a survey definition.
get-smart-cta-builder-guide
Returns instructions for building targeted CTA flows from existing visitor data.
Arguments: optional goal string, default show targeted CTAs based on visitor data. No project ID.
Illustrative response excerpt:
The text discusses audience conditions, offers, widget placement, approval, and keeping implementation in draft. It does not inspect your current integration or create a CTA. Use actual tool schemas for implementation rather than treating every illustrative condition in the guide as executable hosted-MCP syntax.
get-quiz-results-page-guide
Returns a quiz-results-page implementation guide with supplied details substituted into the text.
| Argument | Type | Required | Default |
|---|---|---|---|
quiz_segment_group_id | string | No | Empty; the guide tells the assistant to discover it. |
page_url | string | No | Empty; the guide tells the assistant to ask or propose a destination. |
cta_type | string | No | Empty; suggested values are book_call, free_trial, download, and custom. |
page_builder | string | No | html; suggestions also include wordpress, webflow, and other. |
The suggested values are not enforced enums. No nested schema or project selection is accepted.
Illustrative response excerpt showing the substituted page URL:
The returned text is not a created page, deployable artifact, or verified runtime integration. The tool does not visit the URL, modify a CMS, or execute the guide's code examples. Use the current runtime and tool references before implementation. All three guide tools are instruction retrievals, not approval to perform the described actions.