Utiliser le serveur MCP pour créer des applications avec un agent de codage

S’applique à : Développeur

Le serveur SharePoint Embedded MCP est un serveur open source de protocole de contexte de modèle qui permet aux clients IA compatibles MCP de configurer et de gérer des applications SharePoint Embedded via le langage naturel. Les clients pris en charge incluent GitHub Copilot dans Visual Studio Code ou CLI, Claude Desktop, Cursor et Azure AI Foundry. Il est distribué en tant que @microsoft/spe-mcp package npm et s’exécute localement sur votre ordinateur en tant qu’outil de développement.

Au lieu de cliquer sur les portails et d’assembler manuellement les commandes Microsoft Graph et Azure CLI, vous décrivez ce que vous voulez – « Créer un type de conteneur d’évaluation pour mon application » – et le client IA appelle les outils du serveur pour le faire.

Remarque

Le serveur SharePoint Embedded MCP est un outil de développement open source publié en version préliminaire. Son code source, la référence complète de l’outil et le suivi des problèmes résident dans le référentiel microsoft/SharePoint-Embedded-MCP-Server sur GitHub.

Importante

Pour commencer à créer avec SharePoint Embedded, vous devez disposer d’un accès administratif à un locataire Microsoft 365.

Si vous n’avez pas encore de client, vous pouvez obtenir le vôtre avec le programme Microsoft 365 pour les développeurs, l’expérience numérique client Microsoft ou un essai gratuit d’une licence Microsoft 365 E3.

Outils disponibles

Le serveur expose les outils qu’un client IA peut appeler en votre nom.

Catégorie Ce que font les outils Outils représentatifs
Approvisionnement et status Vérifiez votre identité connectée et l’état de préparation de l’approvisionnement. Créez et gérez des applications propriétaires, des types de conteneurs, des inscriptions de type de conteneur et des conteneurs. status_get, project_app_create, project_provision, container_type_create, container_type_register, container_create
Facturation Sélectionnez un abonnement et un groupe de ressources Azure, connectez un type de conteneur à la facturation standard et inspectez la classification de facturation ou l’expiration de la version d’évaluation. azure_subscriptions_list, azure_resource_groups_list, billing_setup, billing_check
Créer une génération de modèles, exécuter et déployer Générez une application de référence, écrivez sa configuration, amorcez le contenu de l’échantillon, exécutez-le localement et déployez-le sur Azure. project_scaffold, project_hydrate_config, project_seed_sample_data, project_run_local, project_deploy
Opérations de contenu (opt-in) Après consentement explicite, amorcez un exemple de contenu, chargez des fichiers, créez des dossiers, recherchez, affichez un aperçu et gérez le partage. content_access_grant, project_seed_sample_data, content_file_upload, content_search, content_sharing_manage
Autorisations de conteneur et cycle de vie Gérez les autorisations des conteneurs et archivez, restaurez ou supprimez des conteneurs. container_permissions_manage, container_archive_restore, container_delete
Documentation Recherchez et récupérez la documentation officielle de SharePoint Embedded et Microsoft Graph via le serveur Microsoft Learn MCP. docs_search, docs_fetch

Pour obtenir la liste complète et versionnée des outils, indicateurs CLI et variables d’environnement, reportez-vous au fichier Lisez-moi du serveur.

Configuration requise

  • Node.js version 22 ou ultérieure.
  • CLI Azure, connecté avec az login --allow-no-subscriptions L’indicateur --allow-no-subscriptions est requis pour les clients Microsoft 365 uniquement qui n’ont pas d’abonnement Azure.
  • Un accès client et administrateur-client Microsoft 365 (administrateur général ou administrateur d’application).
  • Un client compatible MCP, tel que Visual Studio Code avec GitHub Copilot, Claude Desktop, ou Cursor.

Installer et configurer

Les clients MCP lancent le serveur avec npx, il n’y a donc pas d’installation globale distincte. Ajoutez une entrée de serveur à la configuration MCP de votre client.

Visual Studio Code

Ajouter une entrée de serveur MCP à dans votre espace de .vscode/mcp.json travail :

{
  "servers": {
    "spe": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@microsoft/spe-mcp", "start"]
    }
  }
}

L’indicateur -y permet à Visual Studio Code de lancer le serveur de manière non interactive. Une fois le serveur inscrit, utilisez Copilot Chat en mode assistant pour appeler ses outils.

Bureau de Claude

Ajouter le serveur à %APPDATA%\Claude\claude_desktop_config.json (Windows) ou ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) :

{
  "mcpServers": {
    "spe": {
      "command": "npx",
      "args": ["-y", "@microsoft/spe-mcp", "start"]
    }
  }
}

Cursor et autres clients MCP

Tout client qui prend en charge les serveurs MCP via le transport stdio peut exécuter le serveur avec la même npx -y @microsoft/spe-mcp start commande. Consultez la documentation de votre client pour savoir où inscrire les serveurs MCP.

Configuration

Le serveur accepte la configuration opérationnelle via des indicateurs CLI ou des variables d’environnement équivalentes. Lorsque vous définissez les deux pour la même option, l’indicateur CLI gagne.

