Tous les produits
Search
Centre de documentation

Data Management:Migrer de DMS MCP vers Agent Data Gateway MCP

Dernière mise à jour :Oct 10, 2026

L'ancien DMS MCP (alibabacloud-dms-mcp-server) a évolué vers Agent Data Gateway MCP et est désormais disponible sur le Marketplace MCP d'Alibaba Cloud Model Studio. Cette nouvelle version modifie l'intégration des sources de données, les noms des outils, les identifiants de ressources et les paramètres d'appel. Cette rubrique décrit la procédure de migration de l'ancien DMS MCP vers Agent Data Gateway MCP.

and published in the Alibaba Cloud Model Studio MCP Marketplace

Informations générales

L'ancien DMS MCP a évolué vers Agent Data Gateway MCP. Le nouveau MCP intègre la découverte des actifs de données, les requêtes d'autorisations, la récupération de connaissances et l'exécution SQL dans des outils MCP standardisés. Toutes les opérations respectent les contraintes existantes en matière d'identité, d'autorisations, de politique de sécurité et d'audit d'Agent Data Gateway.

Par rapport à la version précédente, le nouveau MCP introduit les modifications suivantes. Examinez ces changements avant d'effectuer la mise à niveau :

  • Enregistrement des sources de données : Synchronisez les sources de données DMS avec Agent Data Gateway avant d'y accéder via le nouveau MCP.

  • Noms des outils : Les anciens outils tels que executeScript et getDatabase sont remplacés par exec_sql et meta_database_search.

  • Identifiants de ressources : Les anciens identifiants db_id, database_id et table_guid sont remplacés par catalogUuid, databaseUuid et qualifiedName.

  • Authentification : Le jeton d'accès de l'ancien MCP se limitait aux autorisations utilisateur. Le jeton du nouveau MCP est conçu pour les agents et prend en charge un contrôle des autorisations plus granulaire et flexible.

Procédure

Synchroniser les sources de données DMS

Avant d'utiliser le nouveau MCP, synchronisez les sources de données DMS concernées avec Agent Data Gateway. DMS prévoit de synchroniser automatiquement les sources de données existantes pertinentes avec Agent Data Gateway avant le 30 novembre 2026. Pour utiliser le nouveau MCP avant cette date, synchronisez manuellement les sources de données DMS en suivant les étapes ci-dessous :

  1. Connectez-vous à la console Agent Data Gateway.

  2. Dans le volet de navigation de gauche, sélectionnez Data Sources > Connection Management.

  3. Sur la page Connection Management, cliquez sur DMS Instance Sync.

    Remarque

    Vous pouvez également accéder à la page Overview de la console Agent Data Gateway, cliquer sur Get Started, puis sélectionner DMS data source sync dans la section Select Datasource.

  4. Sélectionnez les sources de données à utiliser parmi les instances hébergées dans DMS, puis finalisez la synchronisation. Seules les instances DMS hébergées de manière sécurisée peuvent être synchronisées.

Remarque

La synchronisation d'une source de données indique uniquement que la ressource est connectée à la passerelle. Cela ne signifie pas que l'agent actuel dispose des autorisations d'exécution SQL. Si une source de données est visible mais que l'exécution renvoie ACCESS_DENIED, vérifiez l'identité de l'agent et les autorisations de l'instance dans la console.

Créer une identité d'agent

Avant de vous connecter au MCP et de l'utiliser, créez une identité d'agent en suivant les étapes ci-dessous :

  1. Connectez-vous à la console Agent Data Gateway.

  2. Dans le volet de navigation de gauche, sélectionnez Identities & Permissions > My Agent Identity, puis cliquez sur Create Agent Identity.

  3. Dans la boîte de dialogue qui s'affiche, configurez les paramètres d'identité de l'agent suivants, puis cliquez sur Submit :

    Paramètre

    Description

    Name

    Saisissez un nom pour l'identité de l'agent.

    AccessToken Expiration Time

    Définissez la durée de validité du jeton d'accès de l'agent. Une valeur vide indique que le jeton n'expire jamais.

    Permission Mode

    Sélectionnez le mode d'autorisation de l'identité de l'agent :

    • Permissions Follow User : L'agent hérite des autorisations de l'utilisateur actuel en temps réel.

    • Permission Narrowing Mode : Sélectionnez les autorisations de l'agent selon vos besoins, dans la limite des autorisations de l'utilisateur.

    • Independent permissions : L'agent n'hérite pas des autorisations de l'utilisateur actuel. Après la création de l'identité, l'agent obtient les autorisations d'accès aux données via des demandes d'autorisation.

  4. Dans la boîte de dialogue, copiez et conservez en toute sécurité le jeton d'accès généré, puis cliquez sur Close. Le jeton d'accès n'est affiché qu'une seule fois lors de sa création et ne peut plus être consulté après la fermeture de la boîte de dialogue.

