---
schema_version: "1"
id: ebdab1cfca18deb7945b10a2dd1303d1d69c38eb3a65bbcdb0ba45eb143d4944
title: Tableau Next Model Context Protocol (MCP) Server Tool Reference
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/analytics/264-0-0/tua_data_sdm_mcp_tools.md
canonical_url: https://help.salesforce.com/s/articleView?id=analytics.tua_data_sdm_mcp_tools.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: b59a6deb418dc5984550e33e44cf0fa4fef03428c09b45ea68f7976773ab8d51
description: ‌Tableau Next MCP (Model Context Protocol) Server provides a suite of tools that allow external AI agents to interact with your analytical ecosystem.
products:
  - Tableau Next
release: "264"
---
# Tableau Next Model Context Protocol (MCP) Server Tool Reference

‌Tableau Next MCP (Model Context Protocol) Server provides a suite of tools that allow external AI agents to interact with your analytical ecosystem.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;"><a href="https://help.salesforce.com/s/articleView?id=analytics.tua_editions.htm&amp;language=en_US" target="_blank">View supported editions.</a></td></tr></tbody></table>

After you complete the initial setup, you no longer need to manually select or configure these tools. Ask your preferred MCP-compliant AI client (such as ChatGPT, Claude, or Cursor) questions using natural language, and it automatically selects the right tools for the task.

For example, when you ask, "What are my best product sales in 2025?", the AI agent uses the Analytics Q&A tool analyze\_data to query your governed data via Concierge. The integration returns accurate answers and visualizations directly within your chat interface.

For documentation purposes, the available tools are grouped by their functional role within an analytical workflow.

## Analysis

External MCP-compliant AI agents use these tools to query data and explore visual assets.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small " summary="External MCP-compliant AI agent tools">
        <caption>External MCP-compliant AI agent tools</caption>
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e76">Tool Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e79">Description / Inputs</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e82">Returns</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e85">Use When</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e76 "><code>analyze_data</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e79 ">
              <p style="margin-bottom:0;">Execute a natural-language question via the Analytics Agent against a target
                semantic model. </p>
            </td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e82 "><code>answer (string; natural-language result)</code>. No metadata or
              SQL.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e85 ">
              <p>You want the agent to answer a question.</p>
              <p style="margin-bottom:0;">If a complex question fails, break it down to multiple, simpler questions to
                retrieve key information and perform deep thinking on the client side. Don’t use
                this tool for metadata discovery.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e76 "><code>list_dashboards</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e79 ">Enumerate Tableau Next dashboards (metadata only) for discovery and
              selection</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e82 ">Items with id, name/label, owning workspace (id/name), lastModifiedDate (when
              available).</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e85 ">You need dashboard identifiers or to browse dashboards (for metadata). </td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e76 "><code>get_dashboard</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e79 ">Retrieve a single dashboard.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e82 ">Full dashboard metadata.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e85 ">You need the full details of a specific dashboard.</td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e76 "><code>list_visualizations</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e79 ">Enumerate visualizations/worksheets (metadata only) across Tableau
              Next.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e82 ">Items with id, name/label, parent dashboard/workbook, owning workspace,
              timestamps.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e85 ">You need to discover charts or worksheets by name or parent.Not for images or
              query results</td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e76 "><code>get_visualization</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e79 ">Retrieve a single visualization.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e82 ">Full visualization metadata.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e85 ">You need the full details of a specific visualization.</td>

          </tr>
        </tbody>
      </table>

## Semantic Model Structure Discovery

External MCP-compliant AI agents use these tools to understand Tableau Next’s schemas, relationships, and logical views. The agents use this data architecture to make sense of the tables and connections inside Tableau Next.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small " summary="Semantic Model Structure Tools">
        <caption>Semantic Model Structure Tools</caption>
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e214">Tool Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e217">Description / Inputs</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e220">Returns</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e223">Use When</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e214 "><code>list_semantic_models</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e217 ">Enumerate semantic models available to the caller.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e220 ">count, items [ ] with id, apiName, label, optional description,
              dataspace, categories.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e223 ">You need to pick which semantic model to target next.</td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e214 "><code>get_semantic_model</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e217 ">Retrieve the profile of a single semantic model, including business
              preferences.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e220 ">apiName, label, businessPreferences (string with # guidance lines), and
              other semantic model properties.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e223 ">You need model-level rules/guidance before querying or exploring
              internals.</td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e214 "><code>list_semantic_model_data_objects</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e217 ">List data objects/entities defined in a semantic model.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e220 ">
              <p style="margin-bottom:0;">items[ ] with apiName, label, dataObjectName, filters[ ].</p>
            </td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e223 ">You need to enumerate the building blocks (tables/entities) of a semantic
              model.</td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e214 "><code>list_semantic_model_relationships</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e217 ">List relationships between data objects in a semantic model.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e220 ">items[ ] with apiName, label, leftSemanticDefinitionApiName,
              rightSemanticDefinitionApiName, joinType, criteria.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e223 ">You need to enumerate the relationships between data objects in a semantic
              model.</td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e214 "><code>get_semantic_model_logical_view</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e217 ">Retrieve the structure of a single logical view.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e220 ">apiName, label, semanticDataObjects[ ] (objects in the view),
              semanticRelationships[ ] (joins), semanticUnions[ ] , filters[
              ].</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e223 ">You need to understand the join graph and exposed fields of a specific
              view.</td>

          </tr>
        </tbody>
      </table>

