View a markdown version of this page

Templat integrasi server MCP - OpenSearch Layanan Amazon

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 template server Model Context Protocol (MCP), Anda dapat menerapkan server MCP yang di OpenSearch hosting 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 utama berikut untuk menerapkan dan mengelola server MCP Anda.

Penyebaran server MCP terkelola

Menyebarkan opensearch-mcp-server-py menggunakan Amazon Bedrock AgentCore Runtime, dan menyediakan titik akhir agen yang meminta proxy ke server MCP yang mendasarinya. Untuk informasi selengkapnya, lihat opensearch- mcp-server-py on. GitHub

Otentikasi dan keamanan

Menangani otentikasi masuk (dari pengguna ke server MCP) dan otentikasi keluar (dari server MCP ke OpenSearch), dan mendukung OAuth untuk otentikasi perusahaan.

catatan

Template server MCP hanya tersedia sebagai 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 menerapkan template server MCP dan menghubungkannya ke OpenSearch domain Anda.

  1. Buka konsol OpenSearch Layanan Amazon.

  2. Di panel navigasi kiri, pilih Integrasi.

  3. Temukan template integrasi server MCP.

  4. Pilih Konfigurasi domain. Kemudian, masukkan titik akhir OpenSearch domain Anda.

Template membuat AgentCore Runtime dan komponen berikut, jika parameter opsional yang sesuai tidak ditentukan:

  • Repositori Amazon ECR

  • 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:

  1. Untuk Amazon OpenSearch Service: Petakan peran eksekusi ARN Anda ke peran OpenSearch backend untuk mengontrol akses ke domain Anda.

    Untuk Amazon OpenSearch Serverless: Buat kebijakan akses data yang memungkinkan peran eksekusi Anda mengakses koleksi Anda.

  2. Dapatkan token akses OAuth dari otorizer Anda. Kemudian gunakan token ini untuk mengakses server MCP di URL yang tercantum dalam output CloudFormation stack 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 Anda gunakan di Panduan Pengembang Amazon Bedrock.

Integrasi Pengembang

Anda dapat menambahkan titik akhir server MCP ke konfigurasi agen Anda. Anda juga dapat menggunakannya dengan Kiro CLI, agen kustom, atau agen lainnya MCP-compatible .

Penerapan Perusahaan

Agen yang dihosting pusat dapat terhubung ke beberapa layanan dengan OpenSearch sebagai satu komponen. Agen ini mendukung OAuth dan sistem otentikasi perusahaan, dan skala untuk mendukung banyak 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 di situs web. OpenSearch