DataWorks Agent は、Model Context Protocol(MCP)に基づいて構築されています。DataWorks MCP Server や Hologres MCP Server などのビッグデータ向け MCP Server に接続し、自然言語を用いた DataWorks 上でのデータ開発、タスク O&M、データ統合などの機能を提供します。
この機能を利用するには、サードパーティクライアントが必要です。よりスムーズなエージェント体験をご希望の場合は、「DataWorks Agent」をご参照ください。
仕組み
DataWorks Agent では、会話型インターフェイスを通じてビッグデータ開発タスクを実行できます。Large Language Model(LLM)を用いてユーザーのリクエストを解析し、MCP Server の機能を呼び出して実行します。
たとえば、「現在のワークスペースにはいくつのプロジェクトがありますか?」という質問に対して、エージェントは LLM を用いてリクエストを解析し、ListProjects ツールを呼び出します。このツールは、DataWorks MCP Server が提供する、組み込みの DataWorks OpenAPI を介して提供されており、プロジェクト数を照会・返却します。より複雑なタスクでは、LLM が MCP Server と複数回やり取りを行う場合があります。
DataWorks Agent は、DataWorks MCP サーバーと統合するだけでなく、他の MCP サーバーにも接続します。また、Qwen、DeepSeek、OpenAI などの独自の LLM を選択することもできます。
以下のプロンプトを試すことで、DataWorks Agent の機能をさらに詳しく確認できます。
|
範囲 |
プロンプト例 |
|
データ開発 |
[タスクの照会] このワークスペースのプロジェクトディレクトリ内にある一時停止中の |
|
[タスクの名前変更] 上記で検索したノードの名前を「invalid_node_to_delete」とします。複数のノードがある場合は、シーケンス番号で区別します。 |
|
|
[タスクの作成] このワークスペースのプロジェクトディレクトリ内に |
|
|
タスク O&M |
[失敗したタスクの再実行] このワークスペース内で、 |
|
[失敗したインスタンスの照会] このワークスペースのプロジェクトディレクトリ内で、 |
|
|
[再実行設定の分析] これらのタスクの再実行設定を分析します。再実行可能なタスクについては、再実行を行います。 |
|
|
データ統合 |
[単一の MySQL テーブルを MaxCompute へ同期] 現在のワークスペースで、以下の設定を持つバッチ型データ統合タスクを作成します:
|
|
[売上分析] `order` テーブルから、今月の売上トップ 10 商品の販売傾向を分析します。 |
制限事項
この機能は、Data Studio(新バージョン)が有効化されたワークスペースでのみ利用可能であり、個人開発環境でのみ使用できます。
個人開発環境を再起動した後は、MCP Server 機能を再インストールする必要があります。実行にあたっては十分にご注意ください。
課金
DataWorks Agent を利用すると、以下の課金が発生します:
-
DataWorks OpenAPI 呼び出し料金
エージェントが MCP Server を経由して DataWorks OpenAPI を呼び出す場合、OpenAPI 課金基準に従って課金されます。
-
LLM トークン料金
エージェントがユーザーの意図を解析し、自然言語による応答を生成する際に、Qwen などのご自身で設定した LLM を呼び出します。この処理では入力および出力トークンが消費され、選択したモデルプロバイダーから課金されます。たとえば、Alibaba Cloud Model Studio(Bailian)の
qwen-coder-plusモデルを利用する場合、Bailian 課金説明に基づいて課金されます。
クイックスタート
DataWorks Agent の構成を完了した後、Cline ページの右上隅にある
アイコンをクリックしてチャットインターフェイスを開き、現在のワークスペースのメンバーを照会する操作を試してください。
以下のプロンプトを入力してください:現在のワークスペースのメンバーを照会します。
エージェントは、以下の手順でタスクを実行します:
-
リクエストの解析と確認:エージェントは「現在のワークスペースのメンバーを照会する」というユーザーの意図を解析し、
ListProjectMembersAPI を呼び出す必要があることを自動的に特定します。その後、対象となるワークスペース(ProjectId)などの必須パラメーターを確認するようユーザーに促します。 -
API 呼び出しと応答:ユーザーが操作を承認すると、エージェントは
ListProjectMembersOpenAPI を呼び出し、ワークスペースのメンバー一覧を取得し、役割およびアカウントタイプを含む構造化された形式で返却します。ListProjectMembersOpenAPI の詳細については、「ListProjectMembers - ワークスペースのメンバー一覧を照会」をご参照ください。説明-
実行中、システムは関連操作を確認し、必要な情報を取得するためにユーザーにプロンプトを表示します。操作を続行する場合は 承認 をクリックし、拒否する場合は 拒否 をクリックしてください。
-
具体的な手順は、タスクの複雑さ、選択した LLM、およびモデルのバージョンによって若干異なる場合があります。実行フローは、エージェントによるリアルタイムの解析およびインタラクションによって決定されます。
-
DataWorks Agent の構成
DataWorks Agent は、Cline などの MCP クライアントプラグインを用いてフロントエンドのチャットインターフェイスを構築し、DataWorks MCP Server や Alibaba Cloud のその他の MCP Server に接続します。
必要に応じて、オープンソースの MCP Server にも接続することで、DataWorks Agent の機能を拡張できます。
事前準備
-
ワークスペースを作成済み であり、[Data Studio (新バージョン) を使用] を選択済みである必要があります。
-
(任意。RAM ユーザーの場合のみ必須)タスク開発用の RAM ユーザーをワークスペースに追加し、開発者 または ワークスペース管理者 のロールを付与する必要があります。ワークスペース管理者ロールは広範な権限を持つため、付与には十分にご注意ください。メンバーの追加方法については、「ワークスペースメンバーの追加」をご参照ください。
Alibaba Cloud アカウントをご利用の場合は、このステップはスキップできます。
-
パーソナル開発環境インスタンスを作成しました。
説明個人開発環境が Virtual Private Cloud(VPC)にバインドされている場合、個人開発環境へのインターネットアクセスを構成 する必要があります。
ステップ 1:個人開発環境へのアクセス
以下の手順に従って、個人開発環境を有効化し、アクセスします。
DataWorks コンソールの ワークスペース ページに移動します。上部ナビゲーションバーで目的のリージョンを選択し、該当するワークスペースを見つけ、操作 列から を選択します。
-
上部のナビゲーションバーにあるPersonal Development Environmentの横の
アイコンをクリックして、個人開発環境インスタンスのステータスを確認し、環境に入ります。-
インスタンスのステータスが Running の場合: Personal Development Environment 下の実行中の個人開発環境インスタンスをクリックしてアクセスします。
-
その他のステータスの場合:ポップアップウィンドウで Management Environment をクリックします。Personal Development Environment Instances ページで作成済みのインスタンスを検索し、Start を Actions 列からクリックし、インスタンスステータス が Running に変更されるまで待ちます。その後、インスタンスをクリックして個人開発環境にアクセスします。
説明アイコンが
と同様に表示され、Personal Development Environment エリアに表示された場合、個人開発環境にアクセスしたことを意味します。 -
ステップ 2:Cline のインストール
個人開発環境にアクセスした後、以下の手順に従って DataWorks Agent を構成します。本ドキュメントでは Cline を例として使用します。
個人開発環境インスタンスの作成時に dataworks-mcp:py3.11-ubuntu22.04 イメージを選択した場合、プログラムエンジンのスペックアップ や Cline 拡張機能のインストール を行う必要はありません。
プログラムエンジンのスペックアップ
Cline 拡張機能のインストール
ステップ 3:LLM API キーの構成
Cline 拡張機能のインストール後、以下の手順に従って API キーを構成します。この例では、OpenAI 互換モードを用いて Alibaba Cloud Model Studio(Bailian)API に接続する方法を示します。
-
他のモードでモデルに接続する場合は、インターフェイスで提供されるパラメーターを構成してください。
-
現在サポートされているのは ご自身の API キーを使用 のみです。無料で始めましょう はサポートされていません。
-
Data Studio の個人開発環境ページで、上部ナビゲーションバー右上隅の
アイコンをクリックして Copilot Chat を開き、その後
をクリックして Cline に切り替えます。 -
Cline ページで ご自身の API キーを使用 をクリックし、以下の表に従ってパラメーターを構成します。
パラメーター
説明
API プロバイダー
API サービスプロバイダーを指定します。
OpenAI 互換を選択します。これは、Alibaba Cloud Model Studio(Bailian)API に OpenAI 互換インターフェイスを用いて接続することを意味します。ベース URL
API サービスのベース URL で、API リクエストのルートアドレスを指定します。
たとえば、Alibaba Cloud Model Studio(Bailian)API が提供する OpenAI 互換 API エンドポイントアドレスは、
https://dashscope-intl.aliyuncs.com/compatible-mode/v1です。API キー
認証に使用するキーです。この API キーは、Alibaba Cloud Model Studio(Bailian)コンソール から取得できます。
モデル ID
使用するモデルを指定します。モデルによって機能やパフォーマンス特性が異なります。
qwen-coder-plusまたはqwen-plusを選択します:-
qwen-coder-plus:コード生成およびプログラミングタスクに適しています。 -
qwen-plus:汎用的なテキスト生成および処理タスクに適しています。
-
-
下部の 始めましょう! ボタンをクリックして、API キーの構成を完了します。
ステップ 4:MCP Server の構成
API キーの構成を完了した後、以下の手順に従って DataWorks MCP Server に接続・構成します。DataWorks MCP Server の詳細については、「付録:DataWorks MCP Server」をご参照ください。
-
Cline ページで、右上隅の
アイコンをクリックして、マーケットプレイス タブの MCP Server に移動します。 -
インストール済み タブに切り替えて、インストール済みの MCP Server を表示します。
-
MCP Server の構成 をクリックして、
cline_mcp_settings.json構成ファイルを開きます。DataWorks はalibabacloud-dataworks-mcp-server用のデフォルト構成を提供しており、内容は以下のとおりです:{ "mcpServers": { "alibabacloud-dataworks-mcp-server": { "command": "npx", "args": [ "alibabacloud-dataworks-mcp-server" ], "env": { "REGION": "cn-shanghai", "ALIBABA_CLOUD_CREDENTIALS_URI": "http://localhost:7002/api/v1/credentials/0", "TOOL_CATEGORIES": "SERVER_IDE_DEFAULT" }, "disabled": false, "autoApprove": [], "timeout": 60 } } }パラメーター
説明
command
npx:dataworks-mcp-server が提供するコマンド方式です。
args
alibabacloud-dataworks-mcp-server:dataworks-mcp-server のコマンド引数です。
env
REGION
現在の DataWorks ワークスペースが配置されているリージョンです。例では cn-shanghai を使用しています。
ALIBABA_CLOUD_CREDENTIALS_URI
Alibaba Cloud の認証情報の URI を指定します。
重要このパラメーターは DataWorks の個人開発環境でのみ有効であり、Alibaba Cloud ユーザーの認証を取得するために使用されます。
TOOL_CATEGORIES
Toolカテゴリの許可リストを構成します。OpenAPI のカテゴリをカンマ区切りで入力します。例:
"TOOL_CATEGORIES":"Data Sources,Workspace Management,Resource Group Management,Data Map,Data Integration,Data Studio (New Version),Task O&M,Data Service,Open Platform,Data Quality,Tag Management,Security Center,SERVER_IDE_DEFAULT"。説明-
SERVER_IDE_DEFAULTは、個人開発環境におけるデフォルトのToolsを指します。その他のサービスカテゴリは、DataWorks - OpenAPI 概要 ページの左側ディレクトリツリーで確認できます。 -
モデルの読み込みパフォーマンスおよびユーザーエクスペリエンスを向上させるため、デフォルト構成では
TOOL_CATEGORIESがSERVER_IDE_DEFAULTに設定されています。すべての OpenAPI ツールを有効にするには、この構成項目を削除してください。
TOOL_NAMES
Tool名の許可リストを構成します。OpenAPI の名前をカンマ区切りで入力します。例:
"TOOL_NAMES":"ListProjects,CreateNode,UpdateNode"。説明TOOL_NAMESは、DataWorks - OpenAPI 概要 ページで確認できます。 -
-
構成を保存した後、利用可能な Tools の一覧が読み込まれれば、
alibabacloud-dataworks-mcp-serverのインストールおよび構成が完了したことを確認できます。これで DataWorks MCP Server の機能の利用を開始できます。説明情報が読み込まれない場合は、プログラムエンジンのスペックアップ を実行済みか確認してください。

