Model Context Protocol·Open Source

Connect AI to Tableau Data

Tableau MCP bridges AI assistants — Claude, Cursor, VS Code — directly to your published data sources and metadata via the VizQL Data Service and Metadata APIs. Works on both Tableau Server and Tableau Cloud.

Tableau Server (On-Premise)Tableau Cloud
VizQL
Data Service API
MCP
Open Protocol
Node 18+
Runtime Required

What is MCP?

The open standard that connects AI to your data

The Model Context Protocol lets AI assistants call external tools safely and predictably. Tableau MCP is the server that exposes your Tableau environment as those tools.

AI Assistant

MCP Client

Claude, Cursor, VS Code or any MCP-compatible host sends natural-language requests and calls tools.

Tableau MCP

Protocol Server

Translates requests into authenticated Tableau REST & Metadata API calls. Credentials never touch the model.

Tableau

Server or Cloud

Your workbooks, views, data sources and published metrics — wherever they live, on-premise or cloud.

MCP

Model Context Protocol

An open standard (by Anthropic) that lets AI models call external tools, databases, and APIs in a structured, safe way — without hardcoding integrations.

Server

MCP Server

A lightweight process that exposes capabilities as "tools". Tableau MCP is this server — it wraps the Tableau REST and Metadata APIs into typed tools your AI can call.

Client

MCP Client

The AI assistant or IDE that connects to the server. Examples: Claude Desktop, Cursor, VS Code Copilot, or your own custom host.

VizQL

VizQL Data Service

Tableau's headless query engine. The MCP server uses it to run queries against published data sources and return structured tabular results.

How to Use

Up and running in five steps

From credentials to your first AI-driven Tableau query — works with both Tableau Server and Tableau Cloud.

  1. 01

    Prerequisites

    Make sure Node.js 18 or newer is installed and you have a valid Tableau Personal Access Token (PAT) for your site.

    terminal
    # Verify Node version (must be 18+)
    node --version
    
    # Generate a PAT in Tableau:
    # User menu → My Account Settings → Personal Access Tokens → Create
  2. 02

    Set your environment variables

    Store credentials as env vars so they are never hard-coded in your config file. Required for both Tableau Server and Cloud.

    .env
    # .env or shell profile
    export TABLEAU_SERVER="https://tableau.acme.com"   # or your Cloud pod URL
    export TABLEAU_SITE="my-site-name"
    export TABLEAU_PAT_NAME="mcp-bot"
    export TABLEAU_PAT_VALUE="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
  3. 03

    Add Tableau MCP to your AI client

    Register the server in your MCP client config. Here is the Claude Desktop example — Cursor and VS Code follow the same shape.

    claude_desktop_config.json
    // ~/Library/Application Support/Claude/claude_desktop_config.json
    {
      "mcpServers": {
        "tableau": {
          "command": "npx",
          "args": ["-y", "@tableau/mcp-server@latest"],
          "env": {
            "SERVER": "https://tableau.acme.com",
            "SITE_NAME": "my-site-name",
            "PAT_NAME": "mcp-bot",
            "PAT_VALUE": "your-pat-secret"
          }
        }
      }
    }
  4. 04

    Restart your client and verify

    Restart Claude Desktop (or your chosen client). You should see the Tableau tools listed in the MCP section. Run a quick test:

    verification
    # In Claude Desktop, look for the 🔌 MCP tools icon.
    # Available tools will include:
    #   list_workbooks · list_views · list_datasources
    #   query_datasource · get_field_metadata · get_view_data
    #   get_view_image · search_content
  5. 05

    Ask your first question

    Your AI assistant can now reason over your Tableau environment. Try one of these prompts to get started:

    example prompts
    > "List all workbooks in my Sales project"
    
    > "Summarize the Q3 revenue dashboard and flag any
       region that is down more than 10% week-over-week"
    
    > "What fields are available in the Orders data source?"
    
    > "Query the Top Customers data source and show me
       the top 5 customers by revenue this year"

