mcpField
K
Keboola MCP Server

Keboola MCP Server

ローカル
github.com/keboolaデータ・分析85今日更新

Keboola MCP Server について

Keboola MCP Server は AI ツールを Keboola プロジェクトに接続し、エージェント経由でデータを照会・管理するチーム向けです。ストレージ、SQL 変換、ジョブ、ワークフロー、メタデータ、開発ブランチを扱い、ホスト型とローカルの構成を選べます。

主な機能

  1. 01ストレージテーブルの照会と説明の管理
  2. 02コンポーネント設定の作成と確認
  3. 03自然言語による SQL 変換の作成
  4. 04ジョブの実行と結果詳細の確認
  5. 05ワークフローパイプラインの構築と管理
  6. 06開発ブランチでの操作

活用シーン

  1. 01AI クライアントから Keboola データを照会
  2. 02変換を実行してジョブ結果を確認
  3. 03データワークフローの作成と管理
  4. 04開発ブランチでプロジェクト変更をテスト

MCP 対応

Keboola のストレージ、変換、ジョブ、ワークフロー、データアプリ、メタデータ操作を MCP クライアント向けのツールとして公開します。OAuth 対応のホスト型リモートサーバーと、stdio または streamable HTTP によるローカル実行に対応します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"keboola": {
"command": "uvx",
"args": [
"keboola_mcp_server"
]
}
}
}
起動コマンドuvx keboola_mcp_server

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypikeboola_mcp_server

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

翻訳後に原文が更新されています。最新の内容は原文をご確認ください。

DeepWiki に質問

Keboola MCP サーバー

AI エージェント、MCP クライアント(Cursor、Claude、Windsurf、VS Code など)、その他の AI アシスタントを Keboola に接続できます。データ、変換、SQL クエリ、ジョブのトリガーを公開でき、接着コードは不要です。エージェントが必要とするデータを、必要なときに必要な場所へ届けます。

概要

Keboola MCP サーバーは、Keboola プロジェクトと最新の AI ツールをつなぐオープンソースのブリッジです。ストレージへのアクセス、SQL 変換、ジョブのトリガーなどの Keboola の機能を、Claude、Cursor、CrewAI、LangChain、Amazon Q などから呼び出せるツールに変換します。

機能

AI エージェントと MCP サーバーを使用すると、次のことができます。

  • ストレージ:テーブルに直接クエリを実行し、テーブルやバケットの説明を管理します
  • コンポーネント:エクストラクター、ライター、データアプリ、変換設定を作成、一覧表示、確認します
  • SQL:自然言語で SQL 変換を作成します
  • ジョブ:コンポーネントや変換を実行し、ジョブ実行の詳細を取得します
  • フロー:条件付きフローとオーケストレーターフローを使用して、ワークフローパイプラインを構築、管理します。
  • データアプリ:ストレージデータに対するクエリを表示する Keboola Streamlit データアプリを作成、デプロイ、管理します。
  • メタデータ:自然言語を使用して、プロジェクトのドキュメントやオブジェクトのメタデータを検索、読み取り、更新します
  • 開発ブランチ:本番環境外の開発ブランチで安全に作業できます。すべての操作は選択したブランチに限定されます。

🚀 クイックスタート:リモート MCP サーバー(最も簡単な方法)

Keboola MCP サーバーを最も簡単に使う方法は、リモート MCP サーバーを利用することです。このホスト型ソリューションを使えば、ローカルでのセットアップ、設定、インストールは不要です。

リモート MCP サーバーとは?

リモートサーバーは、すべてのマルチテナント Keboola スタックでホストされており、OAuth 認証に対応しています。リモート Streamable HTTP 接続と OAuth 認証に対応する AI アシスタントであれば、どれからでも接続できます。

接続方法
  1. リモートサーバーの URL を取得する:Keboola のプロジェクト設定 → MCP Server タブに移動します
  2. サーバーの URL をコピーする:https://mcp.<YOUR_REGION>.keboola.com/mcp のような URL です
  3. AI アシスタントを設定する:URL を AI アシスタントの MCP 設定に貼り付けます
  4. 認証する:Keboola アカウントでのログインを求められます。作業対象のプロジェクトは、その後、会話の中で選択します(例:「自分の Keboola プロジェクトを一覧表示して」/「プロジェクト X を使って」)
