Skip to content

Latest commit

 

History

124 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Tableau MCP

Tableau Supported

Build and Test

npm

Overview

Tableau MCP is a suite of developer primitives, including tools, resources and prompts, that will make it easier for developers to build AI applications that integrate with Tableau.

Official Documentation

https://tableau.github.io/tableau-mcp/

Quick Start

Requirements

  • Node.js 22.7.5 or newer
  • An MCP client e.g. Claude Desktop, Cursor, VS Code, MCP Inspector, etc.

Standard config works in most MCP clients:

{
  "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"
      }
    }
  }
}

Optional: Database Proxy Integration

If you expose a POST endpoint that runs parametrized SQL (for example the Bun HTTP proxy in server/ at http://127.0.0.1:8787/db/query), set DB_PROXY_URL before starting the server:

export DB_PROXY_URL=http://127.0.0.1:8787/db/query
npm run start:http

This enables the query-db MCP tool. To store reusable procedures and refresh rules, also set BUN_SERVER_BASE_URL to the Bun API origin (defaults to http://127.0.0.1:8787).

Prompt examples:

  • “Use the query-db tool to fetch the last 10 orders from the sales_dashboard table.”
  • “Query the Postgres database (not Tableau) for total sales by region.”
  • “Store a query expectation for sales_dashboard with ID latest-orders so the monitor can reuse it.”
  • “If total sales exceed 50,000, use the dashboard status API to set updateRequired:true.”
  • “Configure the dashboard monitor so it refreshes when sales_dashboard total sales is above 50,000.”
  • “Simulate December 2028 sales for the West region using the forecast tool.”

query-db accepts { "query": "SELECT ...", "params": [] } and forwards the request to the proxy URL. store-query-expectation accepts { "id": "...", "query": "...", "expectedValue": "{\"foo\":true}" } and persists the payload via POST /db/expectations. configure-dashboard-monitor accepts { "threshold": 50000, "dashboardId": "...", "tableName": "..." } and calls POST /dashboard/monitor. simulate-sales accepts { "month": "December", "year": 2028, "filterColumn": "region", "filterValue": "West" } and internally uses query-db to build a projected dataframe. It also stores the detailed rows via POST /simulations so dashboards can retrieve the simulated dataset.

Deploy to Heroku

Deploy to Heroku

Example Prompts to Client

Prompt #1: Querying Data

For the Superstore Datasource, what are the top 5 states with the most sales in 2025?

Response

Based on the Superstore Datasource, here are the top 5 states with the most sales in 2025:
  1. California - $146,388.34
  2. New York - $93,922.99
  3. Washington - $65,539.90
  4. Texas - $43,421.76
  5. Pennsylvania - $42,688.31
California leads by a significant margin with over $146,000 in sales, followed by New York with nearly $94,000. These two states alone account for a substantial portion of the total sales across the top 5 states.

Prompt #2: Content Exploration

Find me the most viewed workbook within the last year.

Response

The most viewed workbook within the last year is:

Global Connections
- Owner: John Doe
- Project: Marketing
- Views in last year: 523
- Last Modified: September 2, 2025
- Workbook ID: 111fb672-9401-4913-a167-17b3d89a3e4f

Prompt #3: Getting a View

Show me an image of the "Economy" view in the "Finances" project.

Response

Economy View Image

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages