🚀 MCP-AWS: AI Agent for AWS EC2 Management について
MCP-AWSは、自然言語のコマンドでOpenAIエージェントを使い、AWS EC2インスタンスを管理する概念実証のターミナルアプリです。カスタムMCPサーバーがインスタンスの作成と終了のツールを提供します。
主な機能
- 01AWS EC2インスタンスの作成
- 02インスタンスIDによる終了
- 03ターミナルでの自然言語操作
- 04カスタムMCPツールとOpenAI Agents SDKの連携
活用シーン
- 01ターミナルからの指示によるEC2インスタンス作成
- 02インスタンスIDを指定したEC2インスタンスの終了
- 03MCPサーバーとOpenAI Agents SDKの連携方法の確認
MCP 対応
カスタムMCPサーバーは、EC2インスタンスの作成とインスタンスIDによる終了のツールを提供します。OpenAI Agents SDKとの連携例を示します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🚀 MCP-AWS:AWS EC2 管理用 AI エージェント
MCP-AWS へようこそ。OpenAI Agents と MCP サーバーを活用して AWS EC2 インスタンスを管理する、シンプルながら強力な AI 駆動型アプリケーションです。このアプリを使うと、ターミナルで自然言語コマンドを入力して、EC2 インスタンスを作成したり、終了したりできます。🖥️✨
🎥 デモ動画
デモ動画で、MCP-AWS の動作をご覧ください!🚀
🌟 機能
- EC2 インスタンスの作成:AI エージェントに EC2 インスタンスの作成を指示するだけで、あとはエージェントが処理し、インスタンス ID をお知らせします。🛠️
- EC2 インスタンスの終了:インスタンス ID を指定すると、エージェントがそのインスタンスを終了します。❌
- MCP サーバーとの連携:カスタム MCP サーバーを作成し、OpenAI Agents SDK と連携する方法を確認できます。🧩
🛠️ MCP サーバーのツール
MCP サーバーは、次の 2 つのツールを備えたカスタムサーバーです。
initiate_aws_ec2_instance:AWS EC2 インスタンスを作成します。terminate_aws_ec2_instance:ID を指定して AWS EC2 インスタンスを終了します。
🚀 はじめに
前提条件
- Python 3.12+(ローカル環境でセットアップする場合)または Docker(コンテナ化してセットアップする場合)
- AWS IAM ロール:EC2 インスタンスの管理に必要な権限を持つ IAM ロールを作成します。
- 環境変数:次の変数を含む
.envファイルを用意します。AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_DEFAULT_REGIONOPENAI_API_KEYAMI_IDINSTANCE_TYPEKEY_NAMESECURITY_GROUP_IDSAWS_REGION
🏃♂️ アプリの実行
- リポジトリをクローンします。
git clone https://github.com/anirban1592/mcp-server-aws.git cd mcp-aws - 前提条件に示すように
.envファイルを作成します。
オプション 1:Docker のセットアップ(推奨)
- Docker イメージをビルドします。
docker image build -t my-mcp . - コンテナを実行します。
docker container run -it my-mcp
オプション 2:ローカル環境でのセットアップ
-
仮想環境を作成して有効化します。
pip install uv uv venv .venv # Windows .venv\Scripts\activate # Unix/MacOS source .venv/bin/activate -
アプリケーションを実行します。
cd openai-agent/ uv run agent.py
💬 AI エージェントの使用方法
-
EC2 インスタンスを作成するには:
Enter your command: Create an EC2 instance -
EC2 インスタンスを終了するには:
Enter your command: Terminate EC2 instance with ID <instance-id>
⚠️ ご利用上の注意
- IAM ロールと認証情報:AWS IAM ロールと認証情報は、ご自身の責任で作成してください。AWS のセキュリティに関するベストプラクティスに従ってください。
- 料金とセキュリティ:このアプリは概念実証(POC)であり、学習目的のみを想定しています。料金に関する問題やセキュリティインシデントについて、当方は責任を負いません。
📚 学べること
このプロジェクトでは、次の内容を紹介します。
- MCP サーバーを OpenAI Agents SDK と連携する方法
- AWS リソース管理用のシンプルな AI 駆動型アプリケーションを構築する方法
AI と MCP サーバーの可能性をぜひお試しください!🌟
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
