Terraform は、HashiCorp Configuration Language (HCL) を使用してクラウドリソースを定義し、プロビジョニングできるコードとしてのインフラストラクチャ (IaC) ツールです。OpenAPI Model Context Protocol (MCP) Server は Terraform と統合されており、AI エージェントが実行できる Terraform ツールを作成できます。これにより、AI エージェントの柔軟性と IaC の決定論的なオーケストレーションを組み合わせることができます。

概要
MCP は、AI モデルが外部のツール、アプリケーション、データソースと安全に接続できるようにするオープン標準です。OpenAPI MCP Server は、Alibaba Cloud サービスに対してこのプロトコルを実装し、AI エージェントとクラウドインフラストラクチャ管理の間のブリッジを提供します。
仕組み
OpenAPI MCP Server で Terraform ツールを作成すると、システムは以下の処理を行います。
Terraform コードを実行可能なツールとして保存します。
MCP プロトコルを介して、AI エージェントがツールを利用できるようにします。
AI エージェントがツールを呼び出すと、Terraform コードを実行します。
実行結果またはタスクのステータスをエージェントに返します。
これにより、AI エージェントは、古くなっている可能性のあるトレーニングデータではなく、最新の Alibaba Cloud プロバイダー情報とベストプラクティスを使用することが保証されます。
機能
OpenAPI MCP Server の Terraform ツールを使用すると、以下のことが可能になります。
AI エージェントが実行できる再利用可能な Terraform 構成を作成する。
自然言語コマンドを通じてインフラストラクチャのプロビジョニングを自動化する。
決定論的でバージョン管理された構成でクラウドリソースを管理する。
AI の柔軟性と IaC の信頼性を組み合わせる。
前提条件
開始する前に、以下を確認してください。
適切な権限を持つ Alibaba Cloud アカウント。
OpenAPI MCP Server ページへのアクセス権。
Terraform および HCL 構文に関する基本的な理解。
(任意) OpenAPI MCP Server を使用するように設定された IDE クライアント (AI コーディングアシスタント Lingma など)。
Terraform ツールの作成
OpenAPI MCP Server ページに移動し、[MCP サーバーの作成] タブで [Terraform ツールの追加] をクリックします。
[Terraform ツールの追加] パネルで、以下のパラメーターを設定します。
パラメーター
説明
Terraform ツール名
Terraform ツールの名前。
Terraform ツールの説明
Terraform ツールの機能や重要な注意事項に関する説明。
Terraform ツール
ツールの Terraform コード。組み込みの Terraform AI アシスタントを使用してコードを生成するか、自分で記述することができます。
非同期実行
Terraform ツールの実行モード。有効な値:
いいえ:エージェントはタスクが完了するまで待機し、結果を返します。単純で高速に実行される構成 (通常 30 秒未満で完了) にはこのモードを使用します。
はい: エージェント呼び出しは
TaskIdを直ちに返します。OpenAPI MCP Server はQueryTerraformTaskStatusシステムツールを自動的に追加します。このツールをTaskIdと共に呼び出すことで、タスクのステータスを確認できます。
説明モデルの呼び出しがタイムアウトするのを防ぐため、複雑な、または実行時間が長い Terraform 構成の場合は [はい] を選択することを推奨します。
削除ポリシー
実行後のリソースクリーンアップ動作。有効な値:
削除しない:タスクの成功・失敗にかかわらず、リソースは実行後に削除されません。リソースをさらなる使用や手動でのクリーンアップのために保持したい場合に使用します。
常に削除:タスクの成功・失敗にかかわらず、作成されたすべてのリソースはタスク実行後に即座に削除されます。一時的なテスト環境に使用します。
失敗時に削除:タスクが失敗した場合にのみ、作成されたリソースが削除されます。デプロイメントが失敗した際にリソースをクリーンアップし、成功したデプロイメントは保持する場合に使用します。
説明[削除しない] または [失敗時に削除] を選択した場合、このツールを使用して後でリソースをリリースすることはできません。ツールを再度実行すると、新しいリソースセットの作成が試みられます。
Terraform コードを記述します。このトピックでは、テスト用に Dify をデプロイする Terraform コードの例を示します。その他の Terraform の例については、「Terraform チュートリアル」をご参照ください。

クライアントでの Terraform ツールのテスト
このセクションでは、AI コーディングアシスタント Lingma で Terraform ツールをテストする方法について説明します。
ステップ 1: Lingma での OpenAPI MCP Server の設定
Lingma で OpenAPI MCP Server を設定します。設定が適用されると、ツールに関する情報が Lingma に表示されます。

ステップ 2: Terraform ツールの実行
自然言語コマンドを入力して OpenAPI MCP Server を実行します。たとえば、「中国 (香港) で Dify をデプロイしてください」と入力します。
AI エージェントがリクエストを処理し、Terraform ツールを呼び出します。
ステップ 3: タスクステータスのクエリ (非同期実行)
[非同期実行] を [はい] に設定した場合:
エージェントは、Terraform ツールを呼び出した後、すぐに
TaskIdを返します。この
TaskIdを使用して、システムツールQueryTerraformTaskStatusを呼び出し、タスクのステータスをクエリします。タスクが完了または失敗するまで、タスクのステータスを監視します。

ステップ 4: デプロイメントの検証
Terraform の実行が完了したら、作成された ECS インスタンスのパブリック IP アドレスを取得します。
Elastic Compute Service (ECS) コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。
Terraform ツールによって作成されたインスタンスを見つけます。
インスタンスの詳細ページからパブリック IP アドレスをコピーします。
または、Terraform コードに出力を追加して、パブリック IP アドレスを自動的に返すこともできます。
output "public_ip" { value = alicloud_instance.dify.public_ip }ブラウザで
http://<パブリック IP アドレス>を入力します。Dify のセットアップページが表示された場合、デプロイメントは成功しており、Terraform ツールは正しく実行されています。
