この記事では、以下を紹介します。
- watsonx.data のMCPサーバーで何ができるか
- リモートMCPサーバーの接続設定手順
- IBM Bob から実際にデータ分析してみた例
watsonx.data (SaaS版) で MCPサーバーの提供が開始されました!
ローカルとリモート共に利用可能です。
この MCPサーバーを使うことで、AI Agentから自然言語で watsonx.data のデータをクエリしたり、操作することが可能になります。
当記事ではIBM Cloudのwatsonx.data(SaaS版)のリモートMCPサーバーをIBM Bobに設定し、IBM BobをAI Agentとして実際にデータ分析をした方法を説明します。尚、今回は説明しませんが、当然Claude Desktopなどからも呼び出し可能です。
1. watsonx.data MCPサーバーの機能
IBM watsonx.data MCPサーバーは、以下の機能を提供します。
(Interacting with data through an MCP serverより翻訳して引用)
-
エンジン管理(Engine management)
- Presto および Spark エンジンのフルライフサイクル管理(作成、更新、スケール、停止、一時停止、再開、再起動、削除)
- エンジンの検出およびステータス監視
-
カタログ操作(Catalog operations)
- 複数カタログにまたがるスキーマおよびテーブルの検出
- テーブル構造の確認およびメタデータの参照
- スキーマ作成およびテーブル変更(テーブル名の変更、カラムの追加およびリネーム)
-
クエリ実行(Query execution)
- SELECT クエリによる読み取り操作
- INSERT および UPDATE クエリによる書き込み操作(※ DELETE はサポートされていません)
- EXPLAIN および EXPLAIN ANALYZE によるクエリ最適化
-
Spark アプリケーション(Spark applications)
- Spark ジョブ(JAR、Python、R)のサブミットおよび管理
- アプリケーションのステータスおよび進捗監視
- 実行中アプリケーションの制御
-
データ取り込み(Data ingestion)
- S3 / COS からの一括データロード(CSV、Parquet、JSON)
- 取り込みジョブの管理および監視
-
データセキュリティ(Data security)
- IBM Cloud Identity and Access Management(IAM)による認証
- 自動トークン更新メカニズム
- 制御された書き込みアクセス(INSERT および UPDATE をサポート、DELETE 操作は未対応)
-
トランスポート機構(Transport mechanisms)
- ローカルサブプロセス通信向けの stdio トランスポート
- リモートサーバー接続向けの Streamable HTTP
-
AI エージェント連携(AI agent integrations)
- ローカル環境において、以下の AI エージェントと連携可能です
- IBM Bob
- Claude Desktop
- その他の MCP 互換クライアント(リモート MCPサーバーのみ対応)
- ローカル環境において、以下の AI エージェントと連携可能です
詳細な仕様は以下を参照ください:
2. 接続に必要な情報
※ API Key や Base64 認証トークンは第三者に共有しないよう注意してください。
1. IBM Cloud API Key
watsonx.data インスタンスにアクセスするための適切な権限を持つ API キーを準備してください。
取得方法は以下を参考にしてください:
2. IBM Cloud API Keyとibm cloudのidから作成したBase64エンコード認証トークン
API Keyはそのまま使用できません。Base64エンコードされた認証トークンを生成する必要があります。
2-1. 以下のような文字列を作成します
ibmlhapikey_<ibm cloudのid(通常はe-mail)>:<your-apikey>
例: ibm cloudのid が taro@ibm.com、のAPI Keyが99a9a9Baa9aBB9B5BBa9a-0aaaBBBBa-999a99_aBa-Bの場合
ibmlhapikey_taro@ibm.com:99a9a9Baa9aBB9B5BBa9a-0aaaBBBBa-999a99_aBa-B
サービスIDのAPI Keyももちろん使用可能です。
例: ibm cloudのサービスID が ServiceId-88888aaa-8a8a-8888-a8a8-88a88aa8a8a8、のAPI Keyが99a9a9Baa9aBB9B5BBa9a-0aaaBBBBa-999a99_aBa-Bの場合
ibmlhapikey_ServiceId-88888aaa-8a8a-8888-a8a8-88a88aa8a8a8:99a9a9Baa9aBB9B5BBa9a-0aaaBBBBa-999a99_aBa-B
2-2. 作成した文字列をBase64エンコードします
Mac or Linux:
echo -n "ibmlhapikey_<ibm cloudのid(通常はe-mail)>:<your-apikey>" | base64
Windows PowerShell:
[Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes("ibmlhapikey_<ibm cloudのid(通常はe-mail)>:<your-apikey>"))
実行例(Mac):
$ echo -n "ibmlhapikey_ServiceId-88888aaa-8a8a-8888-a8a8-88a88aa8a8a8:99a9a9Baa9aBB9B5BBa9a-0aaaBBBBa-999a99_aBa-B" | base64
aWJtbGhhcGlrZXlfU2VydmljZUlkLTg4ODg4YWFhLThhOGEtODg4OC1hOGE4LTg4YTg4YWE4YThhODo5OWE5YTlCYWE5YUJCOUI1QkJhOWEtMGFhYUJCQkJhLTk5OWE5OV9hQmEtQg==
$
ここで出力されたaWJtbGhhcGlrZXlfU2VydmljZUlkLTg4ODg4YWFhLThhOGEtODg4OC1hOGE4LTg4YTg4YWE4YThhODo5OWE5YTlCYWE5YUJCOUI1QkJhOWEtMGFhYUJCQkJhLTk5OWE5OV9hQmEtQg==をBase64エンコード認証トークンとして、MCPサーバー設定で使用します。
3. インスタンスのCRN
3-1.watsonx.data コンソールにログインします。
3-2.ナビケーションメニューから「インスタンスの詳細」をクリック
3-3.クラウドリソース(CRN) の横にあるコピーアイコンをクリックして、クリップボードにコピーして取得します。
4. リモートMCPサーバーエンドポイント
リモートの MCP サーバーに接続するには、次のエンドポイントを使用してください。
https://<console-host>/api/v1/watsonxdata/mcp
というプレースホルダーを、以下のリストから自分のロケーションに応じた適切な値に置き換えてください。
- Sydney, Australia (Asia Pacific):
console-ibm-ausyd.lakehouse.saas.ibm.com - Toronto, Canada (North America):
console-ibm-cator.lakehouse.saas.ibm.com - Frankfurt, Germany (Europe):
eu-de.lakehouse.cloud.ibm.com - London, United Kingdom (Europe):
eu-gb.lakehouse.cloud.ibm.com - Tokyo, Japan (Asia Pacific):
jp-tok.lakehouse.cloud.ibm.com - Washington DC, USA (North America):
us-east.lakehouse.cloud.ibm.com - Dallas, USA (North America):
us-south.lakehouse.cloud.ibm.com
3. IBM Bobでwatsonx.dataリモートMCPサーバーの接続を構成
IBM Bobを開き、watsonx.dataリモートMCPサーバーを構成します。
1. コマンド・パレットを開く
ショートカットキーCtrl + Shift + P(Windows/Linux)またはCmd + Shift + P(macOS)でコマンド・パレットを開きます

