Skip to main content

A Model Context Protocol (MCP) server for Tableau Server - enables AI assistants to interact with Tableau workbooks, views, datasources, and metadata

Project description

Tableau MCP Server (tableau-mcp-navi)

A Model Context Protocol (MCP) server for Tableau Server. Enables AI assistants (like Claude, Cursor) to interact with Tableau workbooks, views, datasources, and metadata.

PyPI version License: MIT Python 3.10+

Features

  • 27 Tools for comprehensive Tableau Server interaction
  • Custom SQL from URL or Name: Give a Tableau URL or workbook name, get the SQL instantly (no file download!)
  • Fuzzy Workbook Matching: Works with CamelCase slugs like InhouseKYCFunnelView or exact names
  • Find Datasource Usage: Discover which dashboards use a specific published datasource
  • Publishing: Upload workbooks and datasources to Tableau Server
  • Two Authentication Methods: Personal Access Token (PAT) or Username/Password
  • Metadata API: Extract refresh info, data lineage, upstream tables
  • Zero Install: Run directly with uvx - no local installation needed
  • Auto Updates: Users always get the latest version

Quick Start

1. Install uv (if not installed)

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

2. Configure Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "tableau": {
      "command": "uvx",
      "args": ["tableau-mcp-navi"],
      "env": {
        "TABLEAU_SERVER_URL": "https://your-tableau-server.com",
        "TABLEAU_TOKEN_NAME": "your_token_name",
        "TABLEAU_TOKEN_SECRET": "your_token_secret",
        "TABLEAU_VERIFY_SSL": "false"
      }
    }
  }
}

3. Restart Cursor

The MCP server will be available immediately!

Available Tools (27 total)

Workbook Tools

Tool Description
list_workbooks List all workbooks on the server
get_workbook Get workbook details including views
search_workbooks Search workbooks by name

View Tools

Tool Description
get_view_data Get underlying data from a view
get_view_image Get PNG preview of a view
download_view_image Download view image to disk
download_view_image_from_url Download image from Tableau URL

Data Source Tools

Tool Description
list_datasources List all data sources
get_datasource Get data source details
refresh_datasource Trigger extract refresh

Project Tools

Tool Description
list_projects List all projects
get_project Get project details

Utility Tools

Tool Description
resolve_id Resolve a name to full UUID (workbooks, datasources, views, projects)

Metadata API Tools (RCA & Lineage)

Tool Description
get_datasource_extract_info Get extract refresh times
get_dashboard_extract_info Get extract info for all datasources in a dashboard
find_stale_extracts Find datasources with stale extracts
get_datasource_tables Get upstream tables for a datasource
get_dashboard_tables Get ALL tables powering a dashboard
get_dashboard_sql_from_url Extract custom SQL from dashboard URL
get_datasource_custom_sql NEW Get Custom SQL from datasource (no download!)

Publishing Tools 🆕

Tool Description
publish_workbook Upload a .twb/.twbx workbook to Tableau Server
publish_datasource Upload a .tds/.tdsx datasource to Tableau Server
list_projects_for_publishing List projects with IDs for publishing

Other Tools

Tool Description
test_connection Test Tableau connectivity
list_sites List available sites

Configuration

Environment Variables

Variable Required Description
TABLEAU_SERVER_URL Your Tableau Server URL
TABLEAU_TOKEN_NAME ✅* Personal Access Token name
TABLEAU_TOKEN_SECRET ✅* Personal Access Token secret
TABLEAU_USERNAME ✅* Username (alternative to PAT)
TABLEAU_PASSWORD ✅* Password (alternative to PAT)
TABLEAU_SITE_ID Site ID (empty for default)
TABLEAU_VERIFY_SSL Set to "false" for self-signed certs
TABLEAU_API_VERSION Override API version
TABLEAU_MCP_ANALYTICS Set to "false" to disable analytics

*Either PAT or Username/Password required

Getting a Personal Access Token

  1. Log in to Tableau Server
  2. Click your profile icon → My Account Settings
  3. Scroll to Personal Access Tokens
  4. Click Create new token
  5. Copy both the Token Name and Token Secret

Usage Examples

After configuring Cursor:

"List all workbooks in Tableau"
"Get details for workbook abc123"
"Search for workbooks about sales"
"Get data from view xyz789"
"What tables power the Sales Dashboard?"
"Find all stale extracts older than 48 hours"
"Get the SQL from this Tableau URL: https://..."

# New in v0.3.1:
"Resolve the UUID for workbook 'Sales Dashboard'"
"Get the Custom SQL for the 'UPI Daily Metrics' datasource"
"Publish my workbook /path/to/report.twbx to project abc123"
"List projects where I can publish workbooks"

Updates

When the package is updated on PyPI, users automatically get the new version on their next run - no action required!

Development

# Clone
git clone https://github.com/manish-coder-1007/tableau-mcp-navi.git
cd tableau-mcp-navi

# Install dependencies
uv sync

# Run locally
uv run python -m tableau_mcp_navi

License

MIT License - see LICENSE file.

Author

Manish Balot

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tableau_mcp_navi-0.3.1.tar.gz (29.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tableau_mcp_navi-0.3.1-py3-none-any.whl (37.5 kB view details)

Uploaded Python 3

File details

Details for the file tableau_mcp_navi-0.3.1.tar.gz.

File metadata

  • Download URL: tableau_mcp_navi-0.3.1.tar.gz
  • Upload date:
  • Size: 29.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.5

File hashes

Hashes for tableau_mcp_navi-0.3.1.tar.gz
Algorithm Hash digest
SHA256 00dcf1bc0b1933781c4fd0bbd50c9406d9850856a8cb00345f7e07d95d6092ec
MD5 a64f95b2a650f61d1786bc60b9fdafba
BLAKE2b-256 5c52894c310641ae85a595ccd8398263dcdb284949ccca6f539fcda11938f0f1

See more details on using hashes here.

File details

Details for the file tableau_mcp_navi-0.3.1-py3-none-any.whl.

File metadata

File hashes

Hashes for tableau_mcp_navi-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7b3b05a83d671a2db76c0b184c3a7a720e73bdadd9527187ac3e3c8755d3c993
MD5 14f8fcfb525f9a5b2eeeab2e373276bd
BLAKE2b-256 342254981bcf8ddc473aeed580eb651cef514cf5540e4cd17a1798bde319b27d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page