# CustomerioTrackApi
import StarterToolInfo from "@/app/_components/starter-tool-info";
import ToolInfo from "@/app/_components/tool-info";
import Badges from "@/app/_components/badges";
import TabbedCodeBlock from "@/app/_components/tabbed-code-block";
import TableOfContents from "@/app/_components/table-of-contents";
import ToolFooter from "@/app/_components/tool-footer";
import { Callout } from "nextra/components";
The CustomerioTrackApi MCP Server offers a comprehensive suite of tools for managing customer data and interactions within Customer.io.
## Available Tools
If you need to perform an action that's not listed here, you can [get in touch
with us](mailto:contact@arcade.dev) to request a new tool, or [create your own
tools](/guides/create-tools/tool-basics/build-mcp-server).
## CustomerioTrackApi.GetTrackApiRegion
Retrieve the region and URL for Track API credentials.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.UpdateOrAddPerson
Add or update a person's information in the database.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **person_identifier** (`string`, optional) The unique value used to identify a person, such as an ID, email, or `cio_id` (with `cio_` prefix for updates). Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.DeleteCustomer
Delete a customer and all associated information.
**Parameters**
- **customer_identifier** (`string`, required) The unique identifier for a person, which can be an ID, email, or 'cio*id'. Use 'cio*' prefix for 'cio_id'.
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.AddDeviceToCustomerProfile
Add or update a device for a customer profile.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **unique_person_identifier** (`string`, optional) A unique identifier for a person, such as `id`, `email`, or `cio_id` prefixed with `cio_`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.RemoveCustomerDevice
Remove a device from a customer's profile.
**Parameters**
- **customer_identifier** (`string`, required) Unique identifier for a person in the system. Can be `id`, `email`, or `cio_id` (prefixed with `cio_`).
- **device_unique_id** (`string`, required) The ID representing the device to be removed from the customer's profile.
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.SuppressCustomerProfile
Permanently delete and suppress a customer profile.
**Parameters**
- **unique_person_identifier** (`string`, required) The unique identifier for a customer, which can be an ID, email, or 'cio*id' (prefixed with 'cio*').
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.UnsuppressCustomerProfile
Unsuppress a customer profile in Customer.io.
**Parameters**
- **customer_identifier** (`string`, required) The unique identifier for a customer, which can be an ID, email, or prefixed cio_id, based on workspace settings.
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.GlobalUnsubscribeUser
Set a user's global unsubscribe status in Customer.io.
**Parameters**
- **delivery_id_for_unsubscription** (`string`, required) The unique identifier of the delivery associated with the unsubscription request. This links the unsubscribe action to a specific email or message delivery.
- **set_unsubscribed_attribute** (`boolean`, optional) If true, sets a person's `unsubscribed` attribute to true, associated with a specific delivery.
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.SendCustomerEvent
Send an event associated with a customer by identifier.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **customer_identifier** (`string`, optional) A unique identifier for a person, such as `id`, `email`, or `cio_id`, depending on workspace settings. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.TrackAnonymousEvent
Log anonymous events for unidentified users.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.SubmitFormResponse
Submit and record form responses with Customer.io.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **form_identifier** (`string`, optional) The unique identifier for the form. If unrecognized, a new form connection is created. Choose a meaningful or traceable value. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.MergeCustomerProfiles
Merge two customer profiles into one primary profile.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.ReportCustomMetrics
Report metrics from non-native Customer.io channels.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.AddPeopleToSegment
Add people to a manual segment by ID.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **segment_identifier** (`integer`, optional) The unique identifier for a manual segment. This can be found on its page in the dashboard or via the App API. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **identifier_type** (`string`, optional) Specifies the type of identifiers in the `ids` array, such as `id`, `email`, or `cio_id`. Defaults to `id`. Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.RemoveUserFromSegment
Remove users from a manual segment by ID.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **segment_identifier** (`integer`, optional) The unique identifier for the segment. Found on the segment's page in the dashboard under 'Usage'. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **identification_type** (`string`, optional) The type of identifiers used for the users to be removed. Options are 'id', 'email', or 'cio_id'. Defaults to 'id' if not specified. Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.ManageEntity
Create, update, or delete entities and manage relationships.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## CustomerioTrackApi.BatchProcessRequests
Batch process requests for people and object entities.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `CUSTOMERIO_SITE_ID`, `CUSTOMERIO_API_KEY` (learn how to [configure secrets](/guides/create-tools/tool-basics/create-tool-secrets))
## Reference
Below is a reference of enumerations used by some of the tools in the CustomerioTrackApi MCP Server:
### ToolMode
- **GET_REQUEST_SCHEMA**: `get_request_schema`
- **EXECUTE**: `execute`