Serveur MCP Dropbox - MCP Server sécurisé par ALMC Security 2025

Serveur MCP Dropbox

Voir sur GitHub

dbx-mcp-server

Un serveur Model Context Protocol (MCP) qui fournit une intégration avec Dropbox, permettant aux clients compatibles MCP d'interagir avec Dropbox par le biais d'un ensemble d'outils puissants.

Avertissement important : ce projet n'est pas affilié à Dropbox, ni approuvé par elle, ni sponsorisé par elle. Il s'agit d'une intégration indépendante qui fonctionne avec l'API publique de Dropbox.

Table des matières

Démarrage rapide

  1. Cloner le dépôt
  2. Exécuter npm install pour installer les dépendances
  3. Exécuter npm run build pour construire le projet
  4. Enregistrez une application Dropbox dans la Dropbox App Console
    • Choisissez l'API "Scoped access
    • Choisissez le type d'accès dont votre application a besoin
    • Nommez votre application et cliquez sur "Create app" (Créer une application)
    • Sous "Permissions", sélectionnez les permissions requises
      • files.metadata.read
      • files.content.read
      • fichiers.contenu.écriture
      • partage.écriture
      • account_info.read
    • Ajoutez http://localhost:3000/callback comme URI de redirection
    • Notez votre clé d'application et votre secret d'application
  5. Exécutez le script d'installation :
    npm run setup
  6. Configurez votre client MCP pour utiliser le serveur

Installation de l'application

  1. Clonez le dépôt

    git clone https://github.com/your-username/dbx-mcp-server.git cd dbx-mcp-server
  2. Installer les dépendances et construire

    npm install npm run build
  3. Exécuter le script d'installation

    npm run setup
  4. Ajouter aux paramètres MCP

    Ajoutez les éléments suivants à votre fichier de configuration MCP :

    { "mcpServers" : { "dbx" : { "command" : "node", "args" : ["/path/to/dbx-mcp-server/build/index.js"] } } }

Authentification

Le serveur utilise OAuth 2.0 avec PKCE pour une authentification sécurisée avec Dropbox.

Variables d'environnement

Obligatoire :

  • DROPBOX_APP_KEY: La clé de votre application Dropbox
  • DROPBOX_APP_SECRET: le secret de votre application Dropbox
  • DROPBOX_REDIRECT_URI: URI de redirection OAuth
  • TOKEN_ENCRYPTION_KEY: Clé de plus de 32 caractères pour le chiffrement du jeton

Optionnel :

  • TOKEN_REFRESH_THRESHOLD_MINUTES: Minutes avant l'expiration pour rafraîchir le jeton (par défaut : 5)
  • MAX_TOKEN_REFRESH_RETRIES: Nombre maximal de tentatives de rafraîchissement (par défaut : 3)
  • TOKEN_REFRESH_RETRY_DELAY_MS: Délai entre les tentatives de rafraîchissement en ms (par défaut : 1000)

Outils disponibles

Opérations sur les fichiers

  • list_files: Liste les fichiers d'un répertoire
  • upload_file: Télécharger un fichier
  • download_file: Télécharger un fichier
  • safe_delete_item: Supprimer en toute sécurité avec le support de la corbeille
  • create_folder: Créer un nouveau dossier
  • copy_item: Copier un fichier ou un dossier
  • move_item: Déplacer ou renommer un fichier/dossier

Métadonnées et recherche

  • get_file_metadata: Obtenir les métadonnées d'un fichier/dossier
  • search_file_db: Recherche de fichiers et de dossiers
  • get_sharing_link: Créer des liens de partage
  • get_file_content: Obtenir le contenu d'un fichier

Opérations sur les comptes

  • get_account_info: Obtenir des informations sur le compte

Exemples d'utilisation

// Liste des fichiers dans le répertoire racine await mcp.useTool("dbx-mcp-server", "list_files", { path : "" }) ; // Téléchargement d'un fichier await mcp.useTool("dbx-mcp-server", "upload_file", { path : "/test.txt", content : Buffer.from("Hello World").toString("base64"), }) ; // Recherche de fichiers await mcp.useTool("dbx-mcp-server", "search_file_db", { query : "report", path : "/Documents", max_results : 10, })

