Tableau MCP Server
Tableau's official MCP server. Lets AI agents query governed datasources, explore content metadata, and pull Pulse insights from Tableau Cloud, Server, and Next.
Tableau MCP is the official Model Context Protocol server maintained by Tableau (Salesforce) for connecting AI agents to governed Tableau data. It exposes Tableau's REST, Metadata, VizQL Data Service, Pulse, and Content Exploration APIs as MCP tools so clients like Claude Desktop, Cursor, ChatGPT, Slack, and Microsoft Teams can list datasources, run VizQL queries, fetch view images, and retrieve Pulse insights without writing custom integration code.
The server is distributed as the @tableau/mcp-server npm package and runs locally via npx. Authentication uses a Personal Access Token (PAT) scoped to a specific site, and the server works against any published datasource. Tableau Cloud is supported out of the box; Tableau Server requires the VizQL Data Service and Metadata API to be enabled. Pulse tools require Tableau Pulse to be enabled on Tableau Cloud.
Tableau MCP is generally available across Tableau Next, Tableau Cloud, and Tableau Server. It is notable for being an official, vendor-maintained MCP implementation that preserves Tableau's row-level security and permission model, so agents only see data the underlying PAT user is authorized to access.
Tools
| Tool | Description |
|---|---|
list-datasources |
Retrieves published data sources from a Tableau site, with optional search by name or owner. |
list-workbooks |
Retrieves workbooks from a Tableau site. |
list-projects |
Retrieves projects from a Tableau site. |
list-views |
Retrieves views from a Tableau site. |
list-custom-views |
Retrieves custom views for a specified workbook. |
get-datasource-metadata |
Fetches field metadata (columns, descriptions, types) for a published datasource via the Metadata API. |
get-workbook |
Retrieves details for a specific workbook. |
get-view-data |
Retrieves CSV-formatted underlying data for a specified view. |
get-view-image |
Retrieves a rendered image (PNG/SVG) of a specified view. |
get-custom-view-data |
Retrieves CSV data for a custom view. |
get-custom-view-image |
Retrieves an image for a custom view. |
query-datasource |
Executes a VizQL query against a published datasource and returns the result set. |
list-all-pulse-metric-definitions |
Lists all Pulse metric definitions on the site. |
list-pulse-metric-definitions-from-definition-ids |
Lists Pulse metric definitions by definition IDs. |
list-pulse-metrics-from-metric-definition-id |
Lists Pulse metrics tied to a given metric definition. |
list-pulse-metrics-from-metric-ids |
Lists Pulse metrics by metric IDs. |
list-pulse-metric-subscriptions |
Lists Pulse metric subscriptions for the current user. |
generate-pulse-metric-value-insight-bundle |
Generates a Pulse insight bundle with metric values and detected insights. |
generate-pulse-insight-brief |
Generates an AI-powered narrative insight brief for a Pulse metric. |
search-content |
Searches Tableau content (workbooks, datasources, views, projects) via the Content Exploration API. |
Prerequisites
- Node.js 22.7.5 or newer
- Tableau Cloud or Tableau Server site you have access to
- A Personal Access Token (PAT): create one from your Tableau site under My Account Settings. Tokens expire after 15 days of inactivity.
- For Tableau Server: VizQL Data Service and Metadata API must be enabled
- For Pulse tools: Tableau Pulse enabled on Tableau Cloud
- Datasources must be published (not embedded or live in a workbook only)
Install
The server runs via npx and does not need a global install:
npx -y @tableau/mcp-server@latest
Claude Desktop config
Add to claude_desktop_config.json:
{
"mcpServers": {
"tableau": {
"command": "npx",
"args": ["-y", "@tableau/mcp-server@latest"],
"env": {
"SERVER": "https://my-tableau-server.com",
"SITE_NAME": "my_site",
"PAT_NAME": "my_pat",
"PAT_VALUE": "pat_value"
}
}
}
}
Environment variables
SERVER: Pod hostname (Cloud, e.g.https://10ax.online.tableau.com) or full hostname (Server)SITE_NAME: Site identifier. Required on Cloud; leave blank for the default site on ServerPAT_NAME: The name you gave your Personal Access TokenPAT_VALUE: The token secret (shown only once at creation)
You can also install via the Claude Marketplace or by sideloading the .mcpb extension file from the Tableau MCP releases page.
- Ask natural language questions against governed Tableau datasources and get answers grounded in VizQL query results, respecting site permissions
- Pull Pulse metric values and AI-generated insight briefs into Claude, ChatGPT, Slack, or Teams for daily standups and exec updates
- Discover content across a Tableau site: search for workbooks, datasources, and views by topic, owner, or project
- Embed Tableau view images directly in chat replies, reports, or docs by calling
get-view-image - Inspect datasource schemas (fields, types, descriptions) before building dashboards or downstream pipelines
- "List the top 10 published datasources on our Tableau site and show me the fields in the Sales Pipeline datasource."
- "Query the Sales Pipeline datasource for closed-won revenue by region for the last quarter."
- "Pull the latest Pulse insight brief for the Weekly Active Users metric and summarize the trend."
- "Find every workbook tagged 'finance' and return view images for the executive dashboards."
- "Search our Tableau site for content related to churn and list the owners."
- Officially maintained by Tableau (Salesforce), with releases tracked on GitHub
- Broad coverage across REST, Metadata, VizQL Data Service, Pulse, and Content Exploration APIs
- Honors Tableau permissions and row-level security via the PAT user identity
- Works with any MCP client (Claude Desktop, Cursor, VS Code, ChatGPT, Slack, Teams)
- Only Personal Access Token auth is documented; PATs expire after 15 days of inactivity and must be rotated
- Tableau Server users must explicitly enable VizQL Data Service and Metadata API, which not all deployments allow
- Limited to published datasources, embedded or workbook-only data sources are not queryable
- Tableau Public MCP for read-only access to Tableau Public vizzes
- Power BI MCP servers (community and Microsoft-affiliated) for the analogous Power BI ecosystem
- Direct use of the Tableau REST API or VizQL Data Service via a custom tool wrapper if you need auth methods beyond PAT