{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_8rptdacmprfy","handle":"tableau-hosted-mcp","url":"https://wellknown.network/agents/tableau-hosted-mcp","links":{"self":"https://wellknown.network/agents/tableau-hosted-mcp/record.json","html":"https://wellknown.network/agents/tableau-hosted-mcp","markdown":"https://wellknown.network/agents/tableau-hosted-mcp/record.md","api":"https://wellknown.network/api/v1/agents/tableau-hosted-mcp","status":"https://wellknown.network/api/v1/agents/tableau-hosted-mcp/status","claim":"https://wellknown.network/agents/tableau-hosted-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/tableau-hosted-mcp/claim.json","badge":"https://wellknown.network/agents/tableau-hosted-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/tableau-hosted-mcp/history","tools":"https://wellknown.network/api/v1/agents/tableau-hosted-mcp/tools"},"ard":{"identifier":"urn:air::server:tableau-hosted-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"tableau-hosted-mcp","summary":"Python SDK for Tableau Hosted MCP","description":"# tableau-hosted-mcp\n\nPython SDK for [Tableau Hosted MCP](https://mcp.tableau.com). Handles OAuth 2.1\nPKCE via a CIMD-registered public client, persists tokens locally, and exposes\nboth an async and sync API plus a `tableau-hosted-mcp` CLI. Ready to drop into an LLM\nagent — the MCP tool schemas map 1:1 to Anthropic and OpenAI tool-use formats.\n\n## Install\n\n```bash\npip install tableau-hosted-mcp\n```\n\nRequires Python 3.11+.\n\n> **Recommended: `pip`, not `uv add`.** The base SDK installs cleanly under\n> either tool, but the `[playground]` extra pulls in Streamlit, which depends\n> on `pyarrow`. `uv add \"tableau-hosted-mcp[playground]\"` runs in project\n> mode and can decide to build `pyarrow` from source — that build often\n> fails on macOS when Anaconda is on your `PATH` because CMake picks up\n> Anaconda's outdated `libarrow.dylib` and tries to link a newer PyArrow\n> against it. Plain `pip install` grabs pre-built wheels and avoids the\n> whole issue. If you want to stay on `uv`, use `uv pip install\n> --only-binary=:all: \"tableau-hosted-mcp[playground]\"` inside a venv\n> instead of `uv add`.\n\n## First run\n\nThe first call opens a browser tab to `sso.online.tableau.com`. Sign in once —\ntokens are persisted to the platform's user-config directory (resolved via\n[platformdirs](https://pypi.org/project/platformdirs/)) and reused on\nsubsequent runs.\n\n| Platform | Default cache directory |\n| --- | --- |\n| macOS | `~/Library/Application Support/tableau-hosted-mcp/` |\n| Linux | `~/.config/tableau-hosted-mcp/` (respects `$XDG_CONFIG_HOME`) |\n| Windows | `%LOCALAPPDATA%\\tableau-hosted-mcp\\tableau-hosted-mcp\\` |\n\nOverride with the `TABLEAU_MCP_CONFIG_DIR` env var if you want tokens on an\nencrypted volume, a shared drive, or an ephemeral location. Storage is a\nSQLite-backed key-value store (via `diskcache` under `py-key-value-aio`); no\nnative binaries, works identically on all three platforms.\n\nThe easiest way to warm up the token cache is:\n\n```bash\ntableau-hosted-mcp login\n```\n\n## Libr…","publisher":{"name":"Mohamed Setit","url":null},"homepage":null,"repository":null,"version":"0.1.1","license":"MIT","protocols":["mcp"],"tags":["tableau","mcp","fastmcp","oauth","cimd","ai"],"pricing":null,"endpoints":[{"url":"pypi:tableau-hosted-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","license":"pypi","summary":"pypi","version":"pypi","description":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"analytics.reporting","name":"Reporting & Dashboards","confidence":1,"provenance":"declared"},{"slug":"security.identity","name":"Identity & Access","confidence":1,"provenance":"declared"}],"categories":["analytics","security"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"tableau-hosted-mcp","registry":"pypi","observedAt":"2026-10-28T23:22:23.133Z","publishedAt":"2026-07-18T10:46:31.278422Z","latestVersion":"0.1.1"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"tableau-hosted-mcp","url":"https://pypi.org/project/tableau-hosted-mcp/","firstSeenAt":"2026-09-10T13:20:39.675Z","fetchedAt":"2026-10-28T23:21:40.278Z","normalizedAt":"2026-10-28T23:21:40.278Z"}]},"firstSeenAt":"2026-09-10T13:20:39.675Z","updatedAt":"2026-10-28T23:22:23.133Z"}