naftiko: 1.0.0-alpha2 info: label: Sitecore Customer Data and Personalization description: Unified capability combining Sitecore CDP guest data management with Sitecore Personalize decisioning and experimentation. Enables marketing technologists and developers to manage customer profiles, build audience segments, configure personalization flows, and orchestrate decision models from a single interface. tags: - Sitecore - Customer Data Platform - Personalization - Guest Data - Decisioning - Experiments created: '2026-05-02' modified: '2026-05-06' binds: - namespace: env keys: CDP_CLIENT_KEY: CDP_CLIENT_KEY CDP_API_TOKEN: CDP_API_TOKEN PERSONALIZE_API_KEY: PERSONALIZE_API_KEY capability: consumes: - type: http namespace: cdp-rest baseUri: https://api-engage-us.sitecorecloud.io description: Sitecore CDP REST API for guest and order data management authentication: type: basic username: '{{CDP_CLIENT_KEY}}' password: '{{CDP_API_TOKEN}}' resources: - name: guests path: /v2.1/guests description: Manage guest profiles in Sitecore CDP operations: - name: list-guests method: GET description: List guest profiles with optional email filter inputParameters: - name: email in: query type: string required: false description: Filter by email address - name: limit in: query type: integer required: false description: Max results (max 100) - name: offset in: query type: integer required: false description: Pagination offset outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-guest method: POST description: Create a new guest profile outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: email: '{{tools.email}}' firstName: '{{tools.firstName}}' lastName: '{{tools.lastName}}' - name: guest path: /v2.1/guests/{guestRef} description: Manage a specific guest profile operations: - name: get-guest method: GET description: Get a guest profile by reference inputParameters: - name: guestRef in: path type: string required: true description: The guest reference identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: update-guest method: PUT description: Update a guest profile inputParameters: - name: guestRef in: path type: string required: true description: The guest reference identifier outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: email: '{{tools.email}}' firstName: '{{tools.firstName}}' - name: delete-guest method: DELETE description: Delete a guest profile inputParameters: - name: guestRef in: path type: string required: true description: The guest reference identifier - name: guest-orders path: /v2.1/guests/{guestRef}/orders description: Manage orders for a guest operations: - name: list-guest-orders method: GET description: List orders for a specific guest inputParameters: - name: guestRef in: path type: string required: true description: The guest reference identifier outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-guest-order method: POST description: Create an order for a guest inputParameters: - name: guestRef in: path type: string required: true description: The guest reference identifier outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: referenceId: '{{tools.referenceId}}' status: '{{tools.status}}' currencyCode: '{{tools.currencyCode}}' - type: http namespace: personalize-rest baseUri: https://api.boxever.com description: Sitecore Personalize REST API for decisioning and experiment management authentication: type: apikey key: api_key value: '{{PERSONALIZE_API_KEY}}' placement: query resources: - name: connections path: /v1/connections description: Manage connections to external systems operations: - name: list-connections method: GET description: List all configured connections inputParameters: - name: pageSize in: query type: integer required: false description: Results per page - name: pageOffset in: query type: integer required: false description: Page offset outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-connection method: POST description: Create a new external system connection outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' type: '{{tools.type}}' - name: flow-definitions path: /v1/flowDefinitions description: Manage personalization flow definitions operations: - name: list-flow-definitions method: GET description: List all flow definitions inputParameters: - name: pageSize in: query type: integer required: false description: Results per page outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-flow-definition method: POST description: Create a new flow definition outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' type: '{{tools.type}}' - name: decision-models path: /v1/decisionModels description: Manage decision models for targeting operations: - name: list-decision-models method: GET description: List all decision models outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-decision-model method: POST description: Create a new decision model outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: name: '{{tools.name}}' exposes: - type: rest port: 8081 namespace: customer-data-personalization-api description: Unified REST API for Sitecore CDP and Personalize. resources: - path: /v1/guests name: guests description: Manage CDP guest profiles operations: - method: GET name: list-guests description: List guest profiles in Sitecore CDP call: cdp-rest.list-guests outputParameters: - type: object mapping: $. - method: POST name: create-guest description: Create a new guest profile in CDP call: cdp-rest.create-guest outputParameters: - type: object mapping: $. - path: /v1/guests/{ref} name: guest description: Manage a specific guest profile operations: - method: GET name: get-guest description: Get a guest profile by reference call: cdp-rest.get-guest with: guestRef: rest.ref outputParameters: - type: object mapping: $. - method: PUT name: update-guest description: Update a guest profile call: cdp-rest.update-guest with: guestRef: rest.ref outputParameters: - type: object mapping: $. - path: /v1/guests/{ref}/orders name: guest-orders description: Manage orders for a guest profile operations: - method: GET name: list-guest-orders description: List orders for a specific guest call: cdp-rest.list-guest-orders with: guestRef: rest.ref outputParameters: - type: object mapping: $. - path: /v1/connections name: connections description: Manage Personalize external connections operations: - method: GET name: list-connections description: List Personalize connections call: personalize-rest.list-connections outputParameters: - type: object mapping: $. - path: /v1/flows name: flows description: Manage Personalize flow definitions operations: - method: GET name: list-flows description: List personalization flow definitions call: personalize-rest.list-flow-definitions outputParameters: - type: object mapping: $. - path: /v1/decision-models name: decision-models description: Manage Personalize decision models operations: - method: GET name: list-decision-models description: List decision models call: personalize-rest.list-decision-models outputParameters: - type: object mapping: $. - type: mcp port: 9091 namespace: customer-data-personalization-mcp transport: http description: MCP server for AI-assisted Sitecore CDP and Personalize management. tools: - name: cdp-list-guests description: List guest profiles in Sitecore CDP hints: readOnly: true idempotent: true call: cdp-rest.list-guests outputParameters: - type: object mapping: $. - name: cdp-get-guest description: Get a specific guest profile by reference hints: readOnly: true idempotent: true call: cdp-rest.get-guest with: guestRef: tools.guestRef outputParameters: - type: object mapping: $. - name: cdp-create-guest description: Create a new guest profile in Sitecore CDP call: cdp-rest.create-guest outputParameters: - type: object mapping: $. - name: cdp-update-guest description: Update an existing guest profile in Sitecore CDP call: cdp-rest.update-guest with: guestRef: tools.guestRef outputParameters: - type: object mapping: $. - name: cdp-list-guest-orders description: List orders for a specific guest in Sitecore CDP hints: readOnly: true idempotent: true call: cdp-rest.list-guest-orders with: guestRef: tools.guestRef outputParameters: - type: object mapping: $. - name: personalize-list-connections description: List personalization connections to external systems hints: readOnly: true idempotent: true call: personalize-rest.list-connections outputParameters: - type: object mapping: $. - name: personalize-list-flows description: List Sitecore Personalize flow definitions (experiments and experiences) hints: readOnly: true idempotent: true call: personalize-rest.list-flow-definitions outputParameters: - type: object mapping: $. - name: personalize-list-decision-models description: List Sitecore Personalize decision models hints: readOnly: true idempotent: true call: personalize-rest.list-decision-models outputParameters: - type: object mapping: $. - name: personalize-create-connection description: Create a new external system connection in Sitecore Personalize call: personalize-rest.create-connection outputParameters: - type: object mapping: $.