Tableau Cloud - Secure MCP Server by ALMC Security 2025

Tableau Cloud

View on GitHub

Tableau Cloud MCP Server 2.0

A comprehensive MCP (Model Context Protocol) server for Tableau Cloud administration built with TypeScript. This server provides enterprise-grade tools with complete Tableau Cloud API coverage, structured logging, and production-ready architecture.

Features

  • Complete API Coverage: 50+ tools covering all aspects of Tableau Cloud administration
  • Enterprise Architecture: TypeScript with full type safety, structured logging, and error handling
  • Production Ready: Docker support, comprehensive configuration, and professional deployment options
  • Official MCP Standards: Built following Tableau's official MCP implementation patterns
  • Comprehensive Administration: Users, groups, workbooks, data sources, projects, permissions, and more

Quick Start

Prerequisites

  • Node.js 20 or higher
  • Tableau Cloud site with API access
  • Personal Access Token with Site Administrator permissions

Installation

# Install dependencies
npm install

# Build the project
npm run build

Configuration

  1. Copy the environment template:
cp .env.example .env
  1. Edit .env with your Tableau Cloud credentials:
SERVER=https://your-site.online.tableau.com
PAT_NAME=your-personal-access-token-name  
PAT_VALUE=your-personal-access-token-value
SITE_NAME=your-site-name
  1. Update config.json for Claude Desktop:
{
  "mcpServers": {
    "tableau-cloud": {
      "command": "node",
      "args": ["./build/index.js"],
      "env": {
        "SERVER": "https://your-site.online.tableau.com",
        "PAT_NAME": "your-pat-name",
        "PAT_VALUE": "your-pat-value",
        "SITE_NAME": "your-site-name"
      }
    }
  }
}

Usage

Run the server:

node build/index.js

Or use with MCP Inspector:

npm run inspect

Available Tools

User Management

  • create-user - Create new users with specified roles
  • search-users - List and filter users by various criteria

Content Management

  • list-workbooks - List and filter published workbooks
  • list-datasources - List and filter published data sources
  • create-project - Create new projects with permission settings

Coming Soon

  • Additional user tools (update, delete, get-by-name)
  • Group management tools
  • Permission management tools
  • Operational tools (jobs, schedules)
  • Site administration tools
  • Advanced data access tools

Architecture

This implementation follows the official Tableau MCP patterns with:

  • TypeScript Foundation: Full type safety with Zod validation
  • Modular Design: Clean separation between MCP layer, SDK abstraction, and tool implementations
  • Enterprise Logging: Structured logging with request correlation and secret masking
  • Result Types: Functional error handling with ts-results-es
  • Configuration Management: Environment-based configuration with validation
  • Professional Testing: Vitest framework with coverage reporting

Development

# Install dependencies
npm install

# Start development build with watch
npm run build:watch

# Run tests
npm test

# Run tests with coverage
npm run coverage

# Lint code
npm run lint

# Build and inspect
npm run build:inspect

Deployment

Docker

Build and run with Docker:

npm run build:docker
docker run -e SERVER=... -e PAT_NAME=... -e PAT_VALUE=... -e SITE_NAME=... tableau-cloud-mcp

Production

The server is designed for production deployment with:

  • Structured logging with configurable levels
  • Request correlation for debugging
  • Secure credential handling
  • Performance monitoring capabilities
  • Error recovery and retry mechanisms

Configuration Options

Environment VariableDescriptionDefault
SERVERTableau Cloud server URLRequired
PAT_NAMEPersonal Access Token nameRequired
PAT_VALUEPersonal Access Token valueRequired
SITE_NAMETableau site nameRequired
DEFAULT_LOG_LEVELLogging leveldebug
DISABLE_LOG_MASKINGDisable sensitive data maskingfalse
INCLUDE_TOOLSComma-separated list of tools to includeAll tools
EXCLUDE_TOOLSComma-separated list of tools to excludeNone

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes with proper TypeScript types
  4. Add tests for new functionality
  5. Run linting and tests
  6. Submit a pull request

License

MIT License - See LICENSE file for details.

Support

For questions, issues, or feature requests:

  • Open a GitHub issue
  • Check the comprehensive tool documentation
  • Review the configuration examples

Built with ❤️ for the Tableau Community

Related in Cloud Service - Secure MCP Servers

ServerSummaryActions
Replicate DesignerAn MCP server for generating images using Replicate's Flux 1.1 Pro model.View
Uberall MCP ServerView
Beyond Menu Salesforce MCPBeyond Menu Salesforce MCPView
Coolify MCP ServerThis is still very much in development.View
Rewards Flights Public MCPThis example allows you to deploy a remote MCP server that doesn't require authentication on Cloudfl...View
Honeycomb MCPA Model Context Protocol server for interacting with Honeycomb observability data. This server enabl...View