対応クライアント
  • Cursor:プロジェクトの MCP Server 設定で「Install In Cursor」ボタンを使うか、こちらのボタンをクリックします MCP サーバーをインストール
  • Claude Desktop:設定 → インテグレーションから連携を追加します
  • Claude Code:claude mcp add --transport http keboola <URL> を使ってインストールします(詳細は以下を参照)
  • Windsurf:リモートサーバーの URL を設定します
  • Make:リモートサーバーの URL を設定します
  • その他の MCP クライアント:リモートサーバーの URL を設定します
Claude Code のセットアップ

Claude Code は、ターミナルを使って Claude とやり取りできるコマンドラインインターフェースツールです。簡単なコマンドで Keboola MCP Server の統合をインストールできます。

インストール:

<YOUR_REGION> を Keboola のリージョンに置き換えて、ターミナルで次のコマンドを実行します。

claude mcp add --transport http keboola https://mcp.<YOUR_REGION>.keboola.com/mcp

リージョンごとのコマンド:

リージョンインストールコマンド
US Virginia AWSclaude mcp add --transport http keboola https://mcp.keboola.com/mcp
US Virginia GCPclaude mcp add --transport http keboola https://mcp.us-east4.gcp.keboola.com/mcp
EU Frankfurt AWSclaude mcp add --transport http keboola https://mcp.eu-central-1.keboola.com/mcp
EU Ireland Azureclaude mcp add --transport http keboola https://mcp.north-europe.azure.keboola.com/mcp
EU Frankfurt GCPclaude mcp add --transport http keboola https://mcp.europe-west3.gcp.keboola.com/mcp

使い方:

インストール後、会話で /mcp と入力し、使用する Keboola のツールを選択すると、Claude Code で Keboola MCP Server を使用できます。

認証:

Claude Code で Keboola MCP Server を初めて使用すると、ブラウザーウィンドウが開き、次の操作を求められます。

  1. Keboola アカウントにログインする
  2. 接続を承認する

認証後は、Claude Code から Keboola のツールを直接使用できます。プロジェクトの選択はその後、会話の中で行います。使用する Keboola のプロジェクトを Claude に尋ねてください。

詳しいセットアップ手順とリージョンごとの URL については、リモートサーバーのセットアップに関するドキュメントをご覧ください。

開発ブランチの使用

Keboola の開発ブランチを使用すると、本番データに影響を与えずに安全に作業できます。リモートでホストされている MCP Servers は KBC_BRANCH_ID パラメーターを認識し、すべての操作を指定されたブランチに限定します。UI で開発ブランチに移動すると、URL から開発ブランチ ID を確認できます。例:https://connection.us-east4.gcp.keboola.com/admin/projects/PROJECT_ID/branch/BRANCH_ID/dashboard。ブランチ ID は、ヘッダー X-Branch-Id: <branchId> を使用して各リクエストに含める必要があります。含めない場合、MCP Server はデフォルトで本番ブランチを使用します。これは、AI クライアントまたはサーバー接続を管理する環境で処理する必要があります。

ツールの認可とアクセス制御

HTTP ベースのトランスポート(Streamable HTTP)を使用する場合、HTTP ヘッダーを使ってクライアントが利用できるツールを制御できます。これは、AI エージェントの機能を制限したり、コンプライアンスポリシーを適用したりする場合に便利です。

認可ヘッダー
ヘッダー説明例
X-Allowed-Tools許可するツールのカンマ区切りリストget_configs,get_buckets,query_data
X-Disallowed-Tools除外するツールのカンマ区切りリストcreate_config,run_job
X-Read-Only-Mode読み取り専用ツールのみに制限しますtrue、1、または yes
フィルターの動作

フィルターは、許可 → 読み取り専用との積集合 → 除外の順に適用されます。ヘッダーが空の場合、制限はありません。

読み取り専用ツール

