Skip to main content
Glama
keerthika-srinivasan

sitecore-personalize-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SITECORE_PERSONALIZE_API_URLYesPersonalize/CDP admin API base URL for your tenant/region
SITECORE_PERSONALIZE_AUTH_URLYesIdentity token endpoint
SITECORE_PERSONALIZE_CLIENT_IDYesOAuth2 client ID from Sitecore Cloud Portal
SITECORE_PERSONALIZE_CLIENT_SECRETYesOAuth2 client secret
SITECORE_PERSONALIZE_DECISIONING_API_URLNo(optional) Interactive decisioning/edge API base, if it differs from the admin API

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
sitecore_personalize_flow_listA

Lists flow definitions (experiments and experiences) configured in Sitecore Personalize. Filter by subtype ('EXPERIMENT' or 'EXPERIENCE') to distinguish A/B tests from experiences. Supports offset/limit pagination.

sitecore_personalize_flow_getA

Retrieves the full definition of a single flow (experiment or experience) by its ref.

sitecore_personalize_flow_set_statusA

Changes a flow definition's status (e.g. to 'PRODUCTION' or 'LIVE' to publish, 'PAUSED' to pause). Sitecore has no dedicated publish endpoint — this reads the current flow definition and writes it back with the new status, since updates are a full replace. This is a write operation with production impact.

sitecore_personalize_flow_executeA

Triggers real-time decisioning execution of a published flow, identified by friendlyId, for a guest identified by exactly one of browserId, email, or identifiers — returning the flow's decision output. Equivalent to the Personalize interactive callFlows API.

sitecore_personalize_experience_listA

Lists experiences (flow definitions with subtype EXPERIENCE) configured in Sitecore Personalize. Equivalent to sitecore_personalize_flow_list with subtype='EXPERIENCE' pre-applied. Supports offset/limit pagination.

sitecore_personalize_experience_getA

Retrieves a single experience (flow definition with subtype EXPERIENCE) by its ref. Equivalent to sitecore_personalize_flow_get — provided as a named convenience for experience-specific workflows.

sitecore_personalize_audience_listA

Lists audiences (segments) configured in Sitecore Personalize/CDP. Supports pagination.

sitecore_personalize_audience_getA

Retrieves the definition and membership rules of a single audience/segment by ID.

sitecore_personalize_audience_createA

Creates a new audience/segment from a set of attribute rules. This is a write operation that adds a new segment to the tenant.

sitecore_personalize_guest_getA

Retrieves a single guest (visitor/contact) profile from Sitecore CDP by guest reference.

sitecore_personalize_guest_upsertA

Creates a new guest profile (POST), or updates an existing one (PUT) when guestRef is provided. Covers the base guest object fields (name, contact info, address, etc.) — for arbitrary custom key/value attributes, use sitecore_personalize_guest_set_data_extension instead, which is a separate Sitecore mechanism.

sitecore_personalize_guest_deleteA

Permanently deletes a guest profile and its associated data from Sitecore CDP. This is a destructive, irreversible operation — typically used for privacy/right-to-be-forgotten requests. NOTE: this endpoint is unverified against Sitecore's docs — confirm with curl/Postman before relying on it.

sitecore_personalize_guest_searchB

Searches for guest profiles by email. Supports pagination. NOTE: this endpoint is unverified against Sitecore's docs — confirm with curl/Postman before relying on it.

sitecore_personalize_guest_set_data_extensionB

Sets arbitrary custom key/value attributes on a guest via Sitecore's Guest data extension mechanism (one of 6 fixed groups: ext, ext1-ext5). This call REPLACES the entire named group — any existing key not included gets deleted. NOTE: the exact URL path shape for this endpoint is unverified against Sitecore's docs (they render inconsistently across doc pages) — confirm with curl/Postman against your tenant before relying on it in production.

sitecore_personalize_event_sendA

Ingests a behavioral event (e.g. PRODUCT_VIEW, ADD_TO_CART, ORDER) into Sitecore CDP for a guest, feeding real-time and batch decisioning. This is a write operation.

sitecore_personalize_dataset_listB

Lists datasets (e.g. product catalogs, custom reference data) available in the tenant.

sitecore_personalize_dataset_getA

Retrieves metadata and schema information for a single dataset by ID.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 17 tools

Disambiguation3/5

The core resources (flow, audience, guest, dataset, event) are clearly separated, but flow and experience overlap heavily: experience_list/get are documented as exact equivalents of flow_list/get with a subtype pre-applied. This duplication is explained, but an agent could reasonably select either path for the same operation.

Naming Consistency5/5

All tools follow a consistent sitecore_personalize_<resource>_<action> snake_case convention, such as flow_list, audience_get, guest_upsert, and event_send. The action verbs are predictable and there are no mixed casing or naming styles.

Tool Count4/5

17 tools is at the upper edge but reasonable for a server spanning flows, experiences, audiences, guests, datasets, and events. The experience_list/get convenience duplicates add slight bloat, but most tools map to a distinct domain operation.

Completeness3/5

The guest lifecycle is well covered with get, upsert, delete, search, and data extension handling, and flows support listing, retrieving, status changes, and execution. However, audiences have create and read but no update/delete, flows cannot be created or updated beyond status, and datasets are read-only, leaving notable lifecycle gaps.

Maintenance

ActivitySlowing
ResponsivenessNo issues