Benefits

Built for production analytics, not demos

Everything you need to expose Tableau to AI safely, with the guarantees enterprise data teams expect.

Works with any MCP client

Standard Model Context Protocol over stdio or HTTP. Drop it into Claude Desktop, Cursor, or your own host with zero custom glue.

Credentials stay server-side

Personal Access Tokens and connected-app secrets live in the MCP server's config — never exposed to the model or its prompts.

Schema & metadata discovery

Automatically surfaces published data sources, fields, workbooks, and views through the Tableau Metadata API.

On-Premise & Cloud parity

A single configuration shape targets Tableau Server behind your firewall or Tableau Cloud — switch with one field.

Scoped, read-first access

Granular tool permissions and site-level scoping keep assistants restricted to exactly the projects and data you allow.

PAT & connected-app auth

Authenticate with Personal Access Tokens or JWT-based connected apps, with automatic session refresh built-in.

Live query execution

Run real-time VizQL queries against published data sources and get tabular results back in seconds — no extracts needed.

Natural language to SQL

Ask your AI assistant plain-English questions and let it translate them into structured queries against your Tableau data.

Server vs Cloud

Tableau Server MCP vs Tableau Cloud MCP

The same MCP server targets either environment. Choose based on your hosting preference, compliance needs, and auth requirements.

Tableau Server

On-Premise / Self-Hosted

Self-host the MCP server and point it at your internally-hosted Tableau Server. Authentication and all data traffic stay entirely inside your network — ideal for air-gapped, compliance-bound, or highly regulated deployments.

  • Runs inside your private network or VPN
  • Supports self-signed / internal TLS certificates
  • Personal Access Token (PAT) authentication
  • Zero data ever leaves your infrastructure
  • Full control over Node.js server process
  • Works with Tableau Server 2021.4 and newer
mcp-client-config.json (Server)
{
  "mcpServers": {
    "tableau": {
      "command": "npx",
      "args": ["-y", "@tableau/mcp-server@latest"],
      "env": {
        "SERVER": "https://tableau.internal.acme.com",
        "SITE_NAME": "analytics",
        "PAT_NAME": "mcp-bot",
        "PAT_VALUE": "your-pat-secret-here"
      }
    }
  }
}

Side-by-side comparison

FeatureTableau Server MCPTableau Cloud MCP
HostingSelf-hostedManaged (mcp.tableau.com) or self-hosted
Auth methodsPersonal Access Token (PAT)PAT + Connected App (JWT)
Network requirementPrivate network / VPNInternet (HTTPS)
Data residencyFully on-premiseCloud-hosted
TLS / custom certs
Zero-config hosted endpoint
Air-gap / offline support
Multi-user OAuth at scale
Docker support
Node.js 18+ required (self-host)

Capabilities

8 tools your assistant gets out of the box

Each capability is exposed as a typed MCP tool. The assistant calls them on demand — discovering content, pulling data, and rendering views without leaving the conversation.

example conversation
> "Which sales dashboards changed this week,
   and what's driving the dip in EMEA revenue?"

→ search_content(query: "sales")
→ list_views(workbook: "EMEA Sales Q4")
→ query_datasource(
    source: "Sales Pipeline",
    filter: "region = 'EMEA'"
  )
  • list_workbooks

    Browse published workbooks across sites and projects.

  • list_views

    Enumerate views and dashboards inside a workbook.

  • list_datasources

    Discover published data sources and their owners.

  • get_field_metadata

    Fetch fields, types, and descriptions via the Metadata API.

  • query_datasource

    Run VizQL headless queries and return tabular results.

  • get_view_image

    Render a view to PNG for visual reasoning by the model.

  • search_content

    Full-text search across workbooks, views, and metrics.

  • get_view_data

    Export the underlying summary or detail data of a view.