Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Plantillas de integración de servidores MCP
Con las plantillas de servidor del Model Context Protocol (MCP), puede implementar un servidor MCP OpenSearch alojado en Amazon Bedrock AgentCore, lo que reduce la complejidad de la integración entre los agentes y las herramientas de IA. OpenSearch Para obtener más información, consulte ¿Qué es Amazon Bedrock? AgentCore .
Características de la plantilla
Esta plantilla incluye las siguientes funciones clave para implementar y administrar su servidor MCP.
- Implementación de un servidor MCP gestionado
-
Se implementa opensearch-mcp-server-pymediante Amazon Bedrock AgentCore Runtime y proporciona un punto de enlace de agente que envía las solicitudes por proxy al servidor MCP subyacente. Para obtener más información, consulte en. opensearch-mcp-server-pyGitHub
- Autenticación y seguridad
-
Gestiona tanto la autenticación entrante (de los usuarios al servidor MCP) como la autenticación saliente (del servidor MCP al OpenSearch), y admite OAuth la autenticación empresarial.
nota
La plantilla de servidor MCP solo está disponible en los siguientes casos: Regiones de AWS
-
Este de EE. UU. (Norte de Virginia)
-
Oeste de EE. UU. (Oregón)
-
Europa (Fráncfort)
-
Asia-Pacífico (Sídney)
Para utilizar la plantilla de servidor MCP
Siga estos pasos para implementar la plantilla de servidor MCP y conectarla a su OpenSearch dominio.
-
Abre la consola OpenSearch de Amazon Service
. -
En el panel de navegación izquierdo, selecciona Integraciones.
-
Localice la plantilla de integración del servidor MCP.
-
Elija Configurar dominio. A continuación, introduzca el punto final OpenSearch de su dominio.
La plantilla crea un AgentCore Runtime y los siguientes componentes, si no se especifican los parámetros opcionales correspondientes:
-
Un repositorio de Amazon ECR.
-
Un grupo de usuarios de Amazon Cognito como autorizador OAuth
-
Una función de ejecución utilizada por Runtime AgentCore
Tras completar este procedimiento, debe seguir estos pasos posteriores a la creación:
-
Para Amazon OpenSearch Service: asigne el ARN de su rol de ejecución a un rol de OpenSearch backend para controlar el acceso a su dominio.
Para Amazon OpenSearch Serverless: cree una política de acceso a los datos que permita a su rol de ejecución acceder a su colección.
-
Obtenga un token de OAuth acceso de su autorizador. A continuación, utilice este token para acceder al servidor MCP en la URL que aparece en la salida de la CloudFormation pila.
Para obtener más información, consulte Acciones políticas para Serverless OpenSearch .
Integración con agentes de IA
Tras la implementación, puede integrar el servidor MCP con cualquier agente compatible con MCP. Para obtener más información, consulte Invoque su servidor MCP implementado en la Guía para desarrolladores de Amazon Bedrock.
- Integración de desarrolladores
-
Puede añadir el punto final del servidor MCP a la configuración de su agente. También puede usarlo con la CLI para desarrolladores de Amazon Q, agentes personalizados u otros agentes compatibles con MCP.
- Implementación empresarial
-
Los agentes alojados de forma centralizada pueden conectarse a varios servicios con OpenSearch un solo componente. Este agente es compatible con los sistemas de autenticación empresariales OAuth y se escala para admitir varios usuarios y casos de uso.
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")
Para obtener más información, consulte Alojamiento de un servidor OpenSearch MCP con Amazon Bedrock AgentCore