## Business Logic and Definitions

External MCP-compliant AI agents use these tools to identify specific Tableau Next KPIs and calculation logic.

Business Logic and Definitions Tools    
| Tool Name | Description / Inputs | Returns | Use When |
| --- | --- | --- | --- |
| `list_semantic_model_measures` | List measures for a specific data object in a semantic model (numeric fields used for aggregation). | Measure metadata per object (name/apiName, label, data type, role) where available. | You need aggregateable fields exposed by a specific object. |
| `list_semantic_model_dimensions` | List dimensions for a specific data object in a semantic model (categorical/date/text fields used for grouping/slicing). | Dimension metadata per object (name/apiName, label, data type, role) where available. | You need group-by fields exposed by a specific object. |
| `list_semantic_model_metrics` | List business metrics/KPIs defined in a semantic model. | metrics\[ \] with apiName, label. | You need named KPIs rather than raw fields or formulas. |
| `get_semantic_model_metric` | Retrieve the full definition of a single metric/KPI. | apiName, label, measurementReference (e.g., calculatedFieldApiName), timeDimensionReference (table/field), additionalDimensions, timeGrains\[ \], filters\[ \], aggregationType, isCumulative. | You must understand exactly how a KPI is computed and sliced. |
| `list_semantic_model_calculated_dimensions` | List calculated dimensions (user-defined expressions that yield categorical/date/text) in a semantic model. | Calculated dimension entries with identifiers, labels, and (where available) expression/typing details. | You need derived grouping fields defined at the model level. |
| `list_semantic_model_calculated_measures` | List calculated measures (user-defined numeric expressions/aggregations) in a semantic model. | items\[ \] with apiName, label, dataType, expression, displayCategory, level (e.g., Row, AggregateFunction), aggregationType. | You need numeric derived fields and their formulas (building blocks for KPIs/metrics). |

## Workspace and General Asset Discovery

External MCP-compliant AI agents use these tools to navigate Tableau Next’s environment and search for relevant analytical assets.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small " summary="Workspace and General Asset Discovery Tools">
        <caption>Workspace and General Asset Discovery Tools</caption>
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e490">Tool Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e493">Description / Inputs</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e496">Returns</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d39956e499">Use When</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e490 "><code>list_workspaces</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e493 ">Enumerate workspaces or fetch one by id when provided.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e496 ">workspaces[ ] with id, name, label, description, createdBy/Date,
              lastModifiedBy/Date, permissions (view/edit/share/delete), url.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e499 ">You need containers and access context for assets.</td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e490 "><code>list_workspace_assets</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e493 ">List assets contained in a specific workspace.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e496 ">workspaceAssets[ ] with assetId, assetType (AnalyticsDashboard |
              AnalyticsVisualization | SemanticModel), assetUsageType (Created |
              Referenced), createdBy (id/name), createdDate, url.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e499 ">You need dashboards, visualizations, and semantic models scoped to a
              workspace.</td>

          </tr>
          <tr class="">
            <td data-label="Tool Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e490 "><code>search_assets</code></td>

            <td data-label="Description / Inputs" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e493 ">Search for assets using a keyword and optional type filter to quickly discover
              relevant items.</td>

            <td data-label="Returns" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e496 ">assets[ ] including id, name, type, createdBy, createdDate,
              lastModifiedBy, lastModifiedDate.</td>

            <td data-label="Use When" class="slds-cell-wrap" style="vertical-align:top;" headers="d39956e499 ">
              <p>You need broad or initial discovery of assets. </p>
              <p style="margin-bottom:0;">If you need to browse assets in a structured hierarchy, use list tools
                instead.</p>
            </td>

          </tr>
        </tbody>
      </table>

#### See Also

- [_Salesforce Help:_ Agent Analytics](https://help.salesforce.com/s/articleView?id=ai.generative_ai_agent_analytics.htm&language=en_US)
- [Configure the Service Agent Analytics Semantic Model and Metrics](https://help.salesforce.com/s/articleView?id=analytics.tua_create_service_agent_analytics_sdm.htm&release=264.0.0&type=5 "The Tableau Next Service Agent Model and Metrics template is designed to enhance service agent performance and conversation metric tracking. It helps you optimize agents by providing a tailored set of data. The template installs the semantic model, 14 pre-configured metrics, and over 30 calculated fields. These insights offer a detailed analysis of agent sessions across various dimensions, enabling data-driven decisions, improving agent quality, and identifying specific areas for agent improvement.")