6
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

マケプレでサブスクしたMCPサーバーをAgentCore RuntimeにデプロイしてMCP Proxy for AWS経由でKiro CLIからアクセスする

6
Posted at

いろんなアップデートをごちゃまぜに検証しました。

実用的に使いたい場合はローカルMCPでいいような気がします。

{
  "mcpServers": {
    "awslabs.aws-api-mcp-server": {
      "command": "uvx",
      "args": [
        "awslabs.aws-api-mcp-server@latest"
      ],
      "env": {
        "AWS_REGION": "us-east-1"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

検証したアップデート

  • AWS製のAPI MCP Serverが、AWSのマーケットプレイスで入手可能になりました

  • SigV4認証部分を肩代わりしてくれるMCP Proxy for AWSというOSSが公開になりました

  • Kiro CLIが登場しました

AWS製のAPI MCP Serverが、AWSのマーケットプレイスで入手可能になりました

こちらのURLから入手可能です。無料です。

アクセスするとこんな感じです。「購入オプションを表示」をクリックします。

us-east-1.console.aws.amazon.com_marketplace_search_listing_prodview-lqqkwbcraxsgw_sr=0-6&ref_=beagle&applicationId=AWS-Marketplace-Console.png

購入オプションが表示されます。

us-east-1.console.aws.amazon.com_marketplace_search_listing_prodview-lqqkwbcraxsgw_procurement_procure_productId=prod-n24nr4cem54nc&redirectUrl=%2Fmarketplace%2Fsearch%2Flisting%2Fprodview-lqqkwbcraxsgw.png

ページ下部に「サブスクライブ」ボタンがあるのでクリックします。

us-east-1.console.aws.amazon.com_marketplace_search_listing_prodview-lqqkwbcraxsgw_procurement_procure_productId=prod-n24nr4cem54nc&redirectUrl=%2Fmarketplace%2Fsearch%2Flisting%2Fprodview-lqqkwbcraxsgw (1).png

購入できました。「ソフトウェアを起動」をクリックします。

us-east-1.console.aws.amazon.com_marketplace_search_listing_prodview-lqqkwbcraxsgw_procurement_procure_productId=prod-n24nr4cem54nc&redirectUrl=%2Fmarketplace%2Fsearch%2Flisting%2Fprodview-lqqkwbcraxsgw (2).png

AgentCore Runtimeへのデプロイする方法が表示されます。

us-east-1.console.aws.amazon.com_marketplace_subscriptions_prod-n24nr4cem54nc_launch.png

機械翻訳感がすごいです。環境変数は指定された通りに入力してみようと思います。

us-east-1.console.aws.amazon.com_marketplace_subscriptions_prod-n24nr4cem54nc_launch (1).png

下の方に行くと、「AgentCoreでのホスティングをセットアップ」がありますのでクリックします。

us-east-1.console.aws.amazon.com_marketplace_subscriptions_prod-n24nr4cem54nc_launch (2).png

AgentCore Runtimeの新規作成画面に遷移します。サブスクしたMCPサーバーのコンテナイメージが指定されています。

us-east-1.console.aws.amazon.com_bedrock-agentcore_agents_create_marketplaceProductId=prod-n24nr4cem54nc&marketplaceFulfillmentOptionId=fo-fnd522yqco42o&region=us-east-1.png

インバウンド認証はCognitoが選択されていますが、「IAM許可を使用」に変更します。

us-east-1.console.aws.amazon.com_bedrock-agentcore_agents_create_marketplaceProductId=prod-n24nr4cem54nc&marketplaceFulfillmentOptionId=fo-fnd522yqco42o&region=us-east-1 (1).png

環境変数は正しくセットされていました。ちょっと残念。

画面最下部の「ホストエージェント」ボタンをクリックするとRuntimeにデプロイされます。

us-east-1.console.aws.amazon.com_bedrock-agentcore_agents_create_marketplaceProductId=prod-n24nr4cem54nc&marketplaceFulfillmentOptionId=fo-fnd522yqco42o&region=us-east-1 (2).png

キャプチャを取り忘れましたが、AgentCore Runtimeのサービスロールに、アクセスしたいAWSサービスに対する権限を扶養します。

SigV4認証部分を肩代わりしてくれるMCP Proxy for AWSというOSSが公開になりました

AgentCoreでMCPサーバーをホストした場合、困るのが認証認可部分です。2025/11/29時点でAgentCore RuntimeはIAMかJWTトークンによる認証が必要です。

一般的なMCPクライアントでは、IAMのSigV4認証に対応しているわけもないので困りものです。が、この困りごとを解決するために、SigV4認証部分をProxyするMCPサーバーを、AWSが公開しました。

使いたいMCPサーバーの前段に配置するMCPサーバーでして、こんな構成になります。

使用方法としては、MCPサーバーとしてMCP Proxy for AWSを指定し、引数でAgentCore RuntimeでホストしているIAM認証付きのMCPサーバーのエンドポイントを指定します。

MCPの設定としてはこんな感じになります。

{
  "mcpServers": {
    "aws-api-mcp-server": {
      "command": "uvx",
      "args": [
        "mcp-proxy-for-aws@latest",
        "{AgentCore RuntimeでホストしているMCPサーバー}",
        "--region",
        "us-east-1"
      ]
    }
  }
}

AgentCore RuntimeでホストしているMCPサーバーのエンドポイントは以下のように生成します。ちょっと複雑です。

export AGENT_RUNTIME_ID={AgentCore RuntimeのRuntime ID}
export AWS_REGION=us-east-1

AGENT_RUNTIME_ARN=`aws bedrock-agentcore-control get-agent-runtime \
  --agent-runtime-id $AGENT_RUNTIME_ID \
  --region $AWS_REGION | jq -r .agentRuntimeArn`

URL_ENCODED_ARN=`echo ${AGENT_RUNTIME_ARN} | sed 's/:/%3A/g; s/\//%2F/g'`

echo https://bedrock-agentcore.${AWS_REGION}.amazonaws.com/runtimes/${URL_ENCODED_ARN}/invocations?qualifier=DEFAULT

Kiro CLIが登場しました

Amazon Q Developer CLIがKiro CLIになりました。

最後にMCPサーバーにアクセスして終わりましょう。

MCPサーバーの設定を追加します。argsはカンマ区切りで指定します。

kiro-cli mcp add \
  --name aws-api-mcp-server \
  --command uvx \
  --args mcp-proxy-for-aws@latest,{MCPサーバーのエンドポイント},--region,us-east-1

kiro CLIを起動します。

kiro-cli

むらさきがいいですね。病みつきですね。

image.png

`/mcp`でMCPサーバーの一覧を取得します。

> /mcp

aws-api-mcp-server
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
[2025:15:00]: ✓ aws-api-mcp-server loaded in 8.14 s

うまく登録できています。

APIを呼び出してもらいましょう。(aws-api-mcp-serverが呼び出されていることがわかります)

> バージニア北部リージョンにあるBedrock AgentCore Runtimeのランタイム名を一覧で取得して。

> バージニア北部リージョン(us-east-1)のBedrock AgentCore Runtimeのランタイム名を取得します。
Running tool call_aws with the param (from mcp server: aws-api-mcp-server)
 ⋮  {
 ⋮    "cli_command": "aws bedrock-agent-runtime list-agents --region us-east-1"
 ⋮  }

Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> t

 - Completed in 5.732s

> bedrock-agent-runtimeサービスで利用可能な操作を確認してみます。
Running tool suggest_aws_commands with the param (from mcp server: aws-api-mcp-server)
 ⋮  {
 ⋮    "query": "List all available operations or runtimes in Bedrock Agent Runtime service in us-east-1 region"
 ⋮  }

Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:

> t

 - Completed in 5.865s

> bedrock-agentcore-controlサービスのlist-agent-runtimesコマンドを使用してランタイム名を取得します。
Running tool call_aws with the param (from mcp server: aws-api-mcp-server)
 ⋮  {
 ⋮    "cli_command": "aws bedrock-agentcore-control list-agent-runtimes --region us-east-1"
 ⋮  }
 - Completed in 5.619s

> バージニア北部リージョン(us-east-1)のBedrock AgentCore Runtimeのランタイム名一覧:

1. hosted_agent_n209q
2. hosted_agent_wmkf8
3. simple_strands_agents

各ランタイムの詳細:
- hosted_agent_n209q: バージョン6、ステータス: READY
- hosted_agent_wmkf8: バージョン2、ステータス: READY  
- simple_strands_agents: バージョン1、ステータス: READY
 ▸ Time: 39s

> 

うまくいきましたよ!

6
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?