Skip to main content
Glama
keerthika-srinivasan

sitecore-personalize-mcp

Execute Personalize Flow (callFlows)

sitecore_personalize_flow_execute

Execute a published Personalize flow for a guest using browser ID, email, or custom identifiers, and retrieve real-time decision output to drive personalization.

Instructions

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.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
emailNoThe guest's email. Use exactly one of browserId, email, or identifiers.
paramsNoOptional custom fields passed into the flow's decisioning context.
browserIdNoThe guest's browser ID. Recommended identifier for flow execution — required for goal attribution to work correctly. Use exactly one of browserId, email, or identifiers.
friendlyIdYesThe friendly ID of the published flow to execute (set on the flow definition).
identifiersNoCustom guest identifiers object. Use exactly one of browserId, email, or identifiers.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate the operation is not read-only and not idempotent, and the description reinforces this by saying it 'triggers' execution. However, it does not disclose potential side effects, such as whether executing a flow writes events or updates guest state, which would be valuable for an execution tool beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, tightly constructed sentence that front-loads the primary action and resource. It includes the key identifier, the guest constraint, and the return value, with no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the core input (friendlyId), the guest identification rule, the execution nature, and the expected output ('flow's decision output'). Since there is no output schema, this is a reasonable level of completeness, though it could mention what happens if no guest identifier is supplied.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents all parameters. The description repeats the 'exactly one of browserId, email, or identifiers' constraint and references friendlyId, but adds no new parameter-level guidance beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Triggers real-time decisioning execution'), a resource ('published flow'), and the required identifier ('friendlyId'). It also names the guest-identification constraint and the return value, making it sharply distinct from sibling tools like flow_list, flow_get, and flow_set_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly establishes this tool is for executing flows, not listing, retrieving, or changing status. It gives the execution context ('real-time decisioning') and the interactive API equivalent, but it does not explicitly state when to use it over alternatives or provide exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.