Test

Exécutez la suite de tests :

npm test

Les tests vérifient toutes les opérations, y compris l'authentification, les opérations sur les fichiers et la gestion des erreurs.

Structure des tests

La suite de tests est organisée en plusieurs modules :

  • Opérations Dropbox: Tests des opérations de base sur les fichiers (upload, download, list, etc.)
  • Opérations sur le compte: Tests pour l'accès aux informations du compte
  • Recherche et suppression: Tests de la fonctionnalité de recherche et de l'effacement sécurisé avec prise en charge de la corbeille
  • Système de ressources: Tests d'intégration du système de ressources MCP

Traitement des données de test

Les tests utilisent des noms de fichiers et de dossiers générés dynamiquement sur la base d'horodatages afin d'éviter les conflits. Les données de test sont automatiquement nettoyées après l'exécution du test.

Exécution de tests spécifiques

Pour exécuter un fichier de test spécifique ou un groupe de tests :

npm test -- tests/dropbox/search-delete.test.ts # Exécuter un fichier de test spécifique npm test -- -t "devrait rechercher des fichiers" # Exécuter les tests correspondant à la description

Dépannage des tests

Si les tests échouent en raison de problèmes de synchronisation ou d'authentification :

  1. Vérifiez que les implémentations de simulacre dans tests/setup.ts correspondent à vos attentes en matière de tests
  2. Assurez-vous que les aides de test sont correctement configurées
  3. Pour les erreurs de portée de Jest, évitez de référencer des variables importées dans les fonctions d'usine fictives

Développement

Construit avec :

  • TypeScript
  • Modèle Contexte Protocole SDK
  • SDK Dropbox v10.34.0
  • API Dropbox v2

Licence

Licence MIT

Copyright (c) 2025 MCP Server Contributors

L'autorisation est accordée par la présente, gratuitement, à toute personne obtenant une copie de ce logiciel et des fichiers de documentation associés (le "Logiciel"), de traiter le Logiciel sans restriction, y compris sans limitation les droits d'utilisation, de copie, de modification, de fusion, de publication, de distribution, de sous-licence, et/ou de vente de copies du Logiciel, et d'autoriser les personnes à qui le Logiciel est fourni à le faire, sous réserve des conditions suivantes :

L'avis de droit d'auteur ci-dessus et cet avis d'autorisation doivent être inclus dans toutes les copies ou parties substantielles du logiciel.

LE LOGICIEL EST FOURNI "TEL QUEL", SANS GARANTIE D'AUCUNE SORTE, EXPRESSE OU IMPLICITE, Y COMPRIS, MAIS SANS S'Y LIMITER, LES GARANTIES DE QUALITÉ MARCHANDE, D'ADÉQUATION À UN USAGE PARTICULIER ET D'ABSENCE DE CONTREFAÇON. EN AUCUN CAS LES AUTEURS OU LES DÉTENTEURS DES DROITS D'AUTEUR NE PEUVENT ÊTRE TENUS RESPONSABLES DE TOUTE RÉCLAMATION, DE TOUT DOMMAGE OU DE TOUTE AUTRE RESPONSABILITÉ, QUE CE SOIT DANS LE CADRE D'UNE ACTION CONTRACTUELLE, DÉLICTUELLE OU AUTRE, DÉCOULANT DE OU EN RAPPORT AVEC LE LOGICIEL OU L'UTILISATION OU D'AUTRES OPÉRATIONS LIÉES AU LOGICIEL.

Liés dans Stockage en nuage - MCP Servers sécurisés

ServeurRésuméActions
Dropbox MCPUn serveur Model Context Protocol (MCP) qui s'intègre à Dropbox, permettant aux clients compatibles...Voir
Serveur WebDAV MCPUn serveur Model Context Protocol (MCP) qui permet des opérations CRUD sur un point de terminaison W...Voir
MinIOCe projet met en œuvre un serveur et un client Model-Context Protocol (MCP) pour le stockage d'objet...Voir
dbx-mcp-serverUn serveur Model Context Protocol (MCP) qui s'intègre à Dropbox, permettant aux clients compatibles...Voir
Serveur de sauvegarde MCPVoir
Serveur OSS MCP中文版 | AnglaisVoir