Se connecter à Agent Data Gateway MCP

Une fois les sources de données synchronisées, connectez-vous au nouveau MCP en utilisant l'une des méthodes suivantes.

Connexion directe à un endpoint MCP

  1. Sélectionnez l'endpoint correspondant à la région de votre jeton d'accès dans le tableau suivant :

    Région

    Endpoint MCP

    Chine (Hangzhou)

    https://dgate-mcp-cn-hangzhou.aliyuncs.com/mcp/dgate

    Chine (Shanghai)

    https://dgate-mcp-cn-shanghai.aliyuncs.com/mcp/dgate

    Chine (Pékin)

    https://dgate-mcp-cn-beijing.aliyuncs.com/mcp/dgate

    Chine (Shenzhen)

    https://dgate-mcp-cn-shenzhen.aliyuncs.com/mcp/dgate

    Chine (Zhangjiakou)

    https://dgate-mcp-cn-zhangjiakou.aliyuncs.com/mcp/dgate

    Chine (Hong Kong)

    https://dgate-mcp-cn-hongkong.aliyuncs.com/mcp/dgate

    Singapour

    https://dgate-mcp-ap-southeast-1.aliyuncs.com/mcp/dgate

    Malaisie (Kuala Lumpur)

    https://dgate-mcp-ap-southeast-3.aliyuncs.com/mcp/dgate

    Japon (Tokyo)

    https://dgate-mcp-ap-northeast-1.aliyuncs.com/mcp/dgate

  2. Ajoutez le contenu suivant à la configuration de votre client MCP. Remplacez la valeur de url par l'endpoint déterminé à l'étape précédente, et remplacez la valeur de Authorization par Bearer <ACCESS_TOKEN>, où <ACCESS_TOKEN> correspond au jeton d'accès que vous avez enregistré lors de la création d'une identité d'agent.

    {
      "mcpServers": {
        "dgate": {
          "url": "https://dgate-mcp-cn-hangzhou.aliyuncs.com/mcp/dgate",
          "headers": {
            "Authorization": "Bearer <ACCESS_TOKEN>"
          }
        }
      }
    }

    L'emplacement du fichier de configuration et le point d'entrée de l'interface peuvent varier selon les clients. Toutefois, tant que les paramètres url et Authorization sont correctement configurés, vous pouvez vous connecter au service.

  3. Après avoir enregistré la configuration, rechargez le service MCP. Certains clients nécessitent un redémarrage ou la création d'une nouvelle session pour actualiser la liste des outils.

Remplacer les outils MCP

Une fois connecté au nouveau MCP, remplacez les anciens outils MCP dans vos applications par les nouveaux. Le tableau suivant répertorie la correspondance et les descriptions entre les principaux outils de l'ancien DMS MCP et ceux du nouveau MCP.

Ancien outil DMS MCP

Nouvel Agent Data Gateway MCP

Description

executeScript

exec_sql

Remplacez l'ancien paramètre db_id par databaseUuid, et remplacez script par statement. La nouvelle version n'exécute qu'une seule instruction SQL par appel. Divisez plusieurs instructions SQL en plusieurs appels séquentiels. Chaque appel est authentifié, contrôlé et audité indépendamment, et l'atomicité des transactions entre les appels n'est pas garantie.

Pour les considérations liées à la mise à niveau de cet outil, consultez la section Considérations pour le remplacement de executeScript.

getDatabase

meta_database_search / meta_database_list → meta_database_get

La nouvelle version n'interroge plus directement via host + port + schema_name. Recherchez ou listez d'abord les bases de données pour obtenir le databaseUuid, puis interrogez les détails de la base de données.

getInstance

meta_catalog_search → meta_catalog_get

La nouvelle version désigne l'ancienne instance comme un catalogue. Recherchez et identifiez d'abord de manière unique l'instance cible pour obtenir le catalogUuid, puis interrogez les détails. N'utilisez plus les anciens paramètres host + port.

getTableDetailInfo

meta_table_columns + meta_table_indexes

Obtenez d'abord le qualifiedName de la table en utilisant meta_table_list, puis interrogez séparément les colonnes et les index. Ces deux requêtes remplacent conjointement les anciens détails de la table. L'ancien paramètre table_guid n'est plus utilisé.

listTables

meta_table_list

Remplacez l'ancien paramètre database_id par databaseUuid. La nouvelle version utilise une pagination basée sur un curseur MaxResults + NextToken au lieu de page_number + page_size.

Pour les considérations et exemples liés à la mise à niveau de cet outil, consultez la section Exemple de remplacement de meta_table_list.

