はじめに
AI コーディングエージェントから AWS を触らせようとしたとき、こんな面倒に出会ったことはないでしょうか。
- MCP サーバーを動かすために
uvxやらローカルプロキシやらを入れないといけない - 認証情報の受け渡しがサービスごとにバラバラで、どれが正解かわからない
- 「とりあえずアクセスキーを環境変数に…」となりがちで、セキュリティ的にちょっと不安
2026年7月9日、この面倒を軽くしてくれるアップデートが来ました。
AWS MCP Server が OAuth 2.1 認証に対応し、AI エージェントが「普段 AWS コンソールや CLI で使っているのと同じサインイン方法」で、直接 MCP サーバーに接続できるようになったのです。
追加の認証ソフトは不要で、既存の AWS ID・IAM 権限がそのまま使えます。
AWS MCP Server とは
ここは知っていることを前提で書きます。
知らない方は、まず以下のリンクを読んでください。
Before / After
これまでコーディングエージェントから接続するには、AWS CLI でサインインしたうえで MCP Proxy for AWS(uvx で動かすローカルプロキシ)を挟み、SigV4 で署名する必要がありました。
今回の OAuth 対応で、この「ローカルプロキシを立てる」工程を丸ごとスキップできます。
| 項目 | Before(SigV4) | After(OAuth) |
|---|---|---|
| ローカルプロキシ | 必要(uvx / MCP Proxy) |
不要 |
| AWS CLI インストール | 必要 | 不要(ブラウザ認可のみで可) |
| マルチアカウント切替 | 対応 | 非対応(SigV4を使う) |
マルチアカウントを1セッションで切り替えたい、read-only モードで書き込み系ツールを隠したいといった要件では引き続き SigV4 が推奨されます。用途で使い分ける形です。
やってみた
Claude Code CLI から OAuth 方式で AWS MCP Server につなぐ、最短の手順です。
前提条件
- AWS アカウントと、サインインできる IAM ユーザー / ロール
- Claude Code CLI
- 接続先リージョンは us-east-1 または eu-central-1(記事執筆時点で対応する 2 リージョン)
手順1: OAuth 用のマネージドポリシーをアタッチ
ブラウザでの OAuth 認可に必要な権限を、対象のロール(またはユーザー)に付与します。マネージドポリシー AWSMCPSignInOAuthAccessPolicy をアタッチするだけです。
aws iam attach-role-policy \
--role-name MyRole \
--policy-arn arn:aws:iam::aws:policy/AWSMCPSignInOAuthAccessPolicy
このポリシーが未アタッチだと、サインイン後に 400エラーページが出ます。エラーに遭遇したらまずここを疑うと良いでしょう。
手順2: Claude Code に MCP サーバーを登録
claude mcp add でエンドポイントを HTTP トランスポートで登録します。
claude mcp add aws-mcp-oauth https://aws-mcp.us-east-1.api.aws/mcp --transport http --scope project
なお Claude Desktop / Cursor / Kiro IDE / Gemini CLI / Codex などは、OAuth フローを明示起動するため URL 末尾に ?oauth=initialize を付ける必要があります。
Claude Code CLI と Kiro CLI(2.11以降)はデフォルトURLのままで OK です。
--scope projectで登録すると、次回 Claude Code 起動時に以下の信頼確認が表示されます。1(または2)を選んで有効化するとaws-mcp-oauthが使えるようになります(この時点ではまだ AWS サインインは走りません)。New MCP server found in this project: aws-mcp-oauth MCP servers may execute code or access system resources. All tool calls require approval. 1. Use this MCP server 2. Use this and all future MCP servers in this project 3. Continue without using this MCP server
手順3: 初回接続でブラウザ認可
登録できたら、/mcp を実行して aws-mcp-oauth を選び、Authenticate を実行します。すると自動的にブラウザが開いて AWS Sign-In 画面に飛びます(デフォルトブラウザを開けない環境では、代わりに認可 URL がターミナルに表示されるので、それを開きます)。
サインインして接続を許可すると Authentication successful と表示され、接続完了です。
ポイントは Dynamic Client Registration(RFC 7591) でクライアント登録が自動で行われること。
事前のアプリ登録やクライアントID発行は不要です。
承認するとトークンが発行され、有効期間は 1時間、自動リフレッシュ込みで 最大12時間まで使えます。
手順4: 接続確認
/mcp で aws-mcp-oauth が接続済みか確認し、エージェントに軽く聞いてみます。
利用できるAWSリージョンを教えて
aws___search_documentation や aws___retrieve_skill が読み込まれていれば接続成功です。
まとめ
- ローカルプロキシ不要で、マネージドポリシーのアタッチ + エンドポイント登録だけで接続できる
- 認証は いつものAWS サインインそのままで、新しい認証情報を発行・管理する手間がない
参考リンク
- AWS MCP server now supports OAuth with AWS Sign-In(AWS What's New)
- Introducing OAuth support for AWS MCP Server(AWS Security Blog)
- Setting up the AWS MCP Server(Agent Toolkit for AWS ユーザーガイド)
- Sign-In with OAuth 2.0 overview(AWS Sign-In ユーザーガイド)