読み取り専用ツールとは、readOnlyHint=True が注釈されているツールです。これらのツールは、Keboola プロジェクトに変更を加えずに情報を取得するだけです。現在の読み取り専用ツールの一覧については、実際のツールセットから自動生成されたスナップショットである TOOLS.md ファイルをご覧ください。

例:読み取り専用アクセス
X-Read-Only-Mode: true
ツールの読み込みの遅延
ヘッダー説明例
X-Deferred-Tools_meta["anthropic/alwaysLoad"] = false を指定して一覧表示するツールのカンマ区切りリストrun_sync_action,get_flow_schema

alwaysLoad: true を指定してサーバーを登録する Claude Code/Claude Agent SDK クライアントでは、これらのツールは定義を事前に読み込まず、ツール検索で呼び出すまで読み込みが遅延されます。このヘッダーが変更するのは tools/list のメタデータだけであり、ツールを非表示にしたり、使用を許可したりするものではありません。ヘッダーが空の場合、または未知のツール名が指定された場合は、変更されません。

詳しいドキュメントについては、developers.keboola.com/integrate/mcp/#tool-authorization-and-access-control をご覧ください。


ローカル MCP サーバーのセットアップ(カスタムまたは開発向け)

完全な制御と手軽な開発のために、MCP サーバーを自分のマシンで実行します。ツールをカスタマイズしたい場合、ローカルでデバッグしたい場合、または素早く反復開発したい場合に、この方法を選んでください。サーバーをインストールし、認証して(ブラウザーで一度ログインするだけで、貼り付けるトークンはありません)、起動します。この方法は最大限の柔軟性(カスタムツール、ローカルログ、オフラインでの反復開発)が得られる一方で、手動でのセットアップが必要で、更新やシークレットは自分で管理します。

