Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Templat integrasi server MCP
Dengan templat server Model Context Protocol (MCP), Anda dapat menerapkan server MCP yang OpenSearch dihosting di Amazon Bedrock AgentCore, mengurangi kompleksitas integrasi antara agen dan alat AI. OpenSearch Untuk informasi lebih lanjut, lihat Apa itu Amazon Bedrock? AgentCore .
Fitur Template
Template ini mencakup fitur-fitur utama berikut untuk menyebarkan dan mengelola server MCP Anda.
- Penerapan server MCP terkelola
-
Menerapkan opensearch-mcp-server-pymenggunakan Amazon Bedrock AgentCore Runtime, dan menyediakan titik akhir agen yang mem-proxy permintaan ke server MCP yang mendasarinya. Untuk informasi lebih lanjut, lihat opensearch-mcp-server-py
di GitHub. - Otentikasi dan keamanan
-
Menangani otentikasi masuk (dari pengguna ke server MCP) dan otentikasi keluar (dari server MCP ke OpenSearch), dan mendukung otentikasi perusahaan. OAuth
catatan
Template server MCP hanya tersedia dalam hal berikut: Wilayah AWS
-
AS Timur (Virginia Utara)
-
AS Barat (Oregon)
-
Eropa (Frankfurt)
-
Asia Pasifik (Sydney)
Untuk menggunakan template server MCP
Ikuti langkah-langkah ini untuk menyebarkan template server MCP dan menghubungkannya ke domain Anda OpenSearch .
-
Di panel navigasi kiri, pilih Integrasi.
-
Temukan template integrasi server MCP.
-
Pilih Konfigurasi domain. Kemudian, masukkan endpoint OpenSearch domain Anda.
Template membuat AgentCore Runtime dan komponen berikut, jika parameter opsional yang sesuai tidak ditentukan:
-
Repositori ECR Amazon
-
Kumpulan pengguna Amazon Cognito sebagai otorisasi OAuth
-
Peran eksekusi yang digunakan oleh AgentCore Runtime
Setelah Anda menyelesaikan prosedur ini, Anda harus mengikuti langkah-langkah pasca-pembuatan ini:
-
Untuk OpenSearch Layanan Amazon: Petakan peran eksekusi ARN ke peran OpenSearch backend untuk mengontrol akses ke domain Anda.
Untuk Amazon OpenSearch Tanpa Server: Buat kebijakan akses data yang memungkinkan peran eksekusi mengakses koleksi Anda.
-
Dapatkan token OAuth akses dari otorisasi Anda. Kemudian gunakan token ini untuk mengakses server MCP di URL yang tercantum dalam output CloudFormation tumpukan Anda.
Untuk informasi selengkapnya, lihat Tindakan kebijakan untuk Tanpa OpenSearch Server.
Integrasi dengan agen AI
Setelah penerapan, Anda dapat mengintegrasikan server MCP dengan agen yang kompatibel dengan MCP apa pun. Untuk informasi selengkapnya, lihat Memanggil server MCP yang digunakan di Panduan Pengembang Amazon Bedrock.
- Integrasi Pengembang
-
Anda dapat menambahkan endpoint server MCP ke konfigurasi agen Anda. Anda juga dapat menggunakannya dengan CLI Pengembang Amazon Q, agen khusus, atau agen lain yang kompatibel dengan MCP.
- Penyebaran Perusahaan
-
Agen yang dihosting pusat dapat terhubung ke beberapa layanan dengan OpenSearch satu komponen. Agen ini mendukung OAuth dan sistem otentikasi perusahaan, dan skala untuk mendukung beberapa pengguna dan kasus penggunaan.
import os
import requests
from strands import Agent
from strands.tools.mcp import MCPClient
from mcp.client.streamable_http import streamablehttp_client
def get_bearer_token(discovery_url: str, client_id: str, client_secret: str):
response = requests.get(discovery_url)
discovery_data = response.json()
token_endpoint = discovery_data['token_endpoint']
data = {
'grant_type': 'client_credentials',
'client_id': client_id,
'client_secret': client_secret
}
headers = {
'Content-Type': 'application/x-www-form-urlencoded'
}
response = requests.post(token_endpoint, data=data, headers=headers)
token_data = response.json()
return token_data['access_token']
if __name__ == "__main__":
discovery_url = os.environ["DISCOVERY_URL"]
client_id = os.environ["CLIENT_ID"]
client_secret = os.environ["CLIENT_SECRET"]
mcp_url = os.environ["MCP_URL"]
bearer_token = get_bearer_token(discovery_url, client_id, client_secret)
opensearch_mcp_client = MCPClient(lambda: streamablehttp_client(mcp_url, {
"authorization": f"Bearer {bearer_token}",
"Content-Type": "application/json"
}))
with opensearch_mcp_client:
tools = opensearch_mcp_client.list_tools_sync()
agent = Agent(tools=tools)
agent("list indices")
Untuk informasi selengkapnya, lihat Hosting Server OpenSearch MCP dengan Amazon Bedrock AgentCore