searchDatabase

meta_database_search

Utilisez searchKey pour rechercher des bases de données. Enregistrez le databaseUuid issu des résultats pour les requêtes ultérieures de détails de base de données, de tables et d'exécution SQL.

La chaîne de découverte des ressources dans la nouvelle version est unifiée comme suit :

catalogUuid
  → databaseUuid
    → table qualifiedName
      → columns, indexes, or SQL execution
Remarque

Les anciens identifiants db_id, database_id et table_guid ne peuvent pas être utilisés directement avec le nouveau MCP. Utilisez les nouveaux outils de métadonnées pour obtenir à nouveau catalogUuid, databaseUuid et qualifiedName.

Mise à niveau de l'agent

Ajoutez le contenu suivant à l'invite système ou à l'invite de mise à niveau de votre agent pour l'aider à migrer en douceur vers le nouveau MCP :

You are using Agent Data Gateway MCP. Follow these call rules:

1. Do not call legacy DMS MCP tools such as executeScript, getDatabase,
   getInstance, getTableDetailInfo, listTables, or searchDatabase.

2. The legacy instance is called a catalog in the new version:
   Use meta_catalog_search to locate the instance and obtain the catalogUuid;
   call meta_catalog_get when you need the details.

3. When you query databases:
   - If the catalogUuid is known, call meta_database_list;
   - If only the database name is known, call meta_database_search;
   - After you obtain the databaseUuid, call meta_database_get for the details.

4. When you query tables, use meta_table_list and save the returned qualifiedName.
   To query full table details, call meta_table_columns and
   meta_table_indexes separately.

5. When you execute SQL, use exec_sql:
   - Pass databaseUuid first;
   - Submit only one SQL statement per call;
   - Split multiple SQL statements into multiple sequential calls;
   - If any statement fails, stop the subsequent calls and report the failure;
   - Do not claim that multiple calls have transaction atomicity or are automatically rolled back.

6. When exec_sql returns NEEDS_CONFIRMATION, the user must review it first,
   and then retry with the confirm reason; do not skip confirmation by default.

7. List tools use NextToken cursor-based pagination. When hasMore=true,
   pass the returned NextToken as-is to get the next page instead of using legacy page-number pagination.

8. A visible data source does not mean that execution permission is granted. When ACCESS_DENIED occurs,
   remind the user to check the agent identity and instance authorization, and do not retry the SQL repeatedly.

Annexe

Considérations pour le remplacement de executeScript

Dans les scénarios de bases de données physiques, l'ancien outil executeScript pouvait recevoir plusieurs instructions SQL et les exécuter séquentiellement, mais il ne garantissait pas l'atomicité des transactions pour l'ensemble du script. Dans les scénarios de bases de données logiques, une seule instruction SQL était autorisée. Le nouvel outil exec_sql ne prend actuellement en charge qu'une seule instruction SQL et ne permet pas l'exécution par lot de plusieurs instructions. Respectez les règles suivantes lors de la mise à niveau :

  • Divisez plusieurs instructions SQL en plusieurs appels exec_sql.

  • Exécutez les instructions une par une, dans l'ordre du script d'origine.

  • Si une instruction échoue, arrêtez les appels suivants et signalez l'échec.

  • Ne prétendez pas que plusieurs appels sont automatiquement annulés (rollback) ou possèdent une atomicité transactionnelle.

  • Lorsque NEEDS_CONFIRMATION est renvoyé, effectuez une révision manuelle, puis réessayez avec la raison confirm.

  • L'ancien paramètre logic ne correspond à aucun nouveau paramètre. La ressource cible est exprimée par le nouveau paramètre databaseUuid. Les bases de données logiques qui ne sont pas encore connectées à la passerelle ne peuvent pas être mises à niveau directement.

Exemple d'appel avec une seule instruction SQL :

{
  "name": "exec_sql",
  "arguments": {
    "databaseUuid": "<database-uuid>",
    "statement": "SELECT id, status FROM orders LIMIT 20",
    "maxRows": 100,
    "waitSeconds": 110
  }
}

Exemple de remplacement de meta_table_list

L'ancien outil getTableDetailInfo est remplacé par deux requêtes : meta_table_columns et meta_table_indexes. Obtenez d'abord le qualifiedName de la table en utilisant meta_table_list, puis interrogez séparément les colonnes et les index :

{"name":"meta_table_columns","arguments":{"databaseUuid":"<database-uuid>","tableQualifiedName":"trade.orders"}}
{"name":"meta_table_indexes","arguments":{"databaseUuid":"<database-uuid>","tableQualifiedName":"trade.orders"}}

Les deux résultats constituent ensemble le résultat métier de l'ancien outil getTableDetailInfo.