

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# OpenSearch serveur MCP
<a name="opensearch-mcp-server"></a>

OpenSearch Le [serveur MCP](https://github.com/opensearch-project/opensearch-mcp-server-py) (`opensearch-mcp-server-py`) est une implémentation open source du [protocole Model Context](https://modelcontextprotocol.io) pour OpenSearch. Il se présente OpenSearch APIs sous forme d'outils que les assistants d'IA et les frameworks d'agents peuvent appeler directement. Vous pouvez donc poser des questions telles *que « Quels index existent dans mon cluster ?* » ou *« Montrez-moi les requêtes les plus lentes de la dernière heure »* et l'agent gère les appels d'API en votre nom.

Le serveur fonctionne à la fois avec les domaines OpenSearch de service gérés et avec les collections OpenSearch sans serveur. Vous pouvez le connecter au codage IDEs (Kiro, Claude Code, Cursor), aux assistants d'IA de bureau (Claude Desktop) et aux frameworks d'agents (Strands Agents, LangGraph).

## Conditions préalables
<a name="mcp-server-prerequisites"></a>
+ Python 3.10 ou version ultérieure.
+ [https://docs.astral.sh/uv/getting-started/installation/](https://docs.astral.sh/uv/getting-started/installation/)(recommandé) ou`pip`.
+ Un point de OpenSearch terminaison accessible : un domaine de OpenSearch service, une collection OpenSearch sans serveur ou un cluster autogéré OpenSearch .
+ Informations d'identification avec autorisation d'appeler le OpenSearch APIs nom que vous souhaitez exposer. Pour les politiques IAM relatives aux domaines OpenSearch de service, consultez[Politiques basées sur l’identité](ac.md#ac-types-identity). Pour les politiques d'accès aux données OpenSearch sans serveur, voir[Contrôle d'accès aux données pour Amazon OpenSearch Serverless](serverless-data-access.md).

## Installation
<a name="mcp-server-install"></a>

Exécutez le serveur avec `uvx` (aucune installation requise) ou installez-le localement :

```
# Run directly with uvx (recommended – no install step)
uvx opensearch-mcp-server-py

# Or install with pip
pip install opensearch-mcp-server-py
```

La plupart des utilisateurs configurent leur assistant IDE ou AI pour démarrer le serveur automatiquement. Voir [Configuration dans un IDE de codage](mcp-server-configure-ide.md) et [Utilisation avec des frameworks d'agents](mcp-server-configure-frameworks.md) pour des exemples.

## Authentification
<a name="mcp-server-authentication"></a>

Configurez l'authentification via des variables d'environnement (mode cluster unique) ou par cluster dans un fichier de configuration YAML (mode multi-clusters). Le serveur applique les méthodes d'authentification dans l'ordre de priorité suivant : aucune authentification, basée sur l'en-tête, rôle IAM, authentification de base, clés d'accès. AWS 

**Rôle IAM (SigV4) : recommandé pour les domaines de service OpenSearch **  

```
export OPENSEARCH_URL="{{https://your-domain-endpoint}}"
export AWS_IAM_ARN="arn:aws:iam::{{123456789012}}:role/{{YourOpenSearchRole}}"
export AWS_REGION="{{us-east-1}}"
```
Le rôle doit être autorisé à appeler les appels utilisés OpenSearch APIs par le serveur. Consultez [Exemples de stratégies supplémentaires](ac.md#ac-samples) des exemples de politiques.

**AWS informations d'identification ou profil**  

```
export OPENSEARCH_URL="{{https://your-domain-endpoint}}"
export AWS_REGION="{{us-east-1}}"
export AWS_PROFILE="{{your-aws-profile}}"
```

**OpenSearch Collections sans serveur**  
Réglez de `AWS_OPENSEARCH_SERVERLESS=true` telle sorte que le serveur signe les demandes avec le nom du `aoss` service au lieu de`es`. Assurez-vous que le principal est autorisé à accéder aux données par le biais d'une politique d'accès aux données relative à la collection (voir[Contrôle d'accès aux données pour Amazon OpenSearch Serverless](serverless-data-access.md)).  

```
export OPENSEARCH_URL="{{https://collection-id.us-east-1.aoss.amazonaws.com}}"
export AWS_OPENSEARCH_SERVERLESS="true"
export AWS_REGION="{{us-east-1}}"
export AWS_PROFILE="{{your-aws-profile}}"
```

**Authentification basique**  

```
export OPENSEARCH_URL="{{https://your-domain-endpoint}}"
export OPENSEARCH_USERNAME="{{username}}"
export OPENSEARCH_PASSWORD="{{password}}"
```
N'intégrez pas de mots de passe dans les fichiers de configuration qui peuvent être enregistrés dans le contrôle de source. Utilisez le gestionnaire secret ou l'environnement shell de votre système d'exploitation pour fournir des informations d'identification.

## Considérations sur la sécurité
<a name="mcp-server-security"></a>

Le serveur MCP fonctionne avec les informations d'identification que vous fournissez. Tout ce que ces informations d'identification sont autorisées à faire, l'assistant AI peut potentiellement le déclencher en votre nom. Suivez les pratiques suivantes :
+ **Utilisez des informations d'identification dotées du moindre privilège.** Créez un rôle ou un OpenSearch utilisateur IAM dédié adapté aux index et aux actions dont l'agent a besoin. Évitez de réutiliser les informations d'identification de l'administrateur.
+ **Développement et production séparés.** Dirigez le serveur vers des clusters non liés à la production à des fins d'exploration. Utilisez le mode multimode avec des noms de cluster explicites lorsque l'accès à la production est requis.
+ **Outils de filtrage** Désactivez les catégories d'outils dont votre flux de travail n'a pas besoin. `OPENSEARCH_DISABLED_CATEGORIES=core_tools`Paramétré pour désactiver l'ensemble par défaut ou `OPENSEARCH_ENABLED_CATEGORIES` pour n'activer que des catégories spécifiques.
+ **Protégez les informations d'identification.** Préférez les AWS profils et les rôles IAM aux clés d'accès statiques. Ne publiez jamais de secrets dans les fichiers de configuration dans le contrôle de source.
+ **Passez en revue les résultats de l'outil.** Les réponses de l'outil MCP sont renvoyées au modèle de langage sous forme de contexte. Évitez d'exécuter le serveur sur des index contenant des données sensibles que vous ne voulez pas exposer à votre fournisseur d'IA.

## Résolution des problèmes
<a name="mcp-server-troubleshooting"></a>

**L'assistant ne voit aucun OpenSearch outil**  
Vérifiez que votre fichier de configuration est un JSON valide et redémarrez complètement le client. La plupart des clients ne chargent les serveurs MCP qu'au démarrage.

**Les appels d'outils retournent 403 Forbidden**  
Vos informations d'identification ne sont pas autorisées à accéder à l'API que l'outil appelle. Pour les domaines de OpenSearch service, consultez la politique d'accès au domaine et les politiques IAM associées à votre rôle. Pour OpenSearch Serverless, consultez la politique d'accès aux données de la collection.

**Erreurs de non-concordance des signatures avec Serverless OpenSearch **  
Assurez-vous qu'`AWS_OPENSEARCH_SERVERLESS=true`il est réglé (ou qu'il est `is_serverless: true` en mode multiple). Dans le cas contraire, le serveur signe avec le nom du `es` service au lieu de`aoss`.

**L'outil dont vous avez besoin n'est pas disponible**  
Vérifiez s'il appartient à une catégorie autre que celle par défaut et activez-le avec `OPENSEARCH_ENABLED_CATEGORIES` ou `enabled_categories` dans votre configuration YAML.

Pour obtenir de l'aide supplémentaire, ouvrez un problème dans le [opensearch-mcp-server-py référentiel](https://github.com/opensearch-project/opensearch-mcp-server-py/issues).

## Ressources supplémentaires
<a name="mcp-server-more-information"></a>
+ [opensearch-mcp-server-py](https://github.com/opensearch-project/opensearch-mcp-server-py)activé GitHub  : source, problèmes et notes de publication.
+ [Guide de l'utilisateur](https://github.com/opensearch-project/opensearch-mcp-server-py/blob/main/USER_GUIDE.md) — Référence de configuration complète, y compris les transports en streaming et le déploiement de Kubernetes.
+ [Strands Agents](https://strandsagents.com) AWS— SDK d'agents natifs avec support MCP intégré.
+ [LangGraph](https://github.com/langchain-ai/langgraph)— Cadre d'orchestration de bas niveau pour les agents dynamiques.
+ [OpenSearch Compétences des agents](opensearch-agent-skills.md)— La collection de compétences complémentaires pour les flux de travail axés sur les tâches.