@bossforce.ai/mcp-tableau
v0.1.0
Published
MCP server for the **Tableau Server / Tableau Cloud REST API** (version 3.24). Lists content on a site — workbooks, views and published data sources. A good fit for taking inventory of dashboards and locating the right view or data source.
Readme
@bossforce.ai/mcp-tableau
MCP server for the Tableau Server / Tableau Cloud REST API (version 3.24). Lists content on a site — workbooks, views and published data sources. A good fit for taking inventory of dashboards and locating the right view or data source.
Credentials
| Env | Secret | How to obtain |
| -------------------------- | ------ | --------------------------------------------------------------------------------------------------- |
| TABLEAU_SERVER_URL | no | Base URL of your server or Cloud pod, e.g. https://10ax.online.tableau.com (no trailing path). |
| TABLEAU_SITE_CONTENT_URL | no | The site contentUrl (the name after /site/ in the URL). Use an empty string for the Default site. |
| TABLEAU_PAT_NAME | yes | Name of a Personal Access Token created on your Tableau My Account Settings page. |
| TABLEAU_PAT_SECRET | yes | The token secret, shown only once when the Personal Access Token is created. |
Credentials are read lazily, so the server boots and answers tools/list without them;
calls fail with an auth error until they are set.
Auth
The client signs in with the Personal Access Token (POST /api/3.24/auth/signin) to
obtain a short-lived session token and the site id, caches both, and re-signs in once on a
401. Every content call is scoped to the signed-in site
(/api/3.24/sites/{siteId}/…) and carries the X-Tableau-Auth header.
Tools
| Tool | Arguments | Returns |
| ------------------ | ------------------------------------------------------------------------- | ----------------------------- |
| list_workbooks | pageSize?, pageNumber?, filter?, sort? | { pagination, workbooks } |
| list_views | pageSize?, pageNumber?, includeUsageStatistics?, filter?, sort? | { pagination, views } |
| list_datasources | pageSize?, pageNumber?, filter?, sort? | { pagination, datasources } |
Results are limited to content the token owner can read; non-administrators see only views and data sources they own or have Read permission for.
Develop
pnpm --filter @bossforce.ai/mcp-tableau build
pnpm --filter @bossforce.ai/mcp-tableau testRegenerate the tools/list snapshot after an intentional signature change:
UPDATE_SNAPSHOTS=1 pnpm --filter @bossforce.ai/mcp-tableau test