2. コマンド・パレットにMCPと入力し、表示されたMCP Serversをクリック
3. MCP設定ファイルを開く
グローバルレベル(Bob全体)で設定したい場合は、グローバルMCPの「開く」を、プロジェクトレベルで設定したい場合は、プロジェクトMCPの「開く」をクリックします。
ここではプロジェクトMCPの「開く」をクリックした例で進めます。

以下を追加して保存します。
<リモートMCPサーバーエンドポイント>、<IBM Cloud API Keyとibm cloudのidから作成したBase64エンコード認証トークン>, <インスタンスのCRN>は「2. 接続に必要な情報」で取得した値に置き換えてください。
{
"mcpServers": {
"watsonx.data-mcp-server": {
"type": "streamable-http",
"url": "https://<リモートMCPサーバーエンドポイント>/api/v1/watsonxdata/mcp",
"headers": {
"authorization": "Basic <IBM Cloud API Keyとibm cloudのidから作成したBase64エンコード認証トークン>",
"authinstanceid": "<インスタンスのCRN>"
}
}
}
}
設定例:
{
"mcpServers": {
"watsonx.data-mcp-server": {
"type": "streamable-http",
"url": "https://console-ibm-cator.lakehouse.saas.ibm.com/api/v1/watsonxdata/mcp",
"headers": {
"authorization": "Basic aWJtbGhhcGlrZXlfU2VydmljZUlkLTg4ODg4YWFhLThhOGEtODg4OC1hOGE4LTg4YTg4YWE4YThhODo5OWE5YTlCYWE5YUJCOUI1QkJhOWEtMGFhYUJCQkJhLTk5OWE5OV9hQmEtQg==",
"authinstanceid": "crn:v1:bluemix:public:lakehouse:ca-tor:x/9x99x9999x9999x9xx9xx9x9999x99xx:xx99xxx9-xx9x-9999-x9xx-x9xx999xx9x9::"
}
}
}
}
編集が終わったら、保存して閉じてください。
5. MCP設定画面で、「すべてのサーバーを更新」の更新アイコン(ぐるぐるしたアイコン)をクリック
6. 追加された「watson...」のタイルをクリック
正常稼働している場合は緑色の丸が表示されています。
「watson...」のタイルをクリックします。

