Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan titik akhir MCP Registry
AWS Agen Registry telah diluncurkan di bawah agent-registry namespace baru. Dukungan untuk bedrock-agentcore namespace pratinjau publik akan dihentikan pada 17 September 2026. Untuk petunjuk migrasi, lihat Panduan migrasi registri komprehensif.
Gambaran umum
Setiap registri mengekspos MCP-compatible titik akhir mengikuti spesifikasi 2025-11-25 di situs web Model Context Protocol. Titik akhir mendukung daftar alat dan pemanggilan alat untuk mencari catatan registri.
contoh
- AWS Agent Registry namespace
-
https://agent-registry.<region>.api.aws/registry/<registryId>/mcp
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp
Di agent-registry namespace, titik akhir MCP mengekspos ketiga API bidang data penemuan sebagai alat MCP:
-
search_discoverable_registry_records— Pencarian bahasa alami untuk catatan yang disetujui.
-
list_discoverable_registry_records— Daftar halaman catatan yang disetujui.
-
batch_get_discoverable_registry_record— Pengambilan massal konten rekaman penuh dengan ID catatan.
Di bedrock-agentcore namespace, hanya search_registry_records alat yang diekspos. Tabel berikut menunjukkan definisi alat:
contoh
- AWS Agent Registry namespace
-
Tool name: search_discoverable_registry_records
Description:
Searches for approved 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, recordType, recordVersion). Example:
{"recordType": {"$eq": "MCP"}}
---
Tool name: list_discoverable_registry_records
Description:
Returns paginated summaries of approved records in the registry. Summaries include record metadata but not descriptor
content. Use batch_get_discoverable_registry_record to fetch full descriptors after identifying the records you need.
Parameters:
- maxResults: integer - Maximum number of results per page (1-100, default 20)
- nextToken: string - Pagination token from a previous response. Omit for the first page.
- filters: array - Optional list of filter entries in the form {"name": "<field>", "values": ["<value>"]}. Supported
filter names: recordType (valid values: AGENT, MCP, SKILL, CUSTOM) and descriptorType (valid values: a2aAgentCard,
mcpServer, agentSkillsDefinition, custom). Duplicate filter names are rejected. If you specify multiple values for
a single filter, the values are joined by OR. If you specify multiple filters, the filters are joined by AND.
---
Tool name: batch_get_discoverable_registry_record
Description:
Retrieves the full descriptor content for up to 100 approved records in a single call. Common use case: after
identifying records with list_discoverable_registry_records or search_discoverable_registry_records, fetch their full
descriptors in one call rather than making one call per record.
Parameters:
- recordIds (required): array - List of 1-100 record ARNs or IDs to retrieve from the registry.
The response returns HTTP 200 even on partial failure. Records that could not be retrieved appear in an errors list
with an errorCode (RESOURCE_NOT_FOUND, ACCESS_DENIED, or INTERNAL_ERROR) rather than causing the whole call to fail.
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
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"}}
Anda dapat terhubung ke registri dari klien MCP yang ada, seperti Kiro, Claude, dll.
Sambungkan ke titik akhir MCP OAuth-based registri dari klien MCP yang ada
Izin
Titik akhir MCP akan menggunakan yang sama CustomJWTAuthorizerConfiguration untuk mengotorisasi permintaan masuk.
.well-known/oauth-protected-resourceJalurnya adalah: https://agent-registry.<region>.api.aws/.well-known/oauth-protected-resource/registry/<registryId>/mcp (https://bedrock-agentcore.<region>.amazonaws.com/.well-known/oauth-protected-resource/registry/<registryId>/mcpuntuk registri yang masih ada di bedrock-agentcore namespace).
Klien dapat menemukan metadata dari WWW-Authenticate header juga:
contoh
- AWS Agent Registry namespace
-
www-authenticate: Bearer resource_metadata="https://agent-registry.<region>.api.aws/.well-known/oauth-protected-resource/registry/<registryId>/mcp"
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
www-authenticate: Bearer resource_metadata="https://bedrock-agentcore.<region>.amazonaws.com/.well-known/oauth-protected-resource/registry/<registryId>/mcp"
Setelah Anda memperoleh token akses, Anda dapat memvalidasinya:
contoh
- AWS Agent Registry namespace
-
curl -s -X POST "https://agent-registry.<region>.api.aws/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_discoverable_registry_records","arguments":{"searchQuery":"weather"}}}'
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
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"}}}'
Bergantung pada server otorisasi dan persyaratan keamanan organisasi, Anda dapat memilih salah satu pendekatan berikut untuk mengonfigurasi klien MCP Anda:
-
Token pembawa: gunakan proses terpisah untuk mengambil token pembawa dan mengkonfigurasinya di header klien MCP
-
Pre-registered klien: buat klien di server otorisasi Anda, dan izinkan daftar klien pada konfigurasi registri.
-
Registrasi klien dinamis: jika server otorisasi Anda mendukung pendaftaran klien dinamis (DCR), Anda dapat mengizinkan daftar audiens dalam konfigurasi registri.
OAuth-based Pengaturan klien MCP
Gunakan token pembawa
Di sebagian besar IDE, Anda dapat mengonfigurasi token pembawa header otorisasi dalam konfigurasi mcp. Misalnya, Kiro IDE mendukung variabel lingkungan menggunakan ${ENV_VAR} sintaks. Untuk detailnya, lihat Meng amankan koneksi MCP di situs web Kiro. Anda dapat menggunakan contoh berikut:
contoh
- AWS Agent Registry namespace
-
{
"mcpServers": {
"my-registry": {
"type": "http",
"url": "https://agent-registry.<region>.api.aws/registry/<registryId>/mcp",
"headers": {
"Authorization": "Bearer ${ACCESS_TOKEN}"
}
}
}
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"mcpServers": {
"my-registry": {
"type": "http",
"url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp",
"headers": {
"Authorization": "Bearer ${ACCESS_TOKEN}"
}
}
}
}
Pre-registered Klien
Anda dapat membuat klien baru berdasarkan pemberian kode otorisasi di server otorisasi Anda, dan menggunakan klien untuk mengakses registri. Misalnya, buat klien di kumpulan pengguna Cognito.
Setelah Anda memiliki ID klien, pastikan Anda mengizinkannya di registri:
contoh
- AWS Agent Registry namespace
-
aws agent-registry-control update-registry \
--registry-id <registryId> \
--discovery-configuration '{
"authorizerConfiguration": {
"optionalValue": {
"customJWTAuthorizer": {
"discoveryUrl": "https://<example-domain>/.well-known/openid-configuration",
"allowedClients": ["<client-id>"]
}
}
}
}'
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
aws bedrock-agentcore-control update-registry \
--registry-id <registryId> \
--authorizer-configuration '{
"optionalValue": {
"customJWTAuthorizer": {
"discoveryUrl": "https://<example-domain>/.well-known/openid-configuration",
"allowedClients": ["<client-id>"]
}
}
}'
Kemudian Anda dapat mengonfigurasi klien MCP Anda jika mendukung penentuan clientID. Contoh dalam kode Claude:
contoh
- AWS Agent Registry namespace
-
{
"mcpServers": {
"pre-registered-registry": {
"type": "http",
"url": "https://agent-registry.<region>.api.aws/registry/<registryId>/mcp",
"oauth": {
"clientId": "<client-id>",
"callbackPort": "<port-number>"
}
}
}
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"mcpServers": {
"pre-registered-registry": {
"type": "http",
"url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp",
"oauth": {
"clientId": "<client-id>",
"callbackPort": "<port-number>"
}
}
}
}
Beberapa server otorisasi seperti Auth0 dan Cognito tidak mengizinkan Anda mengonfigurasi berbagai port sebagai URI pengalihan yang diizinkan, jadi Anda perlu mengaturnya secara eksplisit di redirect/callback URL yang diizinkan klien yang telah terdaftar sebelumnya, serta di mcp.json.
Pendaftaran klien dinamis
Sebagian besar aplikasi klien MCP mendukung pendaftaran klien dinamis. Dalam hal ini, Anda tidak harus menentukan allowedClients nilai dalam registri. Sebagai gantinya, Anda dapat memilih untuk mengaturallowedAudience. Nilainya bisa sama dengan registri MCP Anda. Anda harus mengonfigurasi server otorisasi Anda untuk mengeluarkan JWT dengan aud bidang dengan nilai yang sama seperti diallowedAudience.
contoh
- AWS Agent Registry namespace
-
aws agent-registry-control update-registry \
--registry-id <registryId> \
--discovery-configuration '{
"authorizerConfiguration": {
"optionalValue": {
"customJWTAuthorizer": {
"discoveryUrl": "https://<example-domain>/.well-known/openid-configuration",
"allowedAudience": ["https://agent-registry.<region>.api.aws/registry/<registryId>/mcp"]
}
}
}
}'
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
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"]
}
}
}'
Kemudian Anda dapat mengkonfigurasi klien MCP Anda hanya menggunakan url:
contoh
- AWS Agent Registry namespace
-
{
"mcpServers": {
"dcr-registry": {
"type": "http",
"url": "https://agent-registry.<region>.api.aws/registry/<registryId>/mcp"
}
}
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"mcpServers": {
"dcr-registry": {
"type": "http",
"url": "https://bedrock-agentcore.<region>.amazonaws.com/registry/<registryId>/mcp"
}
}
}
Kesalahan umum saat Anda mengatur pendaftaran klien dinamis:
-
Anda harus memastikan server otorisasi mendukung pendaftaran klien dinamis.
-
Server otorisasi harus mengeluarkan JWT dengan aud bidang, yang diizinkan di registri Anda. CustomJWTAuthorizerConfiguration
-
Saat ini registri tidak mengembalikan tantangan cakupan di header www-authenticate. Beberapa klien MCP mendukung penentuan secara eksplisit oauthScopes dalam konfigurasi, seperti Kir o.
Sambungkan ke titik akhir MCP IAM-based registri dari klien MCP yang ada
Izin
Untuk inisialisasi MCP dan daftar alat:
contoh
- AWS Agent Registry namespace
-
{
"Effect": "Allow",
"Action": "agent-registry:InvokeRegistryMcp",
"Resource": "arn:aws:agent-registry:*:<account>:registry/*"
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"Effect": "Allow",
"Action": "bedrock-agentcore:InvokeRegistryMcp",
"Resource": "arn:aws:bedrock-agentcore:*:<account>:registry/*"
}
Untuk mencari melalui pemanggilan alat MCP, Anda juga perlu:
contoh
- AWS Agent Registry namespace
-
{
"Effect": "Allow",
"Action":
[
"agent-registry:InvokeRegistryMcp",
"agent-registry:SearchDiscoverableRegistryRecords"
],
"Resource": "arn:aws:agent-registry:*:<account>:registry/*"
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"Effect": "Allow",
"Action":
[
"bedrock-agentcore:InvokeRegistryMcp",
"bedrock-agentcore:SearchRegistryRecords"
],
"Resource": "arn:aws:bedrock-agentcore:*:<account>:registry/*"
}
Anda dapat memverifikasi izin dengan perintah:
contoh
- AWS Agent Registry namespace
-
curl -s -X POST "https://agent-registry.<region>.api.aws/registry/<registryId>/mcp" \
-H "Content-Type: application/json" \
-H "X-Amz-Security-Token: ${AWS_SESSION_TOKEN}" \
--aws-sigv4 "aws:amz:<region>:agent-registry" \
--user "${AWS_ACCESS_KEY_ID}:${AWS_SECRET_ACCESS_KEY}" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_discoverable_registry_records","arguments":{"searchQuery":"weather"}}}'
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
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-based Pengaturan klien MCP
Anda dapat menggunakan mcp-proxy-for-aws di situs GitHub web untuk terhubung ke registri. IAM-based Misalnya, di Kiro mcp.json:
contoh
- AWS Agent Registry namespace
-
{
"mcpServers": {
"iam-based-registry": {
"disabled": false,
"type": "stdio",
"command": "uvx",
"args": [
"mcp-proxy-for-aws@latest",
"https://agent-registry.<region>.api.aws/registry/<registryId>/mcp",
"--service",
"agent-registry",
"--region",
"<region>",
"--profile",
"my-profile"
]
}
}
}
- Amazon Bedrock AgentCore namespace (to be deprecated)
-
{
"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"
]
}
}
}
Kembangkan klien MCP Anda sendiri
Untuk referensi kode lebih lanjut tentang cara memanggil titik akhir MCP Registri, termasuk dari IDE populer seperti Kiro atau Claude Code, silakan merujuk ke referensi kode sampel di repositori kode publik.