Tableau MCP Server
Connects Claude Desktop to Tableau Server for natural language interactions with Tableau data, enabling data extraction, dashboard exports, and comprehensive administrative capabilities including user management, permission auditing, and usage analytics.
README
Tableau MCP Server 🚀
A powerful Model Context Protocol (MCP) server that connects Claude Desktop to Tableau Server, enabling natural language interactions with your Tableau data and comprehensive administrative capabilities.
✨ Features
📊 Data Access & Analysis
- List & Browse: Explore all workbooks, views, and data sources
- Data Extraction: Get CSV data from any Tableau view
- Visual Export: Download dashboard images in PNG format
- Complete Datasets: Download entire data sources with all raw data
- Smart Search: Find content across your Tableau server
🛡️ Administrative Tools (New!)
- User Management: List all users with roles and login history
- Permission Auditing: See exactly who has access to workbooks
- Group Management: View all groups and member counts
- Project Oversight: Audit project permissions and settings
- Site Administration: Get comprehensive site statistics
- Usage Analytics: Detailed workbook usage and access audits
🎯 Use Cases
For Data Analysts
- "Show me the sales data from Q4 dashboard"
- "Export the customer metrics as CSV"
- "Find all reports containing revenue data"
For Tableau Administrators
- "Who has access to the Finance workbook?"
- "List all users who haven't logged in recently"
- "Show me all groups and their member counts"
- "Audit the permissions for our HR dashboards"
🚀 Quick Start
Prerequisites
- Python 3.8+
- Claude Desktop installed
- Access to Tableau Server or Tableau Cloud
- Administrative privileges (for admin tools)
1. Clone and Setup
# Clone the repository
git clone https://github.com/hetpatel-11/Tableau-MCP.git
cd Tableau-MCP
# Create virtual environment (recommended)
python -m venv tableau_mcp_env
source tableau_mcp_env/bin/activate # On Windows: tableau_mcp_env\Scripts\activate
# Install ALL dependencies including MCP SDK
pip install -r requirements.txt
2. MCP SDK Installation (If Having Issues)
If you encounter MCP SDK installation issues, try these solutions:
# Option 1: Install MCP SDK directly
pip install mcp>=1.0.0
# Option 2: Install with specific version
pip install mcp==1.0.0
# Option 3: Install from source (if needed)
pip install git+https://github.com/modelcontextprotocol/python-sdk.git
# Option 4: Force reinstall
pip install --force-reinstall mcp>=1.0.0
3. Verify Installation
# Test that MCP SDK is properly installed
python -c "import mcp; print('✅ MCP SDK installed successfully')"
# Test Tableau Server Client
python -c "import tableauserverclient as TSC; print('✅ Tableau Server Client ready')"
# Test the server
python tableau_mcp_server.py --test
4. Configuration
Create a .env file with your Tableau credentials:
TABLEAU_SERVER_URL=https://your-tableau-server.com
TABLEAU_SITE_ID=your-site-name
# Option 1: Personal Access Token (Recommended)
TABLEAU_TOKEN_NAME=your-token-name
TABLEAU_TOKEN_VALUE=your-token-value
# Option 2: Username/Password
# TABLEAU_USERNAME=your-username
# TABLEAU_PASSWORD=your-password
5. Claude Desktop Setup
Add to your Claude Desktop configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"tableau-server": {
"command": "/path/to/Tableau-MCP/start_clean.sh",
"args": []
}
}
}
6. Start the Server
# Make startup script executable
chmod +x start_clean.sh
# Start the server
./start_clean.sh
🛠️ Available Tools
Data Access Tools
| Tool | Description |
|---|---|
list_workbooks |
List all available Tableau workbooks |
list_views |
List views in a specific workbook |
get_view_data |
Extract CSV data from any view |
get_view_image |
Get dashboard/view as PNG image |
search_content |
Search across all Tableau content |
list_datasources |
List all available data sources |
download_datasource |
Download complete raw datasets |
Administrative Tools
| Tool | Description |
|---|---|
list_workbook_permissions |
See who has access to workbooks |
list_all_users |
View all users with roles and details |
list_all_groups |
View all groups with member counts |
get_user_permissions |
Get detailed user permissions |
list_projects_permissions |
Audit project permissions |
get_site_info |
Get site statistics and quotas |
audit_workbook_usage |
Comprehensive workbook audits |
list_user_groups |
See user group memberships |
📋 MCP Resources
The server exposes Tableau content as MCP resources:
tableau://workbooks/{workbook_id}- Workbook metadatatableau://views/{view_id}/data- View data in CSV format
🔧 Advanced Usage
Debug Mode
python tableau_mcp_server.py --debug
Authentication Testing
python tableau_mcp_server.py --test
Manual Setup
python setup.py --test-only
🏗️ Architecture
Claude Desktop ↔ MCP Server ↔ Tableau REST API ↔ Tableau Server
⬇️
[15 Available Tools]
⬇️
[Data + Admin Capabilities]
📁 Project Structure
Tableau-MCP/
├── tableau_mcp_server.py # Main MCP server implementation
├── start_clean.sh # Server startup script
├── requirements.txt # Python dependencies (includes MCP SDK)
├── setup.py # Setup and configuration script
├── env.example # Environment configuration template
├── README.md # This file
└── .env # Your credentials (create this)
🔒 Security
- Local Operation: Server runs locally with your permissions
- Secure Credentials: Uses environment variables for authentication
- Token Authentication: Supports Tableau Personal Access Tokens
- No Data Leakage: No data sent to external services
🚨 Troubleshooting
MCP SDK Issues
"ModuleNotFoundError: No module named 'mcp'"
# Solution 1: Install MCP SDK
pip install mcp>=1.0.0
# Solution 2: Check virtual environment
source tableau_mcp_env/bin/activate
pip install -r requirements.txt
# Solution 3: Verify Python version
python --version # Should be 3.8+
"MCP SDK version conflict"
# Uninstall and reinstall
pip uninstall mcp
pip install mcp>=1.0.0
Common Issues
"Authentication failed"
- Verify credentials in
.envfile - Check Tableau Server URL format
- Ensure account has proper permissions
"No tools available in Claude"
- Restart Claude Desktop after configuration
- Check that
start_clean.shis executable - Verify Python dependencies are installed
"Permission denied errors"
- Ensure your account has administrative privileges
- Check Tableau Server user permissions
- Verify site access rights
Getting Help
- Test Connection:
python tableau_mcp_server.py --test - Debug Mode:
python tableau_mcp_server.py --debug - Check Logs: Look for error messages in terminal output
- Verify MCP:
python -c "import mcp; print('MCP SDK OK')"
📈 Example Conversations
Data Analysis
User: "Show me all workbooks and find the sales data"
Claude: [Lists workbooks] → [Finds sales-related content] → [Extracts data]
User: "Get the customer metrics from the Q4 dashboard as CSV"
Claude: [Locates dashboard] → [Extracts view data] → [Provides CSV]
Administration
User: "Who has access to our Finance workbook?"
Claude: [Lists all users and groups with permissions] → [Shows permission levels]
User: "Show me all users who are site administrators"
Claude: [Lists users by role] → [Highlights administrators]
🤝 Contributing
- Fork the repository
- Create a feature branch
- Add your improvements
- Test thoroughly
- Submit a pull request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Built with the Model Context Protocol
- Uses Tableau Server Client
- Designed for Claude Desktop
Ready to supercharge your Tableau workflows with Claude? Get started now! 🎉
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。