Concepts du serveur MCP

Explorer les concepts et les termes liés au serveur Autonomous AI Database MCP.

Journalisation de l'audit

Le serveur enregistre l'émission de jetons et les appels d'outil. Il consigne l'accès dans les journaux OCI SIEM et Database Audit. Utilisez des stratégies d'audit qui référencent des attributs MCP_SERVER_CONTEXT$ (USERNAME and TOOLNAME) pour capturer qui a appelé quel outil et quand, sans stocker les données de résultat.

Autorisation

L'échange de démarrage où le client et le serveur Autonomous AI Database MCP établissent l'identité et les capacités.

Le serveur Autonomous AI Database MCP utilise l'utilisateur de base de données pour l'authentification et l'autorisation. Envisagez d'adopter une approche à deux schémas pour renforcer la sécurité :

  • Les outils personnalisés doivent résider dans le schéma utilisateur de base de données utilisé pour se connecter au serveur MCP (par exemple, MCP_USER).
  • Les fonctions PL/SQL utilisées pour définir ces outils doivent être définies dans un schéma distinct (par exemple, SALES_USER).
  • Accordez l'accès approprié de SALES_USER au schéma MCP_USER.

Accès aux données contrôlé

L'accès aux données contrôlé peut être obtenu en renvoyant uniquement les lignes requises et en masquant les champs sensibles si nécessaire. Appliquer le moindre privilège avec des stratégies VPD qui lient l'accès à l'utilisateur (à partir de MCP_SERVER_ACCESS_CONTEXT$.USER_IDENTITY).

Protocole de contexte de modèle (MCP)

MCP (Model Context Protocol) est une norme open source permettant de connecter des applications AI à des systèmes externes. Dans Autonomous AI Database, vous pouvez activer un serveur MCP par adresse de base de données. Pour plus d'informations, reportez-vous à la section Model Context Protocol.

Le serveur Autonomous AI Database MCP prend en charge l'authentification OAuth 2.1 et basée sur un jeton.

Client MCP

Agent ou application de discussion (par exemple, Visual Studio Code avec Cline, Claude Desktop et autres) qui se connecte à des adresses MCP de base de données Autonomous AI, répertorie les outils disponibles pour l'utilisateur connecté et les appelle pour obtenir des résultats.

Transport HTTP transmissible

Le protocole HTTP Streamable est un mode de transport qui utilise le protocole HTTP avec des événements envoyés par le serveur (SSE) pour fournir des réponses dans de petits messages continus au lieu d'un résultat volumineux. SSE est un mécanisme Web où le serveur envoie une séquence de petits messages au client via une seule connexion HTTP ouverte.

Le serveur MCP utilise le protocole HTTP en continu pour envoyer les métadonnées, la sortie des outils et les résultats des requêtes dans un flux constant plutôt que de tout mettre en mémoire tampon avant de le renvoyer. Cela prend en charge les opérations longues ou volumineuses sans épuiser la mémoire sur le client ou le serveur. Les clients MCP peuvent commencer à traiter la réponse dès que le serveur émet le premier événement. Le transport correspond à la conception de MCP, qui donne la priorité aux échanges prévisibles, observables et basés sur les événements entre un client MCP et la base de données.

Base de données privée virtuelle (VPD)

La stratégie Virtual Private Database (VPD) est une fonctionnalité qui ajoute une règle de sécurité à chaque requête SQL exécutée par un utilisateur. La règle détermine les lignes que l'utilisateur peut voir. Un filtrage au niveau ligne est appliqué automatiquement par la base de données en fonction de l'identité de l'utilisateur.

Remarque

L'option SESSION_USER utilisée pour l'exécution des outils MCP est différente de l'utilisateur de base de données client. Par conséquent, évitez de prendre des décisions en matière de sécurité basées sur SESSION_USER.

Lorsqu'un outil MCP est exécuté, la base de données définit le nom utilisateur et la portée dans MCP_SERVER_CONTEXT$. Les stratégies VPD référencent ce contexte pour filtrer les lignes pour chaque utilisateur. L'administrateur de base de données enregistre la stratégie VPD avec DBMS_RLS.ADD_POLICY. Lorsqu'un outil MCP exécute une opération SQL en lecture seule, la stratégie VPD garantit que les utilisateurs ne voient que les données qu'ils sont autorisés à visualiser. Cela renforce la confidentialité des données sans modifier le code de l'application.