サーバーは複数のトランスポート方式に対応しており、サーバーの起動時に --transport <transport> 引数を指定して選択できます。

  • stdio - --transport を指定しない場合のデフォルトです。標準入力/出力を使用し、通常は単一のクライアントを使うローカルデプロイで利用します。
  • streamable-http - HTTP と双方向ストリーミングチャネルを介してサーバーをリモートで実行し、クライアントとサーバーが継続的にメッセージを交換できるようにします。/mcp(例:http://localhost:8000/mcp)に接続します。
  • http-compat - streamable-http のエイリアスで、後方互換性のために維持されています。

Keboola プロジェクトを操作するには、サーバーに必要なものが 2 つあります。Keboola リージョン(KBC_STORAGE_API_URL)と、認証手段です。推奨される方法は、ブラウザーで一度ログインすることです。トークンを作成、コピー、貼り付ける必要はありません。必要に応じて KBC_BRANCH_ID を設定すると、開発ブランチ内で作業できます。

一部の変数はリクエストヘッダーから取得されません。

  • KBC_STORAGE_API_URL:独自の Storage API URL(--api-url パラメーターまたは KBC_STORAGE_API_URL 環境変数)を指定して起動したサーバーは、その Keboola スタックのみを提供します。別のホストを要求する X-Storage-Api-Url ヘッダーは無視され(警告がログに記録されます)、サーバーはリクエストに対して独自の URL を使い続けます。リクエストごとにスタックを選べるようにするには、独自の Storage API URL を指定せずにサーバーを起動してください。
  • KBC_KUBERNETES_TOKEN_PATH(デプロイ済みサーバーのみ。docs/kubernetes-sa-auth.md を参照):環境からのみ読み取られ、ヘッダーから読み取られることはありません。
  • KBC_WORKSPACE_ID/KBC_WORKSPACE_SCHEMA:上記の Storage API URL と同じ考え方です。独自のワークスペース固定値(いずれかの変数、または --workspace-id による指定)を使って起動したサーバーは、すべてのリクエストでその固定値を使い続けます。別のワークスペースを要求する X-Workspace-Id または X-Workspace-Schema ヘッダーは無視され(警告がログに記録されます)。独自の固定値がないサーバー(共有マルチユーザーの場合)は、以下の説明のとおり、リクエストごとにリクエストから固定値を取得します。
ログイン

ブラウザーで一度サインインすると、サーバーがセッションを保存して自動的に更新するため、トークンを管理する必要はありません。

uvx keboola_mcp_server login --api-url https://connection.YOUR_REGION.keboola.com

ブラウザーが開き、Keboola にサインインすると、スタック全体で使うセッションが ~/.keboola/mcp/credentials.json に保存されます(自分だけが読み取り可能で、スタックごとに 1 エントリーです)。その後は、KBC_STORAGE_API_URL だけを設定してサーバーを起動できます。トークンは不要です。作業するプロジェクトはログイン時ではなく、会話の中で(get_accessible_projects / set_project_scope)後から選択します。

コマンド機能
login --api-url <url>スタックにサインインします
login --force再度サインインします/アカウントを切り替えます
login --show-token現在のセッショントークンを表示します(デバッグ用)
logout [--api-url <url>] [--all]スタックの保存済みセッションを削除します(またはすべてのスタックのセッションを削除します)

保存済みセッションがない状態で、対話型ターミナルの stdio 経由でサーバーを起動すると、初回起動時にこのブラウザーログインが自動的に実行されます。MCP クライアント(Claude、Cursor など)はブラウザーを開けないバックグラウンドでサーバーを起動するため、先に一度 login を実行してください。

Keboola アカウントを使わずに起動する

KBC_STORAGE_API_URL だけを設定し、認証情報なしでサーバーを起動することもできます。サーバーはブートストラップモードで起動します。Keboola へのアクセスが必要なツールは認証情報の取得方法を説明し、認証情報なしで使えるツールは create_project だけです。このツールは新しい Keboola プロジェクトを作成し、セッションをそのプロジェクトにサインインさせ、確認用 URL を返します。ブラウザーでその URL を開いてサインインすると、プロジェクトが永続的に自分のものになります。それまでは一時的なプロジェクトであり、Keboola に回収される場合があります。確認が完了すると、ツールが作成したセッションは失効し、その後は自分の login を使って続行します。

この機能には、エージェントのプロビジョニングが有効になっているスタックが必要です。それ以外の環境では、このツールは利用できないことを通知します。

サーバーをまったく実行せず、リモートホスト型の MCP サーバーを使って同じことを行うこともできます。ただし、その運営者がこの機能(KBC_ALLOW_ANONYMOUS_PROVISIONING)を有効にしている必要があります。このようなデプロイでは、認証情報を必要としない https://mcp.<stack>/mcp-anonymous も提供されます。認証なしでクライアントの接続先に指定して create_project を呼び出し、その呼び出しで作成されたプロジェクトで作業を続けてください。サーバーが認証情報を保持し、後続の呼び出しで再送するための不透明な scope_token をツールが返します。通常の /mcp エンドポイントが認証されていないリクエストを拒否し続けられるよう、別の URL が用意されています。この拒否によって、MCP クライアントは OAuth ログインを開始できます。プロジェクトを自分のものとして確保したら、/mcp に切り替え、所有者となったアカウントでサインインしてください。

ブラウザーなしで認証する

ブラウザーログインを利用できないコンテナや CI 環境では、Keboola のアクセス・トークンまたはパーソナル・アクセストークンを直接指定します。プロジェクトを選択するには、KBC_PROJECT_ID(または X-KBC-ProjectId ヘッダー)とともに、KBC_STORAGE_TOKEN(環境変数)を設定するか、X-StorageAPI-Token ヘッダーを送信してください。HTTP トランスポートでは、これらをリクエストごとにヘッダーとして指定できるため、各リクエストにそれぞれの認証情報を含められます。

KBC_WORKSPACE_ID

スキーマに基づく上記の検索の代わりに、すでに存在する特定のワークスペースを ID で指定し、クエリをそのワークスペースに固定します。両方が設定されている場合は、KBC_WORKSPACE_SCHEMA より優先されます。これは Data App/kai-agent の呼び出し元が X-Workspace-Id ヘッダーとして指定するオプションであり、そのアプリに埋め込まれた Kai が自身のワークスペースだけを使ってクエリを実行するようにします。

KBC_WORKSPACE_ID 環境変数、--workspace-id CLI フラグ、または(マルチユーザーデプロイメント向けの)リクエストごとの X-Workspace-Id ヘッダーで設定します。

KBC_STORAGE_API_URL(Keboola リージョン)

Keboola リージョンの API URL は、デプロイ先のリージョンによって異なります。Keboola プロジェクトにログインしたときにブラウザーに表示される URL から、リージョンを確認できます。

リージョンAPI URL
AWS North Americahttps://connection.keboola.com
AWS Europehttps://connection.eu-central-1.keboola.com
Google Cloud EUhttps://connection.europe-west3.gcp.keboola.com
Google Cloud UShttps://connection.us-east4.gcp.keboola.com
Azure EUhttps://connection.north-europe.azure.keboola.com
KBC_BRANCH_ID(任意)

特定の Keboola 開発ブランチで操作するには、KBC_BRANCH_ID パラメーターを使ってブランチ ID を設定します。MCP サーバーの機能は指定したブランチに限定されるため、すべての変更が分離され、本番ブランチに影響しません。

  • 指定しない場合、サーバーはデフォルトで本番ブランチを使用します。
  • 開発作業では、KBC_BRANCH_ID にブランチの数値 ID(例:123456)を設定します。開発ブランチの ID は、UI で開発ブランチに移動したときの URL で確認できます。例:https://connection.us-east4.gcp.keboola.com/admin/projects/PROJECT_ID/branch/BRANCH_ID/dashboard。
  • リモートトランスポートでは、HTTP ヘッダー X-Branch-Id: <branchId> または KBC_BRANCH_ID: <branchId> を使ってリクエストごとに上書きできます。
インストール

以下を用意してください。

  • Python 3.10+ がインストールされている
  • 管理者権限のある Keboola プロジェクトへのアクセス
  • お好みの MCP クライアント(Claude、Cursor など)

注:uv がインストールされていることを確認してください。MCP クライアントは uv を使って Keboola MCP Server を自動的にダウンロードして実行します。 uv のインストール:

macOS/Linux:

#if homebrew is not installed on your machine use:
# /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install using Homebrew
brew install uv

Windows:

# Using the installer script
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

# Or using pip
pip install uv

# Or using winget
winget install --id=astral-sh.uv -e

その他のインストール方法については、uv の公式ドキュメントを参照してください。

Keboola MCP Server の実行

ニーズに応じて、Keboola MCP Server を使用する方法は 4 つあります。

オプション A:統合モード(推奨)

このモードでは、Claude または Cursor が MCP サーバーを自動的に起動します。

  1. セッションを保存するため、ターミナルで一度ログインします(クライアントは、ブラウザーを開けないバックグラウンドでサーバーを起動します)。
    uvx keboola_mcp_server login --api-url https://connection.YOUR_REGION.keboola.com
    
  2. 以下の設定で MCP クライアント(Claude/Cursor)を設定します。必要なのは KBC_STORAGE_API_URL のみです。
  3. 必要に応じて、クライアントが MCP サーバーを自動的に起動します。
Claude Desktop の設定
  1. Claude の「Settings」(画面左上)→「Developer」→「Edit Config」に移動します(claude_desktop_config.json が表示されない場合は作成してください)。
  2. 以下の設定を追加します。
  3. 変更を反映するため、Claude desktop を再起動します。
{
  "mcpServers": {
    "keboola": {
      "command": "uvx",
      "args": ["keboola_mcp_server --transport <transport>"],
      "env": {
        "KBC_STORAGE_API_URL": "https://connection.YOUR_REGION.keboola.com",
        "KBC_BRANCH_ID": "your_branch_id_optional"
      }
    }
  }
}

設定ファイルの場所:

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
Cursor の設定
  1. 「Settings」→「MCP」に移動します。
  2. 「+ Add new global MCP Server」をクリックします。
  3. 以下の設定を行います。
{
  "mcpServers": {
    "keboola": {
      "command": "uvx",
      "args": ["keboola_mcp_server --transport <transport>"],
      "env": {
        "KBC_STORAGE_API_URL": "https://connection.YOUR_REGION.keboola.com",
        "KBC_BRANCH_ID": "your_branch_id_optional"
      }
    }
  }
}

注:MCP サーバーには、短く説明的な名前を付けてください。ツール名にはサーバー名が含まれ、約 60 文字以内にする必要があるため、名前が長いと Cursor でフィルタリングされ、エージェントに表示されないことがあります。

Windows WSL 向け Cursor の設定

Windows Subsystem for Linux から Cursor AI で MCP サーバーを実行する場合は、次の設定を使用します。

{
  "mcpServers": {
    "keboola":{
      "command": "wsl.exe",
      "args": [
          "bash",
          "-c '",
          "export KBC_STORAGE_API_URL=https://connection.YOUR_REGION.keboola.com &&",
          "export KBC_BRANCH_ID=your_branch_id_optional &&",
          "/snap/bin/uvx keboola_mcp_server --transport <transport>",
          "'"
      ]
    }
  }
}
オプション B:ローカル開発モード

MCP サーバーのコード自体を開発する場合:

  1. リポジトリをクローンし、ローカル環境をセットアップします。
  2. Claude/Cursor がローカルの Python パスを使用するように設定します。
{
  "mcpServers": {
    "keboola": {
      "command": "/absolute/path/to/.venv/bin/python",
      "args": [
        "-m",
        "keboola_mcp_server --transport <transport>"
      ],
      "env": {
        "KBC_STORAGE_API_URL": "https://connection.YOUR_REGION.keboola.com",
        "KBC_BRANCH_ID": "your_branch_id_optional"
      }
    }
  }
}
オプション C:手動 CLI モード(テスト専用)

テストやデバッグのために、ターミナルでサーバーを手動で実行できます。

# Sign in once (stores a session under ~/.keboola/mcp), then start the server.
export KBC_STORAGE_API_URL=https://connection.YOUR_REGION.keboola.com
uvx keboola_mcp_server login --api-url "$KBC_STORAGE_API_URL"

uvx keboola_mcp_server --transport streamable-http

Note:このモードは、主にデバッグやテストを目的としています。Claude または Cursor で通常どおり使用する場合、 サーバーを手動で実行する必要はありません。

Note:サーバーは Streamable HTTP トランスポートを使用し、/mcp での接続を受け付けるために localhost:8000 で待ち受けます。 --port と --host パラメーターを使用して、別の場所で待ち受けるように設定できます。

オプション D:Docker の使用

コンテナからブラウザーを開くことはできないため、トークンを使って認証してください(ブラウザーを使わない認証を参照)。KBC_STORAGE_TOKEN に Keboola のアクセストークンまたは個人用アクセストークンを設定し、KBC_PROJECT_ID に対象プロジェクトを設定します。(HTTP 経由の場合は、代わりにリクエストごとに X-StorageAPI-Token / X-KBC-ProjectId ヘッダーを渡し、これらの設定を省略できます。)

docker pull keboola/mcp-server:latest

docker run \
  --name keboola_mcp_server \
  --rm \
  -it \
  -p 127.0.0.1:8000:8000 \
  -e KBC_STORAGE_API_URL="https://connection.YOUR_REGION.keboola.com" \
  -e KBC_STORAGE_TOKEN="YOUR_KEBOOLA_TOKEN" \
  -e KBC_PROJECT_ID="YOUR_PROJECT_ID" \
  -e KBC_BRANCH_ID="YOUR_BRANCH_ID_OPTIONAL" \
  keboola/mcp-server:latest \
  --transport streamable-http \
  --host 0.0.0.0

Note:サーバーは Streamable HTTP トランスポートを使用し、/mcp での接続を受け付けるために localhost:8000 で待ち受けます。 -p を変更すると、コンテナのポートを別の場所に割り当てられます。

サーバーを自分で起動する必要はありますか?
シナリオ手動での実行が必要ですか?使用する設定
Claude/Cursor の使用いいえアプリの設定で MCP を構成
MCP のローカル開発いいえ(Claude が起動します)設定で Python のパスを指定
CLI の手動テストはいターミナルで実行
Docker の使用はいDocker コンテナを実行

MCP サーバーの使用

MCP クライアント(Claude/Cursor)の設定と起動が完了したら、Keboola のデータに対するクエリを開始できます。

設定を確認する

まず、簡単なクエリを実行して、すべてが正常に動作していることを確認できます。

What buckets and tables are in my Keboola project?
実行できることの例

データの探索:

  • 「顧客情報が含まれるテーブルはどれですか?」
  • 「収益上位 10 社の顧客を見つけるクエリを実行して」

データ分析:

  • 「前四半期の売上データを地域別に分析して」
  • 「顧客の年齢と購入頻度の相関を見つけて」

データパイプライン:

  • 「顧客テーブルと注文テーブルを結合する SQL 変換を作成して」
  • 「Salesforce コンポーネントのデータ抽出ジョブを開始して」

互換性

MCP クライアントのサポート
MCP クライアントサポート状況接続方法
Claude(デスクトップおよび Web)✅ 対応stdio
Cursor✅ 対応stdio
Windsurf、Zed、Replit✅ 対応stdio
Codeium、Sourcegraph✅ 対応Streamable HTTP
カスタム MCP クライアント✅ 対応Streamable HTTP または stdio

サポート対象のツール

注: AI エージェントは新しいツールに自動的に対応します。

利用可能なツールの完全な一覧と、詳細な説明、パラメーター、使用例については、TOOLS.mdを参照してください。

トラブルシューティング

よくある問題
問題解決策
認証エラーkeboola_mcp_server login を再実行します(トークンで認証する場合は、トークンと KBC_PROJECT_ID を確認してください)
接続タイムアウトネットワーク接続を確認してください

開発

インストール

基本セットアップ:

uv sync --extra dev

基本セットアップでは、uv run tox を使用してテストを実行し、コードスタイルをチェックできます。

推奨セットアップ:

uv sync --extra dev --extra tests --extra integtests --extra codestyle

推奨セットアップでは、テストとコードスタイルのチェック用パッケージがインストールされるため、 VsCode や Cursor などの IDE で、開発中にコードをチェックしたり、テストを実行したりできます。

統合テスト

ローカルで統合テストを実行するには、uv run tox -e integtests を使用してください。 注:次の環境変数を設定する必要があります。

  • INTEGTEST_POOL_STORAGE_API_URL
  • INTEGTEST_STORAGE_TOKENS
  • INTEGTEST_STORAGE_TOKEN_STORAGE_BRANCHES

これらの値を取得するには、統合テスト専用の Keboola プロジェクトが必要です。 テストセッションごとに独自の読み取り専用ワークスペースが作成されるため、ワークスペースのスキーマを 設定する必要はありません。詳しいセットアップ手順と設計ドキュメントについては、integtests/README.md を参照してください。

uv.lock の更新

依存関係を追加または削除した場合は、uv.lock ファイルを更新してください。また、リリースを作成する際は、依存関係を新しいバージョンに更新することも検討してください(uv lock --upgrade)。

ツールのドキュメントの更新

ツールの説明(ツール関数の docstring)を変更した場合は、変更を反映するために TOOLS.md ドキュメントファイルを再生成する必要があります。

uv run python -m src.keboola_mcp_server.generate_tool_docs
リリース

マージされた PR ごとにリリースを作成するわけではありません。変更は継続的にトランク(main)に取り込まれ、変更をまとめて再テストした後、定期的にリリースします。これにより、ユーザーの既存の環境が壊れるのを防ぎます。

リリースは、次の 1 つまたは 2 つの git タグをプッシュして行います。

  • vX.Y.Z — MCP サーバーのリリース(必須)
  • agent-vX.Y.Z — In Platform Agent のリリース(エージェントもリリースする場合のみ)

どちらのタグでも release.yml CI が起動し、Docker イメージをビルドして公開します。KaiBench が実行されるのは、本番用の vX.Y.Z タグの場合のみです(agent-vX.Y.Z および -dev. のプレリリースでは実行されません)。release-notes スキルを使用してください。このスキルはリリースノートとドラフト PR を準備し、vX.Y.Z と agent-vX.Y.Z の両方にタグを付ける手順を案内します。

サポートとフィードバック

⭐ ヘルプの依頼、バグの報告、機能のリクエストには、GitHub で issue を作成するのが主な方法です。⭐

開発チームは issue を積極的に確認し、できるだけ早く返信します。Keboola に関する一般的な情報については、以下のリソースをご利用ください。

リソース

接続

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。