

# レジストリ MCP エンドポイントの使用
<a name="registry-mcp-endpoint"></a>

**今後の名前空間の移行**  
 AWS エージェントレジストリは現在、bedrock-agentcore 名前空間のパブリックプレビュー中です。2026 年 8 月 6 日以降、サービスはエージェントレジストリ名前空間に移動します。 AWS エージェントレジストリを使用する場合は、エンドポイント、IAM ポリシー、SDK クライアント、CLI スクリプト、レジストリデータを更新する必要があります。パブリックプレビューからの移行の詳細については、[「包括的なレジストリ移行ガイド](registry-faq.md)」を参照してください。

## 概要
<a name="registry-mcp-overview"></a>

各レジストリは、[2025-11-25 仕様](https://modelcontextprotocol.io/specification/2025-11-25) に従って MCP 互換エンドポイントを公開します。エンドポイントは、レジストリレコードを検索するためのツールリストとツール呼び出しをサポートしています。

```
https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp
```

MCP には、「search\_registry\_records」という名前のツールが 1 つ含まれています。

```
Tool name: search_registry_records

Description:
Searches for registry records using natural language queries. Returns metadata for matching records.

Parameters:
- searchQuery (required): string - Natural language search query
- maxResults: integer - Maximum number of results to return (1-20, default 10)
- filter: object - Optional metadata filter using structured JSON operators. Supports field-level operators ($eq, $ne,
  $in) and logical operators ($and, $or) on filterable fields (name, descriptorType, version). Example:
  {"descriptorType": {"$eq": "MCP"}}
```

Kiro、Claude などの既存の MCP クライアントからレジストリに接続できます。

## 既存の MCP クライアントから OAuth ベースのレジストリ MCP エンドポイントに接続する
<a name="registry-mcp-connect-oauth"></a>

### アクセス許可
<a name="registry-mcp-permissions-oauth"></a>

MCP エンドポイントは、同じ **CustomJWTAuthorizerConfiguration** を使用して受信リクエストを承認します。

`.well-known/oauth-protected-resource` パスは です`https://bedrock-agentcore.<region>.amazonaws.com/.well-known/oauth-protected-resource/registry/<registryId>/mcp`。

クライアントは`WWW-Authenticate`ヘッダーからメタデータを検出することもできます。

```
www-authenticate: Bearer resource_metadata="https://bedrock-agentcore.<region>.amazonaws.com/.well-known/oauth-protected-resource/registry/<registryId>/mcp"
```

アクセストークンを取得したら、検証できます。

```
curl -s -X POST "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_registry_records","arguments":{"searchQuery":"weather"}}}'
```

認可サーバーと組織のセキュリティ要件に応じて、次のいずれかのアプローチを選択して MCP クライアントを設定できます。

1. ベアラートークン: 別のプロセスを使用してベアラートークンを取得し、MCP クライアントヘッダーで設定します。

1. 事前登録済みクライアント: 認可サーバーにクライアントを作成し、レジストリの設定でクライアントを許可リストに登録します。

1. 動的クライアント登録: 認可サーバーが動的クライアント登録 (DCR) をサポートしている場合、レジストリの設定で対象者を許可リストに登録できます。

### OAuth ベースの MCP クライアント設定
<a name="registry-mcp-connect-oauth-setup"></a>

#### ベアラートークンを使用する
<a name="registry-mcp-connect-oauth-bearer"></a>

ほとんどの IDEs では、mcp 設定で認可ヘッダーベアラートークンを設定できます。たとえば、[Kiro は 構文を使用して環境変数をサポートしています](https://kiro.dev/blog/introducing-remote-mcp/#securing-mcp-connections)。 `${ENV_VAR}`次の例を使用できます。

```
{
  "mcpServers": {
    "my-registry": {
      "type": "http",
      "url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp",
      "headers": {
        "Authorization": "Bearer ${ACCESS_TOKEN}"
      }
    }
  }
}
```

#### 事前登録済みクライアント
<a name="registry-mcp-connect-oauth-preregistered"></a>

認可サーバーで認可コードの付与に基づいて新しいクライアントを作成し、そのクライアントを使用してレジストリにアクセスできます。たとえば、[Cognito ユーザープールにクライアントを作成します](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/identity-idp-cognito.html)。

クライアント ID を取得したら、レジストリで許可リストに登録してください。

```
aws bedrock-agentcore-control update-registry \
  --registry-id <registryId> \
  --authorizer-configuration '{
    "optionalValue": {
      "customJWTAuthorizer": {
        "discoveryUrl": "https://<example-domain>/.well-known/openid-configuration",
        "allowedClients": ["<client-id>"]
      }
    }
  }'
```

その後、clientId の指定をサポートしている場合は、MCP クライアントを設定できます。Claude コードの例:

```
{
  "mcpServers": {
    "pre-registered-registry": {
      "type": "http",
      "url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp",
      "oauth": {
        "clientId": "<client-id>",
        "callbackPort": "<port-number>"
      }
    }
  }
}
```

**注記**  
Auth0 や Cognito などの一部の認可サーバーでは、ポートの範囲を許可リダイレクト URIs として設定できないため、事前登録されたクライアントの許可されたリダイレクト/コールバック URL と mcp.json で明示的に設定する必要があります。

#### 動的クライアント登録
<a name="registry-mcp-connect-oauth-dcr"></a>

ほとんどの MCP クライアントアプリケーションは、動的クライアント登録をサポートしています。この場合、レジストリに`allowedClients`値を指定しないでください。代わりに、 `allowedAudience` を設定することもできます。値は MCP レジストリと同じにすることができます。と同じ値を持つ `aud`フィールドで JWT を発行するように認可サーバーを設定する必要があります`allowedAudience`。

```
aws bedrock-agentcore-control update-registry \
  --registry-id <registryId> \
  --authorizer-configuration '{
    "optionalValue": {
      "customJWTAuthorizer": {
        "discoveryUrl": "https://<example-domain>/.well-known/openid-configuration",
        "allowedAudience": ["https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp"]
      }
    }
  }'
```

その後、URL を使用して MCP クライアントを設定できます。

```
{
  "mcpServers": {
    "dcr-registry": {
      "type": "http",
      "url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp"
    }
  }
}
```

動的クライアント登録をセットアップする際の一般的なエラー:
+ 認可サーバーが動的クライアント登録をサポートしていることを確認する必要があります。
+ 認可サーバーは、レジストリの CustomJWTAuthorizerConfiguration で許可されている `aud`フィールドで JWT を発行する必要があります。
+ 現在、レジストリは www-authenticate ヘッダーでスコープチャレンジを返しません。一部の MCP クライアントは、[Kiro](https://kiro.dev/docs/cli/custom-agents/configuration-reference/#oauth-configuration) などの設定`oauthScopes`での明示的な定義をサポートしています。

## 既存の MCP クライアントから IAM ベースのレジストリ MCP エンドポイントに接続する
<a name="registry-mcp-connect-iam"></a>

### アクセス許可
<a name="registry-mcp-permissions-iam"></a>

MCP の初期化とツールのリスト:

```
{
    "Effect": "Allow",
    "Action": "bedrock-agentcore:InvokeRegistryMcp",
    "Resource": "arn:aws:bedrock-agentcore:*:<account>:registry/*"
}
```

MCP ツール呼び出しで検索するには、以下も必要です。

```
{
    "Effect": "Allow",
    "Action":
    [
        "bedrock-agentcore:InvokeRegistryMcp",
        "bedrock-agentcore:SearchRegistryRecords"
    ],
    "Resource": "arn:aws:bedrock-agentcore:*:<account>:registry/*"
}
```

コマンドを使用してアクセス許可を確認できます。

```
curl -s -X POST "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp" \
  -H "Content-Type: application/json" \
  -H "X-Amz-Security-Token: ${AWS_SESSION_TOKEN}" \
  --aws-sigv4 "aws:amz:<region>:bedrock-agentcore" \
  --user "${AWS_ACCESS_KEY_ID}:${AWS_SECRET_ACCESS_KEY}" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_registry_records","arguments":{"searchQuery":"weather"}}}'
```

### IAM ベースの MCP クライアント設定
<a name="registry-mcp-connect-iam-setup"></a>

[mcp-proxy-for-aws](https://github.com/aws/mcp-proxy-for-aws) を使用して、IAM ベースのレジストリに接続できます。たとえば、Kiro mcp.json の場合:

```
{
  "mcpServers": {
    "iam-based-registry": {
      "disabled": false,
      "type": "stdio",
      "command": "uvx",
      "args": [
        "mcp-proxy-for-aws@latest",
        "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp",
        "--service",
        "bedrock-agentcore",
        "--region",
        "<region>",
        "--profile",
        "my-profile"
      ]
    }
  }
}
```

## 独自の MCP クライアントを開発する
<a name="registry-mcp-develop-client"></a>

Kiro や Claude Code などの一般的な IDEs からのレジストリ MCP エンドポイントの呼び出し方法に関するその他のコードリファレンスについては、パブリックコードリポジトリのサンプルコードリファレンスを参照してください。