GitHub CopilotのエージェントモードがGAされたのでAmazon Nova Canvas MCP Serverを接続して画像生成をしてみた
こんにちは、なおにしです。
VSCodeでGitHub CopilotとAmazon Nova Canvas MCP Serverを使用して画像生成をする機会がありましたのでご紹介します。
はじめに
GitHub Copilotのエージェントモードはこれまでプレビュー版として提供されていたため、使用するにはVSCode Insidersを別途インストールする必要がありました。(参考)
ですが、先日公開されたVSCodeバージョン1.99よりエージェントモードがGAとなり、通常版のVSCodeでも利用できるようになっています。
リリースノートには以下の記載もあり、MCPサーバを利用できるようなので標題の内容を実際にやってみました。
Extend agent mode with Model Context Protocol (MCP) server tools (more...).
なお、趣旨としては以下の記事(Cline版)に対するGitHub Copilot版ですので、併せてご参照ください。
やってみた
事前準備
Amazon Nova Canvas MCP Serverのドキュメントに基づいて準備します。
まず、パッケージ管理ツールのuv
をインストールします。
$ pipx install uv
$ uvx --version
uv-tool-uvx 0.6.12 (e4e03833f 2025-04-02)
(直近でAWSumeのように公式でHomebrewをサポートしないパターンに遭遇したため、なんとなくpipxを使用しました。uvについてはAstral社のInstallationページにインストール方法と明記されているので、どちらでも良いとは思います)
続いて、Amazon Nova Canvasを利用できる状態にします。
Amazon Nova Canvasは東京リージョンで利用可能となっていますので、せっかくなので東京リージョンを指定します。利用に際し、事前にモデルアクセスのリクエストが必要なので詳細は以下の記事をご参照ください。
また、エージェントモードはVSCodeをバージョン1.99にアップデートしたタイミングで有効(使用可能)になっていましたが、以下のように選択できない場合はリリースノートにあるとおり有効化されているかご確認ください。
MCPサーバを設定する
以下のようにエージェントモードの設定ボタンからMCPサーバの追加を選択することができます。
追加するMCPサーバの種類を選択する必要がありますので、「コマンド(stdio)」を選択します。
先ほどインストールしたuvパッケージに含まれるuvx
コマンドを使用するので、uvx
と入力します。
サーバーIDの入力を求められますので、今回はドキュメントの設定を参考にしてawslabs.nova-canvas-mcp-server
とします。
ワークスペースを開いた状態であれば以下のように構成の保存場所を選択できるので、今回はワークスペースの設定
とします。なお、ワークスペースを開いていない状態の場合は以下の選択画面は表示されず、ユーザー設定
としてsettings.json
に保存されるのでご注意ください。
ここまで設定するとmcp.json
が作成されて開きます。
ドキュメントの設定を参考に、追加で以下のように設定しました。上記と比較した設定箇所はargs
とenv
のみです。
{
"servers": {
"awslabs.nova-canvas-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"awslabs.nova-canvas-mcp-server@latest"
],
"env": {
"AWS_PROFILE": "naonishi-bedrock",
"AWS_REGION": "ap-northeast-1",
"FASTMCP_LOG_LEVEL": "ERROR"
}
}
}
}
"type": "stdio"
を含む各項目の説明についてはVSCodeのドキュメントをご参照ください。
以下、stdio接続の場合における抜粋(機械翻訳)です。
フィールド | 説明 | 例 |
---|---|---|
type |
サーバー接続タイプ。 | "stdio" |
command |
サーバー実行可能ファイルを起動するコマンド。 | "npx" 、、、"node"``"python"``"docker" |
args |
コマンドに渡される引数の配列。 | ["server.py", "--port", "3000"] |
env |
サーバーの環境変数。 | {"API_KEY": "${input:api-key}"} |
envFile |
.env 追加の環境変数を読み込むパス。 |
"${workspaceFolder}/.env" |
そもそも上記設定におけるstdioとは?に関しては以下の記事もご参照ください。
設定を保存して起動
を押下します。以下のように実行中
状態になればMCPサーバを利用可能となります。
設定ボタンを押して使用可能なツールが選択できていることを確認します。
画像を生成する
「福岡の画像を生成してください。」と指示しました。generate_image
を実行する前に続行して良いか確認してくれるようです。また、トグルを開くとMCPサーバからの応答メッセージやパラメータを確認可能です。
続行すると福岡(...?)の画像を生成してくれました。
まとめ
標準のVSCode + GitHub CopilotでもMCPサーバを利用できることが確認できました。より簡単に画像生成を試すことができて面白いのですが、Amazon Nova Canvasの利用料金についてはご注意ください。
本記事がどなたかのお役に立てれば幸いです。