こんにちは。
アプリケーションサービス部、DevOps担当の兼安です。
今回はAmazon Q Developer CLI+Dockerで、MCP Serverを利用する方法をご紹介します。
- 本記事のターゲット
- MCP Serverとは
- AWS MCP ServersとAmazon Q Developer CLIの設定
- MCP ServerのDockerイメージのビルド
- Amazon Q Developer CLIでMCP Serverを起動
本記事のターゲット
本記事はAmazon Q Developer CLIに少し慣れて、もう少し使いこなしたい方を対象としています。
Amazon Qの起動と基本的な使い方と、Dockerの基本的な使い方を理解していることを前提としており、これらの説明は簡略化しています。
ご了承ください。
Amazon Qの起動と基本的な使い方はこちらの記事をご覧ください。
MCP Serverとは
MCPは、AI アシスタントが外部ツールと通信する方法を標準化するオープンプロトコルです。
AI アシスタントが外部ツールと連携するためのプロトコルです。
例えばAWSの公式ドキュメントを参照するためのMCP Serverを起動しておくと、AI アシスタントに質問する時にそのMCP Serverを経由して、AWSの公式ドキュメントを参照するようになり、より正確な回答を得ることができます。
より詳細な情報は、AWSの公式ドキュメントなどを参照するとよいでしょう。
今回はこのMCP ServerをAmazon Q Developer CLIで動かす方法を紹介します。
AWS MCP ServersとAmazon Q Developer CLIの設定
AWSは、公式のMCP Serverを提供しています。
利用用途ごとにいくつかのMCP Serverが用意されており、必要に応じて選択して利用することができます。
今回は、以下のMCP Serverを利用するとして、Amazon Q Developer CLIの設定を行います。
- Core MCP Server
- AWS Documentation MCP Server
- AWS CloudFormation MCP Server
- AWS CDK MCP Server
MCP ServerをAmazon Q Developer CLIで利用するためには、まずはMCP Serverの設定を行う必要があります。
Amazon Q Developer CLIにおいては、VS Codeで開くフォルダに.amazonq/mcp.json
という設定ファイルを作成し、そこにMCP Serverの情報を記述します。
.
├── .amazonq
│ └── mcp.json # MCP Serverの設定ファイル
├── docs
├── src
以下は省略
例えば、Core MCP Serverを利用する場合、AWS MCP ServerのリポジトリにそのソースコードとREADMEが用意されていますので、そちらを参考にして設定を行います。
こんな感じです。
{ "mcpServers": { "awslabs.core-mcp-server": { "command": "docker", "args": [ "run", "--rm", "--interactive", "--env", "FASTMCP_LOG_LEVEL=ERROR", "awslabs/core-mcp-server:latest" ], "env": {}, "disabled": false, "autoApprove": [] } } }
4つ全部指定するとこうですね。
(awslabs.cfn-mcp-server
のenv
引数は私の環境では不要だったので削除しています。 )
{ "mcpServers": { "awslabs.core-mcp-server": { "command": "docker", "args": [ "run", "--rm", "--interactive", "--env", "FASTMCP_LOG_LEVEL=ERROR", "awslabs/core-mcp-server:latest" ], "env": {}, "disabled": false, "autoApprove": [] }, "awslabs.aws-documentation-mcp-server": { "command": "docker", "args": [ "run", "--rm", "--interactive", "--env", "FASTMCP_LOG_LEVEL=ERROR", "--env", "AWS_DOCUMENTATION_PARTITION=aws", "mcp/aws-documentation:latest" ], "env": {}, "disabled": false, "autoApprove": [] }, "awslabs.cfn-mcp-server": { "command": "docker", "args": [ "run", "--rm", "--interactive", "awslabs/cfn-mcp-server:latest" ], "env": {}, "disabled": false, "autoApprove": [] }, "awslabs.cdk-mcp-server": { "command": "docker", "args": [ "run", "--rm", "--interactive", "--env", "FASTMCP_LOG_LEVEL=ERROR", "awslabs/cdk-mcp-server:latest" ], "env": {}, "disabled": false, "autoApprove": [] } } }
MCP ServerのDockerイメージのビルド
Core MCP ServerのREADMEを見ると、mcp.jsonの書き方が2種類紹介されています。
1つは、command
にuvx
を指定して、Dockerコンテナを起動する方法。
もう1つは、command
にdocker
を指定して、Dockerコンテナを起動する方法です。
巷のMCP Serverではnpx
が指定されているものもありますが、個人的な印象では大体のMCP Serverはdocker
で起動できると感じています。
故に、本記事でもdocker
を指定してMCP Serverを起動してみます。
docker
を指定する場合、Core MCP ServerのREADMEのdockerを使った設定例の前にある部分に注目してください。
or docker after a successful docker build -t awslabs/core-mcp-server .:
これは、AWS MCP ServerのDockerイメージをビルドしておく必要があることを示しています。
mcp.json
をよく見ると、args
の部分で、コンテナイメージ名を指定しています。
故に、このコンテナイメージ名と合致した名前のイメージを事前に用意しておく必要あるわけです。
Dockerイメージのビルド
では、AWS MCP ServerのDockerイメージをビルドしていきましょう。
任意の場所でAWS MCP Serverのソースコードをクローン。
クローンする場所は、MCP Serverを動かしたいフォルダとは全然違う場所でも問題ありません。
git clone https://github.com/awslabs/mcp.git
使用するMCP Serverのディレクトリに移動
# Cloneしたディレクトリに移動してから cd src/core-mcp-server
Dockerイメージをビルド
docker build -t awslabs/core-mcp-server .
他の3つのMCP Serverも同様にビルドして終了です。
ビルドに失敗する場合、Dockerの最新化やDocker Buildxのインストールが必要な場合があります。
ビルドしたDockerイメージの確認
確認コマンドを実行して、ビルドしたDockerイメージが存在することを確認します。
docker images REPOSITORY TAG IMAGE ID CREATED SIZE awslabs/cfn-mcp-server latest 843c6c813368 44 minutes ago 1.79GB awslabs/core-mcp-server latest 0c7e56cf7350 54 minutes ago 1.79GB awslabs/cdk-mcp-server latest adb604b5170b 57 minutes ago 1.77GB mcp/aws-documentation latest 0f66baa9ea99 2 days ago 2.02GB
Amazon Q Developer CLIでMCP Serverを起動
コマンドでAmazon Q Developer CLIを起動します。
q /chat
Amazon Q Developer CLIが起動し、MCP Serverも自動的に起動することが確認できます。
q chat ✓ awslabscore_mcp_server loaded in 2.56 s ✓ awslabscfn_mcp_server loaded in 2.87 s ✓ awslabsaws_documentation_mcp_server loaded in 2.95 s ✓ awslabscdk_mcp_server loaded in 2.99 s ⢠⣶⣶⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣿⣿⣿⣶⣦⡀⠀ ⠀⠀⠀⣾⡿⢻⣿⡆⠀⠀⠀⢀⣄⡄⢀⣠⣤⣤⡀⢀⣠⣤⣤⡀⠀⠀⢀⣠⣤⣤⣤⣄⠀⠀⢀⣤⣤⣤⣤⣤⣤⡀⠀⠀⣀⣤⣤⣤⣀⠀⠀⠀⢠⣤⡀⣀⣤⣤⣄⡀⠀⠀⠀⠀⠀⠀⢠⣿⣿⠋⠀⠀⠀⠙⣿⣿⡆ ⠀⠀⣼⣿⠇⠀⣿⣿⡄⠀⠀⢸⣿⣿⠛⠉⠻⣿⣿⠛⠉⠛⣿⣿⠀⠀⠘⠛⠉⠉⠻⣿⣧⠀⠈⠛⠛⠛⣻⣿⡿⠀⢀⣾⣿⠛⠉⠻⣿⣷⡀⠀⢸⣿⡟⠛⠉⢻⣿⣷⠀⠀⠀⠀⠀⠀⣼⣿⡏⠀⠀⠀⠀⠀⢸⣿⣿ ⠀⢰⣿⣿⣤⣤⣼⣿⣷⠀⠀⢸⣿⣿⠀⠀⠀⣿⣿⠀⠀⠀⣿⣿⠀⠀⢀⣴⣶⣶⣶⣿⣿⠀⠀⠀⣠⣾⡿⠋⠀⠀⢸⣿⣿⠀⠀⠀⣿⣿⡇⠀⢸⣿⡇⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⢹⣿⣇⠀⠀⠀⠀⠀⢸⣿⡿ ⢀⣿⣿⠋⠉⠉⠉⢻⣿⣇⠀⢸⣿⣿⠀⠀⠀⣿⣿⠀⠀⠀⣿⣿⠀⠀⣿⣿⡀⠀⣠⣿⣿⠀⢀⣴⣿⣋⣀⣀⣀⡀⠘⣿⣿⣄⣀⣠⣿⣿⠃⠀⢸⣿⡇⠀⠀⢸⣿⣿⠀⠀⠀⠀⠀⠀⠈⢿⣿⣦⣀⣀⣀⣴⣿⡿⠃ ⠚⠛⠋⠀⠀⠀⠀⠘⠛⠛⠀⠘⠛⠛⠀⠀⠀⠛⠛⠀⠀⠀⠛⠛⠀⠀⠙⠻⠿⠟⠋⠛⠛⠀⠘⠛⠛⠛⠛⠛⠛⠃⠀⠈⠛⠿⠿⠿⠛⠁⠀⠀⠘⠛⠃⠀⠀⠘⠛⠛⠀⠀⠀⠀⠀⠀⠀⠀⠙⠛⠿⢿⣿⣿⣋⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠛⠿⢿⡧ ╭─────────────────────────────── Did you know? ────────────────────────────────╮ │ │ │ Set a default model by running q settings chat.defaultModel MODEL. │ │ Run /model to learn more. │ │ │ ╰──────────────────────────────────────────────────────────────────────────────╯ /help all commands • ctrl + j new lines • ctrl + s fuzzy search ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 🤖 You are chatting with claude-4-sonnet
念の為、MCP Serverの一覧を確認してみましょう。
/mcp
コマンドを実行すると、MCP Serverの一覧が表示されます。
> /mcp awslabscdk_mcp_server ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ ✓ awslabscdk_mcp_server loaded in 2.99 s awslabscore_mcp_server ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ ✓ awslabscore_mcp_server loaded in 2.56 s awslabsaws_documentation_mcp_server ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ ✓ awslabsaws_documentation_mcp_server loaded in 2.95 s awslabscfn_mcp_server ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ ✓ awslabscfn_mcp_server loaded in 2.87 s >
これで、MCP Serverが起動していることが確認できました。
あとは、AI アシスタントに質問をして、チャットの中で質問をしていくといい感じでMCP Serverを活用してくれます。
今回は、以上です。
兼安 聡(執筆記事の一覧)
アプリケーションサービス部 DS3課所属
2025 Japan AWS Top Engineers (AI/ML Data Engineer)
2025 Japan AWS All Certifications Engineers
2025 AWS Community Builders
Certified ScrumMaster
PMP
広島在住です。今日も明日も修行中です。