Tableau Knowledge MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TABLEAU_SERVER | No | Tableau Cloud server URL, e.g. https://<pod>.online.tableau.com. Any URL from your browser works; the path is stripped. | |
| TABLEAU_TIMEOUT | No | Per-request timeout in seconds. | 60 |
| TABLEAU_PAT_NAME | No | Personal Access Token name. Provide a PAT (TABLEAU_PAT_NAME + TABLEAU_PAT_SECRET) or TABLEAU_AUTH_TOKEN. | |
| TABLEAU_LOG_LEVEL | No | Log level; DEBUG logs each HTTP call (method + URL; never headers, bodies or secrets) to stderr. | INFO |
| TABLEAU_ALLOW_HTTP | No | Set to 1 to allow a plain http:// server on a trusted network. Otherwise only HTTPS (or loopback) is allowed. | off |
| TABLEAU_AUTH_TOKEN | No | Advanced: a pre-obtained X-Tableau-Auth session token instead of a PAT. Provide a PAT (TABLEAU_PAT_NAME + TABLEAU_PAT_SECRET) or TABLEAU_AUTH_TOKEN. | |
| TABLEAU_PAT_SECRET | No | Personal Access Token secret: the whole string, do not split on ':'. Provide a PAT (TABLEAU_PAT_NAME + TABLEAU_PAT_SECRET) or TABLEAU_AUTH_TOKEN. | |
| TABLEAU_API_VERSION | No | REST version used for sign-in; otherwise read from serverinfo. (The Knowledge API itself is always v1.) | |
| TABLEAU_SITE_CONTENT_URL | No | Site slug (the part after /#/site/). | |
| TABLEAU_KNOWLEDGE_GRAPH_ID | No | Default graph for every tool. server_info lists the site's graphs; each tool also takes a graph_id. Defaults to the primary graph. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| server_infoA | Report the connected Tableau site and its knowledge graphs: server URL, site, product
version, auth method, whether Tableau Knowledge is available, and every graph (id, name,
status, is_primary). Good first call: it confirms the connection and gives the graph ids the
other tools accept as |
| search_nodesA | Find graph nodes by MEANING (semantic search), not exact name: "revenue" can match a
field named "Net Sales". Returns ranked matches with a 0-1 |
| get_nodeA | Get one node with its properties, its semantic statements (the business context attached
to it), and the child nodes it points to ( |
| list_edgesA | List the edges around one node, each with its |
| lineageA | The lineage neighborhood of a node: every node reachable within 10 steps, upstream AND downstream, along lineage/dependency edges (LINEAGE, DEPENDS_ON), e.g. a data source and the workbooks built on it. Answers "where does this come from?" and "what uses it?". |
| impact_analysisA | What breaks if this changes: every asset that depends on the node, directly OR transitively (up to 10 steps, following DEPENDS_ON), e.g. the calcs, sheets, dashboards and workbooks downstream of a column. The node itself is not included. |
| list_sourcesA | List the published data sources and workbooks connected to the knowledge graph, i.e. what
the graph has been built from. |
| search_semantic_contextsA | List semantic contexts: the business statements (definitions, rules, caveats) attached to the graph. Includes user-managed (SEMANTIC_CONTEXT, editable) and Tableau-managed (SEMANTIC_CONTEXT_EXTERNAL, read-only) contexts. |
| graph_healthA | Graph-health report: a 0-100 |
| create_semantic_contextA | WRITE: attach business context (one or more statements, 5-1000 characters each) to the knowledge graph, e.g. "Net Sales excludes returns and is reported in EUR." |
| update_semantic_contextA | WRITE: change a user-managed semantic context ( |
| delete_semantic_contextA | WRITE: delete a user-managed semantic context and its statements. Only semantic contexts created through Tableau Knowledge can be deleted; ids of other nodes are ignored, and Tableau-managed (SEMANTIC_CONTEXT_EXTERNAL) contexts are refused. |
| export_to_ossieA | Export a published data source's semantic model to Apache Ossie (formerly OSI) YAML, the
vendor-neutral format that Snowflake, dbt, Power BI, Databricks, Tableau Next and other tools
convert from. Returns |
| validate_ossieA | Validate an Apache Ossie (formerly OSI) model, given as YAML or JSON text, against the
official JSON Schema (0.2.0.dev0, bundled) and the spec's semantic rules: duplicate names,
keys and relationship columns that are not declared fields, unknown datasets, qualified names
in dataset-scoped metrics. 0.1.1 documents ( |
| import_from_ossieA | Bring the business meaning of an Apache Ossie (formerly OSI) model into Tableau Knowledge
as semantic contexts. WRITES only when |
| ossie_guideA | Reference for Apache Ossie (formerly Open Semantic Interchange, OSI), the open standard for
semantic models: what it is and its versions, the object model and rules, expressions and
dialects, how Tableau maps onto it, relationships, ai_context, extensions, validation, the
converters for other platforms (with exact commands), and a porting playbook with pitfalls.
Read it before hand-editing a model or advising on a port. |
| check_business_preferencesA | Check a Tableau Business Preferences file (the "# rule" lines Tableau's agent reads before it
answers) so every line is one the agent will actually follow. Call it with no |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| export_datasource_to_ossie | Export a Tableau published data source to an Apache Ossie (OSI) semantic model, ready to port. |
| import_ossie_into_tableau_knowledge | Bring an Apache Ossie (OSI) model's descriptions, synonyms and definitions into Tableau Knowledge. |
| write_business_preferences | Draft a Tableau Business Preferences file for a dashboard (or Tableau Next model), checked line by line. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 17 tools
Most tools target clearly distinct actions: graph traversal (lineage, impact_analysis, list_edges, get_node), semantic-context CRUD, and the Ossie pipeline are well separated by descriptions. The only mild overlap is between get_node's connected_nodes, list_edges, and lineage when inspecting a node's neighborhood, but the descriptions explicitly guide which to use for what (one-hop vs. wide neighborhood vs. impact).
Consistent snake_case, but mixing verb_noun tools (search_nodes, get_node, create_semantic_context, validate_ossie) with noun-only names (lineage, impact_analysis, graph_health, server_info, ossie_guide). Readable, but the pattern is not predictable enough to reliably infer a tool's action from its name.
17 tools sits at the heavy end of the 16-25 borderline band. The set covers three substantial areas (graph exploration, semantic-context CRUD, Ossie import/export/validate, plus preference checking), which justifies some breadth, but a few tools could plausibly be consolidated.
Semantic contexts have full create/update/delete coverage and are discoverable via search_semantic_contexts; the graph side has search, get, edges, lineage, impact, health and sources; the Ossie side has export, validate and import. Minor gaps: no direct single-context read by id and no explicit enumeration of nodes without a semantic search term.