AWS API MCP Serverが手軽で便利でおすすめなので、AWS API MCP Serverができることを紹介します。
AWS API MCP Serverとは
「ap-northeast-1 の EC2インスタンスを一覧表示して」「ポート22の空いているセキュリティグループを一覧表示して」のような指示を自然言語で出すだけで、指示に対応したAWS CLIコマンドを実行してくれます。
AWS API MCP Serverの実行方法には下記の選択肢があります。
- KiroやCursor、Claude Desktop等を活用してローカルPC上で実行
- AWSが公開しているDockerイメージを活用してECSやEKSにデプロイ
- AWS Marketplace経由でAWS API MCP Serverをダウンロードし、AgentCore Runtimeにデプロイする方式
AgentCoreにデプロイする方式はIAMロールを用いて権限制御ができ、ローカルのAWS認証情報と分離できるため、他の2つの手法よりもセキュアな構成となります。詳細や設定方法はこちらのガイドを確認ください。
https://github.com/awslabs/mcp/blob/main/src/aws-api-mcp-server/DEPLOYMENT.md
つい先日、KiroやCursor、Claude Desktopと接続する場合でもIAMロールを指定できるプレビューがAWSから発表されました。(12/2時点ではバージニア州のみが対象です。)
https://aws.amazon.com/jp/about-aws/whats-new/2025/11/aws-mcp-server/
設定方法はこちらの通りです。
https://docs.aws.amazon.com/aws-mcp/latest/userguide/getting-started-aws-mcp-server.html
AWS API MCP Serverの機能
AWS API MCP Serverには、3つのtoolが実装されています。
- call_aws
- suggest_aws_commands
- get_execution_plan (※experimental)
call_aws
2025年現在、ClaudeをはじめとしたLLMモデルは優秀であるため、基本的なコマンドは特にMCPを使わずとも作成してくれます。
しかしながら、AWS環境でいきなりLLMがつくったCLIコマンドをたたくのは、心配な方も多いのではないでしょうか。
そこで登場するのがcall_awsです。これは、AWS CLIコマンドを実行するtoolで、コマンドの事前検証や、問題が発生時のエラー処理もしてくれます。
| 項目 | |
|---|---|
| 主要なinput | - AWS CLIコマンド |
| 主要なoutput | - AWS CLIコマンド実行結果(APIレスポンスやエラーメッセージ) |
事前検証では、AWS CLIコマンドのバリデーションチェックだけでなく、該当コマンドがAWS API MCP Serverに与えられているIAMポリシーの範囲内で実施可能なコマンドかどうかもチェックをしてくれます。そのため、むやみやたらにLLMの生成したAWSコマンドをたたくことを防げます。
実行は、実はAWS CLIコマンドをそのままAWS環境に連携しているのではなく、該当コマンドをMCP Server内でAPIへ変換し、そのAPIをAWS環境にリクエストとして投げております。このロジックがあるから、このMCP Serverは「AWS CLI MCP Server」ではなく「AWS API MCP Server」と名乗っているのかと思われます。(※ aws configureなど、一部例外はあります)
AWS CLIコマンドをAPIへ変換する際に、Pythonのbotocoreパッケージを活用しています。
このあたりの仕組みが気になる方は、こちらの記事もご確認ください。
https://aws.amazon.com/jp/builders-flash/202210/way-to-operate-api-2/
suggest_aws_commands
ClaudeをはじめとしたLLMモデルは優秀であるため、基本的には前述したcall_awsで事足ります。
しかしながら、指示があいまいな場合や選択肢が複数ある場合、LLMだけでは適切なAWS CLIコマンドを断定できないケースもあります。
そこでAWSは、ユーザの要望を解析し、AWS CLIコマンドを提案してくれるtoolも用意してくれました。
| 項目 | |
|---|---|
| 主要なinput | - ユーザのクエリ |
| 主要なoutput | - タスクを実行できる可能性が高いAWS CLIコマンド - 各コマンドの信頼度スコア - 各コマンドの必須パラメータ - 各コマンドの説明 |
上記のケースは、「EC2インスタンスを起動する方法」にはEC2を活用する方法だけでなく、Cloud9を活用する方法があることをsuggest_aws_commandsが確認しています。しかしながら、Cloud9よりもEC2を活用する方のスコアが優れていたため、EC2を起動するAWSコマンドを選定しています。
suggest_aws_commandsの仕組みとしては、リモートのエンドポイント(https://api-mcp.global.api.aws/suggest-aws-commands)にクエリをPOSTし、その結果を表示しております。
なお、v1.0.0より前の段階では、リモートのエンドポイントは存在しておらず、AWS API MCP Serverのソースコード内に実装がありました。(リモートのエンドポイントを活用することで依存関係の排除に成功しており、起動時間の短縮にもつながっています。)
置き換わる前の実装の一部を抜粋すると、KnowledgeBaseとしてローカルでRAGを活用していたことがわかります。
詳細が気になる方は、こちらをご覧ください。
- 該当プルリク:https://github.com/awslabs/mcp/pull/1282
- 該当コミット:https://github.com/awslabs/mcp/commit/1f9b49c52d92ea16a6f843cda50b3a524079a525
get_execution_plan
get_execution_planは、2025/12時点ではまだExperimentalな機能です。
このtoolを利用するには、環境変数EXPERIMENTAL_AGENT_SCRIPTSをTrueにする必要があります。
これによりENABLE_AGENT_SCRIPTSがTrueになり、toolがアクティブになります。
https://github.com/awslabs/mcp/blob/main/src/aws-api-mcp-server/awslabs/aws_api_mcp_server/core/common/config.py#L141
call_awsとsuggest_aws_commandsがあればすでに十分便利ではあるのですが、複雑なタスクをステップバイステップで実行計画をたてるツールも用意されています。
| 項目 | |
|---|---|
| 主要なinput | - 特定のscript_name |
| 主要なoutput | - タスクのステップバイステップの指示を含んだスクリプトプラン |
これはregistryフォルダ配下にあるscript_nameが呼び出されることで、該当するmdファイルのコンテンツが返却されます。2025/12現在は、5つのユースケースがスクリプトとして用意されています。
| script_name | 詳細 |
|---|---|
| application-failure-troubleshooting | CloudWatchログを活用した、アプリケーション障害のトラブルシューティング |
| cloudtral-mutli-region-setup | マルチリージョンのCloudTrailおよびCloudWatch Logs Insightsを用いた運用向上 |
| create_amazon_aurora_db_cluster_with_instances | AuroraデータベースとSecrets Managerのセッティング |
| lambda-timeout-debugging | Lambdaの設定やCloudWatchを活用した、Lambdaタイムアウト原因調査 |
| troubleshoot-permissions-with-cloudtrail-events | AWS CloudTrailログを活用した、権限エラー診断 |
まだまだExperimentalなtoolですので、今後ユースケースが増加することも期待できそうですね。
registryフォルダの配下にはscripts_format.mdも格納されておりますが、こちらはスクリプト自体の仕様書となっております。
さいごに
他のAWS MCP Serversについても、過去にいくつか挙動をまとめてます。興味あればぜひご覧ください!(※2025/7時点の情報です)