「watson...」のタイルをクリックすると、エラーメッセージが表示されていますので、内容を見て再度MCP設定ファイル等を修正します。

7. 「常に許可」する動作があればチェックを入れる
Agentが承認を求めてくることなく、常に許可できる動作があればチェックを入れておきます。
ここでは変更しない参照系は承認不要としてみました。
また使用したくない機能は右端のトグルスイッチでOFFにできます。
承認不要にしたもの:
- watsonxdata-describe-table
- watsonxdata-list-schemas
- watsonxdata-list-engines
- watsonxdata-get-ingestion-job
- watsonxdata-list-ingestion-jobs
- watsonxdata-get-instance-details
- watsonxdata-list-spark-applications
- watsonxdata-get-spark-application-status
- watsonxdata-execute-select
- watsonxdata-list-tables
これでIBM BobのMCP設定が完了しました!
4.IBM Bobからwatsonx.dataのデータに関する質問をしてみる
モードはMCPが使えるAdvancedモードにします。
ここでは自動承認の設定を読み取りとMCPに設定しました。こちらは好みなので最初はMCPをはずすなど様子をみるのもよいかと思います。

では質問を入れてみます。
質問1: どんなテーブルがありますか?
どんなテーブルがありますか?
テーブル一覧を出してくれました!
テーブルの説明をつけていますが、コマンドをみると中身を見ているわけではなさそうで、テーブル名およびIBM製品で使われているGO Salesのデータセットということから推測で出しているようです。
質問2: ICEBERGのGOSALESスキーマにテーブルがあるので、分析してください。どんな情報が入っているか理解し、意味のある分析をしてみてください。最後に分析にかかった時間も教えてください。
少し重め(大物)の質問をしてみました!参考までに分析にかかった時間も出してもらいます。
ICEBERGのGOSALESスキーマにテーブルがあるので、分析してください。どんな情報が入っているか理解し、意味のある分析をしてみてください。分析にかかった時間も教えてください。









(以下レポートが続く! 中身はこちらで)
分析所要時間は以下でした:
合計実行時間: 約1分52秒
- データ構造確認: 約20秒
- 基本統計分析: 約12秒
- 年次トレンド分析: 約7秒
- 製品カテゴリ分析: 約9秒
- 国別分析: 約7秒
- 注文方法分析: 約6秒
- ブランド分析: 約6秒
- 返品分析: 約9秒
- 月次トレンド分析: 約5秒
- 利益率分析: 約6秒
このまま見てもいいのですが、ファイルにしたいので、Bobにマークダウンファイルにしてもらいます:
このレポートマークダウンファイルにしてください。
作成したファイルの中身を以下に貼り付けましたので、以下を参照ください:
5. まとめ
AI Agentからwatsonx.data MCPを使ってwatsonx.dataのデータを情報を簡単に取得したり、分析したりすることができます。
最初に書きましたがClaude Desktopなどからも呼び出し可能です。
参考: Claude Desktop設定方法(英語)
ぜひ実際に確かめてみてください!
参考情報: 無料トライアル
以下は2026年4月17日現在の情報です。今後変更の可能性があります。
watsonx.dataの無料トライアル
Liteプランでは、リソース単位(RU)500、利用期間30日という制限付きで、無料で利用できるIBM® watsonx.dataインスタンスをプロビジョニングできます。このアカウントを使用して、watsonx.dataの機能を試したり、操作に慣れたりすることができます。Liteプランの機能や制限の詳細については、Liteプラン(英語)をご覧ください。












