test-tableau-mcp について
test-tableau-mcpは、Tableau VDSのエンドポイントをMCPサーバー経由で公開するプロトタイプです。Claude Desktopとの接続を想定し、エンドポイント情報、データソースLUID、セッショントークンの設定が必要です。
主な機能
- 01Tableau VDSエンドポイントの公開
- 02Claude Desktopとの接続
- 03データソースとセッショントークンの設定
活用シーン
- 01Claude DesktopからTableau VDSデータソースをクエリ
- 02MCP経由のVDSエンドポイントアクセスの試作
MCP 対応
Tableau VDSエンドポイントをClaude Desktopに提供するMCPサーバーとして動作します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
test-tableau-mcp
このプロジェクトは、Tableau VDS エンドポイントを MCP サーバー経由で公開し、Claude Desktop クライアントと連携させるための簡易プロトタイプです。
この MCP サーバーを実行して Claude Desktop に接続するには、以下の手順に従ってください。これらの手順は、MCP の使い方ガイドを参考にしています。macOS/Linux を使用していることを前提としています。Windows を使用している場合は、上記のガイドを参照してください。
システム要件
Python 3.10 以降がインストールされていること。 Python MCP SDK 1.2.0 以降を使用する必要があります。
環境をセットアップする
まだインストールしていない場合は、UV をインストールしてください。
curl -LsSf https://astral.sh/uv/install.sh | sh
その後、ターミナルを再起動して、uv コマンドが認識されることを確認してください。
次に、仮想環境を作成してセットアップします。
# Create virtual environment and activate it
uv venv
source .venv/bin/activate
# Install dependencies
uv add "mcp[cli]" httpx
必須の環境変数をハードコードする
この簡易プロトタイプでは、vds.py ファイルに次の 4 つの変数をハードコードする必要があります。
VIZQL_API_BASEにクエリ対象のサーバー URLMETADATA_GRAPHQLにクエリ対象のサーバー URLDS_LUIDにクエリ対象のデータソースの LUIDAUTH_TOKENに有効なセッショントークン
サーバーを実行する
uv --directory <ABSOLUTE PATH TO PROJECT> run vds.py
Claude for Desktop でサーバーをテストする
まず、Claude for Desktop がインストールされていることを確認してください。こちらから最新バージョンをインストールできます。すでに Claude for Desktop をお使いの場合は、最新バージョンに更新されていることを確認してください。
使用する MCP サーバーに合わせて Claude for Desktop を設定する必要があります。設定するには、テキストエディターで ~/Library/Application Support/Claude/claude_desktop_config.json にある Claude for Desktop アプリの設定ファイルを開きます。ファイルが存在しない場合は作成してください。
たとえば、VS Code がインストールされている場合は、次のようにします。
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
次に、mcpServers キーにサーバーを追加します。少なくとも 1 つのサーバーが正しく設定されている場合にのみ、MCP の UI 要素が Claude for Desktop に表示されます。
ここでは、次のように vds サーバーを 1 つ追加します。
{
"mcpServers": {
"vds": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/test-tableau-mcp/",
"run",
"vds.py"
]
}
}
}
command フィールドに uv 実行ファイルのフルパスを指定する必要がある場合があります。macOS/Linux では which uv、Windows では where uv を実行すると確認できます。
これにより、Claude for Desktop に次のように伝えます。
「vds」という名前の MCP サーバーがあります。uv --directory /ABSOLUTE/PATH/TO/PARENT/FOLDER/ run vds.py を実行して起動してください。ファイルを保存し、Claude for Desktop を再起動してください。
ツールを呼び出すために Claude でクエリを実行する
VDS API の構文は MCP ツールに明示的に渡されないため、まず、Query オブジェクトを適切にフォーマットする方法を Claude に示すコンテキストサンプルをいくつか渡してセッションを開始してください。samples.py の辞書の配列をコピーして使用できます。次のように Claude に最初のメッセージを送信します。
次の構文に従ってペイロードを生成してください。
in_context_samples = [
{
"fields": [
{ "fieldCaption": "Segment" },
{ "fieldCaption": "Sales", "function": "SUM" }
]
},
{
"fields": [
{ "fieldCaption": "Category" },
{ "fieldCaption": "Profit", "function": "SUM", "sortDirection": "DESC" }
]
},
{
"fields": [
{ "fieldCaption": "State/Province" },
{ "fieldCaption": "Sales", "function": "SUM", "sortDirection": "DESC" }
],
"filters": [
{
"field": { "fieldCaption": "Segment" },
"filterType": "SET",
"values": ["Consumer"],
"exclude": false
},
{
"field": { "fieldCaption": "Order Date" },
"filterType": "RANGE",
"min": "2021-01-01",
"max": "2021-12-31"
}
],
"limit": 5
}
]
do the states with the most sales also have the most profit?
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。