---
schema_version: "1"
id: 87959ea4479bbe4f4e4daa76f7dfabb9cb0ee8589372a8b3d0bd5df4e22adaf3
title: Query Your Marketing Cloud Intelligence Data with the MCP Server
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/mktg/264-0-0/dato_query_data_with_mcp_server.md
canonical_url: https://help.salesforce.com/s/articleView?id=mktg.dato_query_data_with_mcp_server.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 6c8e82d2c83c70d1703c011142913a9a042357ed3cc741318e7dcc4021d9534f
description: Use Marketing Cloud Intelligence (MCI) Model Context Protocol (MCP) server to query marketing data, monitor data pipelines, and diagnose issues from a compatible AI client.
products:
  - Marketing
  - Marketing Cloud Intelligence
release: "264"
---
# Query Your Marketing Cloud Intelligence Data with the MCP Server

Use Marketing Cloud Intelligence (MCI) Model Context Protocol (MCP) server to query marketing data, monitor data pipelines, and diagnose issues from a compatible AI client.

The MCI MCP server enables you to use conversational AI to explore marketing data, monitor pipeline health, and diagnose issues. Ask questions in plain language instead of building dashboards, creating reports, or navigating multiple pages.

With the MCI MCP server, you can:

- Query campaign data, such as the top campaigns by return on ad spend (ROAS).
- Identify failing data streams and understand why they failed.
- Translate technical errors and error codes into explanations and recommended fixes.
- Compare month-over-month or week-over-week performance.
- Rerun multiple data streams at once.
- Find available measurements and dimensions without memorizing field names.

## How the Marketing Cloud Intelligence MCP Server Works

The MCP server connects your MCI account to a compatible AI client, such as Claude Code or Cursor. When you ask a question, the client sends the request to the server. The server accesses only the data allowed by your configured permissions and returns the results in a readable format.

## Available MCP Tools

MCI MCP Tools   
| Category | Tool | Description |
| --- | --- | --- |
| Identity and Workspaces | `mci_whoami` | Get the current user identity and permissions. |
| Identity and Workspaces | `mci_list_workspaces` | List all accessible MCI workspaces. |
| Identity and Workspaces | `mci_get_workspace` | Get detailed workspace information. |
| Connectors and Authentication | `mci_list_connectors` | List all available connector types. |
| Connectors and Authentication | `mci_get_connector_config` | Get the connector configuration schema. |
| Connectors and Authentication | `mci_list_authentications` | List all authentication credentials. |
| Connectors and Authentication | `mci_get_authentication` | Get specific authentication details. |
| Data Streams | `mci_list_datastreams` | List all data streams. |
| Data Streams | `mci_create_datastream` | Create a data stream. |
| Data Streams | `mci_update_datastream` | Update a data stream configuration. |
| Data Streams | `mci_process_datastream` | Process a data stream. |
| Data Streams | `mci_process_datastreams_bulk` | Process multiple data streams in bulk. |
| Data Streams | `mci_get_datastream_status` | Get the processing status of a data stream. |
| Data Streams | `mci_get_process_log` | Get processing logs for a data stream. |
| Data Streams | `mci_upload_data` | Upload data to a TotalConnect stream. |
| Profiles and Templates | `mci_get_profiles` | List all data profiles. |
| Profiles and Templates | `mci_get_sub_profiles` | Get subprofiles for a profile. |
| Profiles and Templates | `mci_get_templates` | List all available templates. |
| Query and Discovery | `mci_query` | Query aggregated marketing data. |
| Query and Discovery | `mci_query_batch` | Run multiple queries in a batch. |
| Query and Discovery | `mci_list_measurements` | List available measurements and metrics. |
| Query and Discovery | `mci_list_dimensions` | List available dimensions. |
| Query and Discovery | `mci_get_dimension_values` | Get unique values for a dimension. |
| Dashboards | `mci_list_dashboards` | List all dashboards in a workspace. |
| Dashboards | `mci_get_dashboard_widgets` | Get all widgets in a dashboard. |
| Dashboards | `mci_share_dashboard` | Share a dashboard with users. |
| Reports | `mci_list_reports` | List all available reports. |
| Reports | `mci_run_report` | Start report generation. |
| Reports | `mci_download_report` | Download a generated report file. |
| Custom metrics and dimensions | `mci_create_calculated_metric` | Create a calculated metric with a formula. |
| Data Management and Governance | `mci_validate_taxonomy` | Validate naming against standards. |
| Goals, Users, and Brand | `mci_list_goals` | List KPI goals and targets. |
| Goals, Users, and Brand | `mci_list_users` | List workspace users and their roles. |

