Amazon Web Services ブログ
Amazon ECS、Amazon EKS、AWS Serverless MCP サーバーで AI 支援の開発を強化
5 月 29 日、Amazon Elastic Container Service (Amazon ECS)、Amazon Elastic Kubernetes Service (Amazon EKS)、AWS Serverless 向けの専用 Model Context Protocol (MCP) サーバーが、AWS ラボ GitHub リポジトリで利用できるようになりました。これらのオープンソースソリューションは、AI 開発アシスタントの機能を拡張し、事前にトレーニングされた知識を超える、リアルタイムの状況に応じた対応を可能にします。AI アシスタント内の大規模言語モデル (LLM) は公開文書に依存していますが、MCP サーバーは最新のコンテキストとサービス固有のガイダンスを提供して、一般的なデプロイエラーを防ぎ、より正確なサービスインタラクションの提供を支援します。
これらのオープンソースソリューションを使用すると、Amazon Web Services (AWS) の機能と設定に関する最新の知識を、構築およびデプロイプロセス中に利用して、アプリケーションをより迅速に開発できます。統合開発環境 (IDE) でコードを記述する場合も、本番環境の問題をデバッグする場合も、これらの MCP サーバーは Amazon ECS、Amazon EKS、AWS Serverless 機能を深く理解した AI コードアシスタントをサポートし、コードから本番環境への移行を加速します。コマンドライン (CLE) の Amazon Q Developer などの一般的な AI 対応 IDE と連携し、自然言語コマンドを使用してアプリケーションの構築およびデプロイをサポートします。
- Amazon ECS MCP Server は、ロードバランサー、ネットワーク、オートスケーリング、モニタリング、Amazon ECS タスク定義、サービスなど、関連するすべての AWS リソースを設定することで、数分以内にアプリケーションをコンテナ化して、Amazon ECS にデプロイします。自然言語による指示を利用して、クラスター運用の管理、自動スケーリング戦略の実装、リアルタイムのトラブルシューティング機能の使用を行うと、デプロイの問題を迅速に特定して解決できます。
- Kubernetes 環境の場合、 Amazon EKS MCP Server は、特定の EKS 環境に関する最新のコンテキスト情報を AI アシスタントに提供します。最新の EKS 機能、ナレッジベース、クラスター状態の情報にアクセスできます。これにより、AI コードアシスタントは、初期設定から本番環境のデプロイまで、アプリケーションのライフサイクル全体を通じて、より正確でカスタマイズされたガイダンスを得ることができます。
- AWS Serverless MCP Server は、サーバーレスパターン、ベストプラクティス、AWS サービスに関する包括的な知識を備えた AI コーディングアシスタントを提供することで、サーバーレス開発体験を向上させます。AWS Serverless Application Model Command Line Interface (AWS SAM CLI) 統合を使用すると、実証済みのアーキテクチャパターンを実装しながら、イベントを処理してインフラストラクチャをデプロイできます。この統合により、アプリケーション開発プロセス全体の機能ライフサイクル、サービス統合、運用要件が合理化されます。サーバーは、コード決定としてのインフラストラクチャ、AWS Lambda 固有のベストプラクティス、AWS Lambda イベントソースマッピングのイベントスキーマに関するコンテキストガイダンスも提供します。
実際の動作を見てみましょう
AWS MCP サーバーを初めて使用する場合は、AWS ラボ GitHub リポジトリの「インストールとセットアップ」ガイドでインストール手順を確認してください。インストールしたら、次の MCP サーバー構成をローカルセットアップに追加します。
コマンドライン用 Amazon Q をインストールし、設定を ~/.aws/amazonq/mcp.json
に追加します。既に Amazon Q CLI を使用している場合は、設定のみを追加します。
{
"mcpServers": {
"awslabs.aws-serverless-mcp": {
"command": "uvx",
"timeout": 60,
"args": ["awslabs.aws_serverless_mcp_server@latest"],
},
"awslabs.ecs-mcp-server": {
"disabled": false,
"command": "uv",
"timeout": 60,
"args": ["awslabs.ecs-mcp-server@latest"],
},
"awslabs.eks-mcp-server": {
"disabled": false,
"timeout": 60,
"command": "uv",
"args": ["awslabs.eks-mcp-server@latest"],
}
}
}
このデモでは Amazon Q CLI を使用して、サンプルコードとして Amazon Nova モデルクックブックリポジトリの 02_using_converse_api.ipynb
を利用して動画を理解するアプリケーションを作成します。これを行うには、次のプロンプトを送信します。
I want to create a backend application that automatically extracts metadata and understands the content of images and videos uploaded to an S3 bucket and stores that information in a database.I'd like to use a serverless system for processing.Could you generate everything I need, including the code and commands or steps to set up the necessary infrastructure, for it to work from start to finish? - Use 02_using_converse_api.ipynb as example code for the image and video understanding.
Amazon Q CLI は、MCP サーバー awslabs.aws-serverless-mcp-server
を含む必要なツールを特定します。AWS Serverless MCP サーバーは、1 回のやりとりで、堅牢なアーキテクチャを構築するためのすべての要件とベストプラクティスを決定します。
Amazon Q CLI にアプリケーションの構築とテストを依頼しましたが、エラーが発生しました。Amazon Q CLI は利用可能なツールを使用して、問題を迅速に解決しました。Amazon DynamoDB テーブルで作成されたレコードを確認して、dog2.jpeg ファイルを使用してアプリケーションをテストし、成功を確認しました。
動画処理機能を強化するために、メディア分析アプリケーションをコンテナ化されたアーキテクチャに移行することにしました。そこで、次のプロンプトを使用しました。
I'd like you to create a simple application like the media analysis one, but instead of being serverless, it should be containerized.Please help me build it in a new CDK stack.
Amazon Q Developer がアプリケーションの構築を開始します。この時間を利用してコーヒーを買いに行きました。コーヒーを片手にデスクに戻ったとき、アプリケーションの準備ができていたので、嬉しい驚きを覚えました。すべてが現在の基準を満たしていることを確認するために、私は単純に次のように尋ねました。
please review the code and all app using the awslabsecs_mcp_server tools
Amazon Q Developer CLI は、すべての改善点と結論をまとめた概要を提供します。
必要な変更をすべて行うように依頼します。準備ができたら Amazon Q Developer の CLI に、すべて自然言語を使用して私のアカウントにデプロイするように依頼します。
数分後、S3 バケットから必要なすべてのネットワークへの、完全なコンテナ化されたアプリケーションができたことを確認しました。
Amazon Q Developer CLI にアプリのテストを依頼して the-sea.mp4 動画ファイルを送信したところ、タイムアウトエラーが返されました。そこで、Amazon Q CLI は awslabsecs_mcp_server
ツールの fetch_task_logs
を使用してログを確認し、エラーを特定して修正することを決定しました。
新規デプロイ後、もう一度試してみたところ、アプリケーションは動画ファイルを正常に処理しました
Amazon DynamoDB テーブルにレコードが表示されています。
Amazon EKS MCP サーバーをテストするために、auction-website-main フォルダーにウェブアプリのコードを置いています。堅牢なウェブアプリを作成したいと考えているため、Amazon Q CLI にこのプロンプトを手伝ってほしいと依頼しました。
Create a web application using the existing code in the auction-website-main folder.This application will grow, so I would like to create it in a new EKS cluster
Docker ファイルが作成されると、Amazon Q CLI は awslabseks_mcp_server
の generate_app_manifests
を、アプリケーション用の Kubernetes マニフェストを作成するための信頼できるツールとして識別します。
次に、manage_eks_staks
ツールを使用して新しい EKS クラスターを作成します。
アプリケーションの準備が整うと、Amazon Q CLI によってデプロイされ、作成した内容の概要が表示されます。
クラスターのステータスはコンソールで確認できます。
数分後、search_eks_troubleshoot_guide
ツールを使用していくつかの問題を解決すれば、アプリケーションを使用できるようになります。
これで、Amazon Q CLI による自然言語コマンドのみを使用して、Amazon EKS にデプロイされた Kitties マーケットプレイスのウェブアプリケーションが完成しました。
今すぐご利用いただけます
AWS ラボ GitHub リポジトリにアクセスして、これらの AWS MCP サーバーの使用を開始し、AI を活用した開発を強化してください。リポジトリには、コードを変更せずに既存の AWS Lambda 関数を AI アクセス可能なツールに変換する AWS Lambda 関数を実行するための実装ガイド、設定例、その他の専用サーバー、および Amazon Bedrock ナレッジベースへのシームレスなアクセスを提供する Amazon Bedrock Knowledge Bases Retrieval MCP サーバーが含まれています。リポジトリ内の他の AWS 専用サーバーには、より信頼性の高い迅速なアプリケーションの構築を開始するためのドキュメント、設定例、実装ガイドが含まれています。
AWS Serverless と Containers 向け MCP サーバーの詳細と、それらが AI 支援アプリケーション開発を変革する方法については、「AWS Serverless MCP サーバーの紹介: 最新アプリケーションのための AI を活用した開発」、「Amazon ECS MCP サーバーを使用した AI 支援のコンテナデプロイの自動化」、「Amazon EKS MCP サーバーを使用したアプリケーション開発の加速」を参照してください。
– Eli
原文はこちらです。