-
cline_mcp_settings.json構成ファイルを直接編集するか、マーケットプレイス からその他の MCP Server をインストールすることで、DataWorks Agent の機能を拡張できます。たとえば、DataWorks Agent で Hologres 関連の機能を利用する場合は、Hologres MCP Server に接続できます。
よくある質問
-
Q:MCP Server で事前定義されたプロンプトを実行した際、API リクエストが応答しなかったり、長時間実行中のままになることがあります。原因と対処法は何ですか?
A:API リクエストが長時間実行中のまま結果を返さない場合、古いバージョンのプログラムエンジンとの互換性の問題が原因である可能性があります。この場合、プログラムエンジンのスペックアップ を推奨します。
-
Q:モデルの応答速度を最適化するにはどうすればよいですか?
A:応答パフォーマンスを向上させるために、以下の対策を講じることができます:
-
同時に有効化する MCP Server の数を減らし、システムリソースのオーバーヘッドを低減します。
-
MCP Server の構成ファイルにおいて、
TOOL_CATEGORIESまたはTOOL_NAMESをenvパラメーターで明示的に指定し、必要なツールセットのみを読み込むようにすることで、Toolsのインポート数を削減します。
-
付録:DataWorks MCP Server
MCP(Model Context Protocol)は、Large Language Models(LLM)に標準化されたコンテキストを提供するプロトコルです。大規模モデルがさまざまなデータソースおよびツールに接続するための標準的な方法を定義し、情報の理解および処理能力を高めます。MCP クライアントは、MCP プロトコルを介してさまざまな MCP Server の機能を呼び出すことができます。
DataWorks MCP Server は、DataWorks OpenAPI をカプセル化し、DataWorks のビッグデータ機能を提供します。この DataWorks MCP Server をサードパーティ製品、プログラム、またはエージェントに統合することで、DataWorks の機能を迅速に呼び出すことができます。
DataWorks の個人開発環境外でエージェントを利用する場合、env パラメーターに ALIBABA_CLOUD_ACCESS_KEY_ID および ALIBABA_CLOUD_ACCESS_KEY_SECRET(こちら から取得)を構成し、ALIBABA_CLOUD_CREDENTIALS_URI の構成を削除する必要があります。
アイコンを右クリックして キーバインドの構成 を選択したり、