Cette rubrique explique comment configurer un serveur Dify et l'intégrer à un serveur OpenAPI MCP en utilisant une application OAuth personnalisée pour l'autorisation.
Prérequis
Le serveur Dify nécessite au moins 2 cœurs CPU et 4 Go de RAM.
Version 1.8.0 ou ultérieure de Dify.
Procédure
Étape 1 : Configurer un serveur Dify
Cet exemple montre comment configurer un serveur Dify sur une instance ECS.
Installez Docker sur l'instance ECS.
-
Téléchargez le code Dify :
git clone https://github.com/langgenius/dify.git -
Modifiez le fichier de configuration Dify :
cd dify/docker cp .env.example .env vim .envDans le fichier de configuration .env, recherchez les paramètres suivants et définissez leurs valeurs :
RemarqueCes valeurs doivent correspondre à l'adresse de rappel de votre application OAuth.
Paramètre
Valeur
CONSOLE_API_URL
http://<Adresse IP publique ou nom de domaine de l'instance ECS>. Si vous effectuez un déploiement local, utilisez http://127.0.0.1.
CONSOLE_WEB_URL
http://<Adresse IP publique ou nom de domaine de l'instance ECS>. Si vous effectuez un déploiement local, utilisez http://127.0.0.1.
SERVICE_API_URL
http://<Adresse IP publique ou nom de domaine de l'instance ECS>. Si vous effectuez un déploiement local, utilisez http://127.0.0.1.
APP_API_URL
http://<Adresse IP publique ou nom de domaine de l'instance ECS>. Si vous effectuez un déploiement local, utilisez http://127.0.0.1.
APP_WEB_URL
http://<Adresse IP publique ou nom de domaine de l'instance ECS>. Si vous effectuez un déploiement local, utilisez http://127.0.0.1.
FILES_URL
http://<Adresse IP publique ou nom de domaine de l'instance ECS>. Si vous effectuez un déploiement local, utilisez http://127.0.0.1.
-
Démarrez le serveur Dify :
# Stop Dify # docker compose down # Start Dify docker compose up -dLa sortie suivante indique que le serveur Dify a démarré avec succès. En cas d'erreur, exécutez à nouveau
docker compose up -djusqu'à ce que la sortie ci-dessous s'affiche.[+] Running 13/13 ✔ Network docker_ssrf_proxy_network Created ✔ Network docker_default Created ✔ Container docker-ssrf_proxy-1 Started ✔ Container docker-redis-1 Started ✔ Container docker-db-1 Healthy ✔ Container docker-web-1 Started ✔ Container docker-weaviate-1 Started ✔ Container docker-sandbox-1 Started ✔ Container docker-worker_beat-1 Started ✔ Container docker-api-1 Started ✔ Container docker-plugin_daemon-1 Started ✔ Container docker-worker-1 Started ✔ Container docker-nginx-1 Started
Étape 2 : Créer une application OAuth
Créez une application sur la page Applications OAuth de la console Resource Access Management (RAM). Tenez compte des paramètres suivants :
|
Paramètre |
Description |
|
Version du protocole OAuth |
Doit être 2,1. |
|
Type d'application |
Sélectionnez Web Application ou Native Application. |
|
Validité du jeton d'accès |
Ajustez selon vos besoins métier. |
|
Validité du jeton d'actualisation |
Ajustez selon vos besoins métier. |
|
Adresse de rappel |
L'adresse doit être http://<Adresse IP publique ou nom de domaine de l'instance ECS>/console/api/mcp/oauth/callback. Elle doit correspondre à la valeur définie dans votre fichier de configuration Dify .env. |
|
Portée OAuth |
Doit être /acs/mcp-server. |
Étape 3 : Créer un serveur OpenAPI MCP
Lors de la création d'un serveur MCP dans le service Alibaba Cloud OpenAPI MCP, configurez l'option OAuth sur Custom OAuth et sélectionnez l'application OAuth que vous avez créée. Si vous utilisez un serveur MCP existant, modifiez sa configuration OAuth pour utiliser Custom OAuth et sélectionnez votre application. Une fois l'option Custom OAuth sélectionnée, le serveur OpenAPI MCP utilise votre application OAuth pour l'autorisation, en redirigeant le code d'autorisation vers votre service Dify auto-hébergé.
Étape 4 : Ajouter un serveur OpenAPI MCP à Dify
Dans un navigateur, accédez à la page d'accueil de Dify à l'adresse
http://<Adresse IP publique de l'instance ECS>, suivez les instructions à l'écran pour terminer la configuration, puis connectez-vous à Dify.-
Accédez à et ajoutez un service MCP. Pour l'URL du serveur, saisissez le Streamable HTTP Endpoint fourni par votre serveur Alibaba Cloud OpenAPI MCP.
Après avoir ajouté le service, attendez la fin de l'autorisation automatique. En cas de réussite, la carte du service MCP devient verte et affiche un statut en ligne.
Dans le panneau de détails à droite, le statut du service est Authorized et le panneau répertorie les outils ECS disponibles, tels que Ecs-20140526-DescribeRegions, Ecs-20140526-DescribeAvailableResource, Ecs-20140526-RunInstances, Ecs-20140526-DescribeInstanceStatus et Ecs-20140526-DescribeInstances (7 outils au total).
Étape 5 : Configurer un modèle dans Dify
Dify prend en charge les principaux fournisseurs de modèles tels que Qwen, Deepseek et la série GPT d'OpenAI. Pour plus d'informations, consultez la rubrique Connect to a large language model.
Cliquez sur votre photo de profil dans le coin supérieur droit et sélectionnez Settings.
Dans la section Model provider, installez un modèle. Cet exemple utilise Qwen. Pour plus d'informations sur Qwen, consultez la rubrique Select a model.
-
Après l'installation, configurez les paramètres du modèle, y compris la clé API, le modèle de raisonnement par défaut de Dify et le modèle d'incorporation.
RemarqueLe modèle de raisonnement doit prendre en charge les appels d'outils, tels que
qwen3-max-previewouDeepSeek-R1.Sur la page Model provider, le fournisseur Qwen affiche un statut Unauthorized. Cliquez sur le bouton Settings situé à côté pour terminer la configuration de l'autorisation. Ensuite, cliquez sur le bouton System model settings en haut de la page pour sélectionner le modèle de raisonnement par défaut et le modèle d'incorporation.
Étape 6 : Tester la fonctionnalité MCP
Créez une application agent simple pour tester les capacités du serveur OpenAPI MCP.
-
Créez une application agent. Pour le type d'application, sélectionnez Agent.
Dans le panneau Create application à gauche, cliquez sur Create Blank App.
-
Ajoutez des outils à l'application agent et sélectionnez le serveur OpenAPI MCP que vous avez ajouté à Dify.
Sur la page Orchestrate, dans la section Tools en bas, cliquez sur + Add. Dans la fenêtre contextuelle des outils, sélectionnez la catégorie MCP, recherchez mcp_demo et ajoutez tous ses outils. Après l'ajout, la section Tools affiche 7/7 Enabled.
-
Dans l'interface Debug & Preview, saisissez une requête en langage naturel, par exemple : « combien d'instances ECS se trouvent en Chine (Hangzhou) ? »
L'assistant IA appelle l'API
DescribeInstancesavec les paramètresRegionId: cn-hangzhouetPageSize: 1, extrait le champTotalCountde la réponse et renvoie le résultat : Il y a 1 instance ECS en Chine (Hangzhou).