indicateur CLI Variable d’environnement Description
--client-id SPE_CLIENT_ID ID de l’application Microsoft Entra ID (client) de l’application propriétaire. Omettez-le pour utiliser le mode bootstrap.
--tenant-id SPE_TENANT_ID ID de locataire Microsoft Entra ID. Le serveur le découvre à partir de l’interface de ligne de commande Azure lorsque vous l’omettez.
--read-only SPE_READ_ONLY Publiez et autorisez uniquement les outils de lecture, de liste, d’obtention et de recherche. Rejetez les appels mutants.
--tools SPE_TOOLS Limitez les outils à un profil (readOnly, docsOnly, provisioning, contentou admin) ou à une liste de noms d’outils séparés par des virgules.
--data-dir SPE_DATA_DIR Chemin d’accès du cache de jetons et de l’état d’approvisionnement. Utilisez un chemin d’accès absolu unique ou ~/ un chemin d’accès pour chaque instance de serveur. Le partage de cet annuaire peut remplacer l’état d’authentification et d’approvisionnement mis en cache. N’utilisez pas de chemin d’accès relatif au répertoire actuel. La valeur par défaut est ~/.spe-mcp.

Définissez des indicateurs dans le args tableau ou des variables dans l’objet de la env configuration MCP de votre client. Exécutez npx -y @microsoft/spe-mcp start --help ou consultez la référence de configuration du serveur pour obtenir la liste complète des options versionnées.

Choisir le mode d’authentification du serveur

Le serveur prend en charge deux modes d’exécution.

  • Mode bootstrap (recommandé pour commencer) : aucune inscription d’application n’est requise. Le serveur utilise votre session Azure CLI pour le plan de contrôle et provisionne l’application Microsoft Entra ID propriétaire à la demande. Connectez-vous une fois et démarrez le serveur sans ID client :

    az login --allow-no-subscriptions
    
  • Mode application préconfigurée : transmettre une application cliente publique existante Microsoft Entra ID qui dispose déjà d’autorisations déléguées consenties par l’administrateur pour FileStorageContainer.Selected, FileStorageContainerType.Manage.Allet FileStorageContainerTypeReg.Manage.All. Fournissez l’ID d’application et l’ID de locataire via les variables d’environnement SPE_CLIENT_ID et SPE_TENANT_ID (ou les --client-id indicateurs et --tenant-id ) :

    {
      "servers": {
        "spe": {
          "type": "stdio",
          "command": "npx",
          "args": ["-y", "@microsoft/spe-mcp", "start"],
          "env": {
            "SPE_CLIENT_ID": "your-client-id",
            "SPE_TENANT_ID": "your-tenant-id"
          }
        }
      }
    }
    

Importante

Configurez les URI de redirection sur l’inscription de l’application applicable :

  • Inscription d’application propriétaire pour le serveur MCP : sous Applications mobiles et de bureau, ajoutez http://localhost pour la connexion interactive.
  • Inscription d’une application propriétaire pour l’application monopage (SPA) React : Sous Application monopage, ajoutez l’URL de l’application locale indiquée par project_run_local et l’URL déployée renvoyée par project_deploy. En mode application préconfigurée, ajoutez ces URI de redirection manuellement si le serveur ne peut pas mettre à jour l’inscription de l’application.
  • Enregistrement d’application web C# séparé : l’échafaudage C# provisionne cet enregistrement avec un URI de redirection web. N’ajoutez pas l’URI de redirection de l’application C# à l’inscription de l’application propriétaire.

Gérer les URI de redirection sous Authentification des inscriptions d’applications dans le centre d’administration> Microsoft Entra.

En mode bootstrap, le premier appel SharePoint Embedded ouvre un navigateur pour un consentement unique et met en cache le jeton, de sorte qu’aucune étape de terminal distincte n’est nécessaire. Pour obtenir la cascade complète de l’authentification, les détails sur le stockage de jetons et les conseils d’automatisation/sans affichage, consultez le fichier Lisez-moi du serveur.

Essayer

Une fois le serveur inscrit dans votre client et une connexion à l’interface de ligne de commande Azure terminée, demandez à votre client IA d’utiliser SharePoint Embedded. Par exemple, dans Copilot Chat :

  • « Répertorier mes types de conteneurs SharePoint Embedded »
  • « Créez un type de conteneur d’évaluation appelé Contoso Docs pour l’ID d’application abc-123. »
  • « Provisionner une nouvelle application SharePoint Embedded et générer un exemple React. »

Le client appelle les outils correspondants, vous invite à donner votre consentement la première fois et communique les résultats.

Contrôler ce que le serveur peut faire

Le serveur inclut des contrôles pour limiter les outils exposés et appelables—utiles lorsque vous souhaitez qu’un client IA explore votre environnement sans apporter de modifications :

  • Mode lecture seule : annoncez et autorisez uniquement les outils de lecture, de liste, d’obtention et de recherche, et rejetez tout appel mutant. Définissez l’indicateur ou la --read-only variable d’environnement SPE_READ_ONLY .
  • Profils d’outils : limitez les outils exposés à un profil (readOnly, docsOnly, contentprovisioning, ou admin) ou à une liste de noms d’outils séparés par des virgules, à l’aide de l’indicateur --tools ou de la variable d’environnementSPE_TOOLS.

Voir Configuration pour les autres options opérationnelles.

Les outils d’opérations de contenu sont également contrôlés derrière un consentement explicite distinct, de sorte qu’un client IA ne peut pas lire ou modifier les fichiers dans vos conteneurs tant que vous n’avez pas choisi. Pour le modèle de sécurité complet, voir contrôles de sécurité dans le référentiel du serveur.