## Parameters for `mci_query`

mci\_query Parameters    
| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| workspaceId | String | Yes | Target workspace ID. |
| dateRange | Enum | Yes | Predefined date range or `CUSTOM`. |
| startDate | String | Conditional | Required when dateRange is `CUSTOM`. Use the `YYYY-MM-DD` format. |
| endDate | String | Conditional | Required when dateRange is `CUSTOM`. Use the `YYYY-MM-DD` format. |
| measurements | Array | Yes | Metrics to retrieve. |
| dimensions | Array | No | Grouping fields. |
| filters | Array | No | Filter conditions. |
| sortBy | String | No | Sort field and direction. |
| limit | Integer | No | Maximum number of rows returned. |

## Supported Date Ranges

Date Range Values  
| Value | Description |
| --- | --- |
| `CUSTOM` | Custom range. Requires startDate and endDate. |
| `YESTERDAY` | Previous day. |
| `LAST_7_DAYS` | Rolling 7 days. |
| `LAST_30_DAYS` | Rolling 30 days. |
| `LAST_90_DAYS` | Rolling 90 days. |
| `THIS_MONTH` | Current calendar month. |
| `LAST_MONTH` | Previous calendar month. |
| `THIS_QUARTER` | Current quarter. |
| `LAST_QUARTER` | Previous quarter. |
| `THIS_YEAR` | Current calendar year. |
| `LAST_YEAR` | Previous calendar year. |
| `MONTH_TO_DATE` | Start of the month through today. |
| `YEAR_TO_DATE` | Start of the year through today. |

## Security

The MCI MCP server uses your configured MCI credentials and permissions to access data. Your account has access only to its authorized workspaces and data. The MCI MCP server sends all requests over HTTPS.

## Example Conversation with the MCP Server

Show me last week's top campaigns by ROAS.

The AI client returns the top campaigns by ROAS for the requested period.

   
| Campaign | Spend | Revenue | ROAS |
| --- | --- | --- | --- |
| Summer\_Sale\_2026 | $12,400 | $89,200 | 7.19x |
| Brand\_Awareness\_Q3 | $8,750 | $52,100 | 5.95x |

Compare these to last month.

The AI client compares the results with the previous month and summarizes the changes.

## Set Up Marketing Cloud Intelligence MCP Server

Set up the MCI MCP server to query marketing data from Claude Code, Cursor, or another MCP-compatible AI client.

Before you begin, make sure that you have:

- A Marketing Cloud Intelligence account with API access.
- An MCP-compatible AI client.

1. Download your API credentials.
    
    1. Log in to Marketing Cloud Intelligence.
    2. On the navigation bar, open the dropdown list, and then select your name to access your profile settings.
    3. Next to **API Access Token**, select **Generate/Refresh**.
    4. Save the downloaded JSON credential file in a secure location, such as ~/.mci/credentials.json.
2. Configure your AI client.
    
    1. Add the MCI MCP server to your AI client's MCP server configuration.
        
        For Claude Code, the configuration file is typically located here:
        
        - MacOS and Linux ~/.config/claude/mcp\_servers.json
        - Windows %APPDATA%\\claude\\mcp\_servers.json
    2. Identify the host URL for your MCI instance.
        
         
        | MCI Instance | Host URL |
        | --- | --- |
        | EU | `https://app-eu.datorama.com/api/mcp` |
        | EU2 | `https://app-eu2.datorama.com/api/mcp` |
        | US | `https://app.datorama.com/api/mcp` |
        | US2 | `https://app-us2.datorama.com/api/mcp` |
    3. Add this configuration. This example uses the US host URL.
        
        ```json
        {
          "mci": {
            "command": "npx",
            "args": ["-y", "@datorama/mci-mcp-sdk"],
            "env": {
              "PRIVATE_KEY_PATH": "/absolute/path/to/credentials.json",
              "HOST": "https://app.datorama.com/api/mcp"
            }
          }
        }
        ```
    4. For `PRIVATE_KEY_PATH`, replace /absolute/path/to/credentials.json with the absolute path to your JSON credential file. For `HOST`, replace the example URL with the host URL for your MCI instance.
    5. Restart your AI client to apply the configuration.
3. Test your setup. In your AI client, ask:
    
    Show me my account and the workspaces I have access to.
    
    If the response includes your account and accessible workspaces, the setup is complete. Otherwise, verify the credential file path, regional endpoint, and account permissions, and then try again.