Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.tdries/tableau-graphql-mcp

PYPI · TABLEAU-GRAPHQL-MCP

Ask any Tableau lineage question, in any MCP client, through the Tableau Metadata API.

+18 this week 88 Trust /100

Last scanned (16 minutes ago)

Scores higher than 91% of PyPI servers

Category Data and Analytics

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security100
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • Runs hatchling.build at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
  • 0 of 28 dependencies flagged as unhealthy. View diagnostics → Pass
Provenance & Transparency100
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to tdries/tableau-graphQL-mcp). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 21 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability67
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 1262 tokens (~180/item across 7 items; 7 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management73
  • Stability observed for 22 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage71
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 0% of tool parameters carry a description.Fail
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 7 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 7 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 67 to 70. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 21 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 60 to 63. That category is still filling its 30-day observation window: 18 days of observed history at the previous scan, 19 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

  • 30 Oct 26 +15
    • Malware scan: unverified → pass ▲ security
  • 29 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 47 to 50. That category is still filling its 30-day observation window: 14 days of observed history at the previous scan, 15 at this one. The score rises as the window fills, whether or not the server changes.

  • 27 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 40 to 43. That category is still filling its 30-day observation window: 12 days of observed history at the previous scan, 13 at this one. The score rises as the window fills, whether or not the server changes.

  • 26 Oct 26 −15
    • Malware scan: pass → unverified ▼ security
  • 25 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed pypi/tableau-graphql-mcp@0.2.0

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem pypi
Reason Verified
Discovered via Registry attestation endpoint
Source repo tdries/tableau-graphQL-mcp
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/tdries/tableau-graphQL-mcp/.github/workflows/release.yml@refs/tags/v0.2.0
Rekor log index 3253733629
Predicate type PyPI publish attestation https://docs.pypi.org/attestations/publish/v1
Subject digest sha256:30ec26e325b8a6e6a12bc322f243422ef89654f15815abc8b876c824a9e6956d

Background: How many MCP packages publish verified provenance →

Install scripts 1 script
Hook Tier Command
build_backend allowlisted hatchling.build

Background: Why install scripts are a supply-chain risk →

Dependencies 28 packages
Packages resolved 28
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 7 exposed · ~1,262 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
graphql_query ~488

Run ANY read-only GraphQL query against the Tableau Metadata API. This is the general-purpose tool; use it for any lineage question. Returns {"data": ..., "errors": ...}. The Metadata API is a GraphQL graph of Tableau content (workbooks, sheets, dashboards, datasources, fields) and, with the Data Management add-on, physical assets (databases, tables, columns) and their upstream/downstream lineage. How to write a correct query: - Filters are EXACT and case-sensitive: `filter: {name: "X"}` or `filter: {nameWithin: ["X","Y"]}` (nameWithin is the only multi/OR match; there is NO substring or regex). - Every list field has a `<name>Connection` variant with `first`/`offset`/`after` + `pageInfo` (page size max 1000). Keep one query under ~20,000 nodes; narrow filters and page. - Fields is an interface; branch with `__typename` and inline fragments (`... on ColumnField { columns { name } }`, `... on CalculatedField { formula }`). - Reach a field's owning workbook via `datasource { ... on EmbeddedDatasource { workbook { name } } }`. - `downstream*` fields (downstreamWorkbooks/Owners, external tables/columns) need Data Management (Tableau Catalog) and are often empty otherwise; then resolve via core lineage (referencedByFields -> sheets -> workbook), or just call the `where_used` tool. Entry points include: workbooks, sheets, dashboards, publishedDatasources, embeddedDatasources, fields, columnFields, calculatedFields, columns, databaseTables, customSQLTables, databases, flows, tableauUsers, dataQualityWarnings. Call `lineage_examples` for ready-made query templates and a schema cheat-sheet, or `introspect_schema` to inspect any type's exact fields. Read-only: mutation and subscription operations are rejected. If a query exceeds the ~20,000-node limit, the response is flagged with `partial_results: true` and a `warning` (it does NOT auto-page an arbitrary query) so you never mistake a truncated result for a complete one.

NameTypeReqDescription
querystringyes–
variables–––

Structured output declared, but exposes no named fields.

No examples provided.

impact_analysis ~184

Full transitive (MULTI-HOP) downstream impact of a column, field, or table. Returns every field that directly OR indirectly depends on it, and all affected sheets, dashboards, workbooks, plus the de-duplicated set of OWNERS to notify before a change. This is the "what breaks if I change/drop this?" tool. Unlike `where_used` (one core-lineage hop), it follows the whole dependency chain — a calc built on a calc built on the column is included. `name` is exact and case-sensitive. Workbooks are derived from downstream sheets/dashboards (the flat downstreamWorkbooks edge is unreliable). If it returns nothing on a site without Data Management, the transitive lineage may not be indexed there — use `where_used` for the direct references.

NameTypeReqDescription
namestringyes–

Structured output declared, but exposes no named fields.

No examples provided.

introspect_schema ~105

Introspect the live Metadata API GraphQL schema (introspection is enabled). With no argument: returns every Query entry point (with its args) and the full list of type names. With `type_name` (e.g. "Column", "Workbook", "DatabaseTable", "CalculatedField"): returns that type's fields, their result types, and args, so you can write a correct query against exactly what this server exposes.

NameTypeReqDescription
type_name–––

Structured output declared, but exposes no named fields.

No examples provided.

lineage_examples ~86

Return a schema cheat-sheet and a library of curated lineage questions with their correct GraphQL queries (+ example variables). Read this before composing a `graphql_query`. Categories: impact, provenance, calc, datasource, search, inventory, governance, ownership. Pass one to filter; omit to get them all. Each example has: question, graphql, variables, notes.

NameTypeReqDescription
category–––

Structured output declared, but exposes no named fields.

No examples provided.

search_content ~156

Find content whose NAME contains `term` (case-insensitive SUBSTRING). Use this when you only know part of a name, since every other tool and the Metadata API filter are exact-match. Searches workbooks, published datasources, and database tables by default. Pass `types` to choose from: "workbook", "datasource", "table", "field", "column". Returns matches grouped by type. It pages through content client-side, so on a very large site it scans the first ~1200 of each type and says so in `note`; once you know the exact name, prefer `graphql_query` or `where_used`.

NameTypeReqDescription
termstringyes–
types–––

Structured output declared, but exposes no named fields.

No examples provided.

server_info ~68

Report the connected Tableau environment: server URL, site, product & REST API version, which Metadata API endpoint is in use, the auth method, and whether external-asset (Data Management / Catalog) lineage appears available. Good first call to confirm the connection and understand what lineage depth to expect.

Input schema present but exposes no named parameters.

Structured output declared, but exposes no named fields.

No examples provided.

where_used ~175

Find which workbooks (and published datasources) USE the given names, the common 'where is this used / impact analysis' question, resolved robustly. `names` are EXACT, case-sensitive names of any of: a Snowflake/DB column, a Tableau field or alias, or a database table. Pass several to check them in one call. Results group by workbook, showing how each matched (column / field / whole table, with schema and source table) and which worksheets use it. This uses CORE lineage (referencedByFields -> field.sheets -> workbook, and field.datasource -> workbook), so it works even without the Data Management add-on where `downstreamWorkbooks` is empty. For other shapes of question, use `graphql_query`.

NameTypeReqDescription
namesarrayyes–

Structured output declared, but exposes no named fields.

No examples provided.

Install

How do I install the io.github.tdries/tableau-graphql-mcp server?

io.github.tdries/tableau-graphql-mcp runs locally as a PyPI package, launched with uvx tableau-graphql-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

pypi · tableau-graphql-mcp

# add to Claude Code
claude mcp add tdries-tableau-graphql-mcp -- uvx tableau-graphql-mcp
Common questions

What is the io.github.tdries/tableau-graphql-mcp server?

io.github.tdries/tableau-graphql-mcp is listed in the public MCP registry as io.github.tdries/tableau-graphql-mcp. Ask any Tableau lineage question, in any MCP client, through the Tableau Metadata API. This page covers its PyPI package (tableau-graphql-mcp).

Is the io.github.tdries/tableau-graphql-mcp server safe to use?

io.github.tdries/tableau-graphql-mcp scores 88 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.tdries/tableau-graphql-mcp server expose?

io.github.tdries/tableau-graphql-mcp exposes 7 tools: graphql_query, introspect_schema, lineage_examples, where_used, impact_analysis, and 2 more. Their descriptions and schemas cost roughly 1,262 tokens of context every time the server is loaded.

Is the io.github.tdries/tableau-graphql-mcp server still maintained?

io.github.tdries/tableau-graphql-mcp is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.github.tdries/tableau-graphql-mcp server under?

io.github.tdries/tableau-graphql-mcp declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.