Serveur Google Drive
Ce serveur MCP s'intègre à Google Drive pour permettre de lister, lire et rechercher des fichiers, ainsi que de lire et écrire dans Google Sheets.
Ce projet inclut du code développé à l'origine par Anthropic, PBC, sous licence MIT à partir de ce repo.
Composants
Outils
gdrive_search
- Description: Recherche de fichiers dans Google Drive.
- Entrée
query
(string) : Requête de recherche.pageToken
(chaîne, facultatif) : Token pour la page suivante de résultats.pageSize
(nombre, facultatif) : Nombre de résultats par page (max 100).
- Résultats: Renvoie les noms de fichiers et les types MIME des fichiers correspondants.
gdrive_read_file
- Description: Lire le contenu d'un fichier à partir de Google Drive.
- Entrée
fileId
(chaîne) : ID du fichier à lire.
- Sortie: Renvoie le contenu du fichier spécifié.
gsheets_read
- Description: Lit les données d'une feuille de calcul Google avec des options flexibles pour les plages et le formatage.
- Entrée
spreadsheetId
(chaîne) : L'identifiant de la feuille de calcul à lire.ranges
(tableau de chaînes, facultatif) : Tableau facultatif d'intervalles de notation A1 (par exemple,['Sheet1!A1:B10']
). S'il n'est pas fourni, la feuille entière est lue.sheetId
(nombre, optionnel) : ID spécifique de la feuille à lire. S'il n'est pas fourni avec des plages, la première feuille est lue.
- Output (Sortie) : Renvoie les données spécifiées de la feuille de calcul.
gsheets_update_cell
- Description: Met à jour la valeur d'une cellule dans une feuille de calcul Google.
- Entrée
fileId
(chaîne) : ID de la feuille de calcul.range
(chaîne) : Plage de cellules en notation A1 (par exemple,"Sheet1!A1"
).value
(chaîne) : Nouvelle valeur de la cellule.
- Résultat: Confirme la mise à jour de la valeur dans la cellule spécifiée.
Ressources
Le serveur permet d'accéder aux fichiers de Google Drive :
- Fichiers
(gdrive:///<file_id>)
- Prend en charge tous les types de fichiers
- Les fichiers de l'espace de travail Google sont automatiquement exportés
- Docs → Markdown
- Feuilles → CSV
- Présentations → Texte brut
- Dessins → PNG
- Les autres fichiers sont fournis dans leur format d'origine
Pour commencer
- Créer un nouveau projet Google Cloud
- Activer l'API Google Drive
- Configurer un écran de consentement OAuth ("interne" est suffisant pour les tests)
- Ajoutez les champs d'application OAuth
https://www.googleapis.com/auth/drive.readonly,
https://www.googleapis.com/auth/spreadsheets
- Pour permettre l'interaction avec les feuilles et les documents, vous devez également activer l'API Google Sheets et l'API Google Docs dans la section API et services activés de votre espace de travail.
- Créez un identifiant client OAuth pour le type d'application "Desktop App"
- Téléchargez le fichier JSON des clés OAuth de votre client
- Renommez le fichier de clés en
gcp-oauth.keys.json
et placez-le dans le chemin que vous avez spécifié avecGDRIVE_CREDS_DIR
(c.-à-d./Users/nom d'utilisateur/.config/mcp-gdrive
) - Notez votre ID de client OAuth et votre secret de client. Ils doivent être fournis en tant que variables d'environnement avec votre répertoire de configuration.
- Vous devrez également créer un fichier .env dans le projet avec les champs suivants. Vous trouverez l'identifiant et le secret du client dans la section "Credentials" de la Google Cloud Console.
GDRIVE_CREDS_DIR=/path/to/config/directory CLIENT_ID=<CLIENT_ID> CLIENT_SECRET=<CLIENT_SECRET>
Assurez-vous de construire le serveur avec npm run build
ou npm run watch
.
Authentification
Ensuite, vous devez exécuter node ./dist/index.js
pour déclencher l'étape d'authentification
Vous serez invité à vous authentifier avec votre navigateur. Vous devez vous authentifier avec un compte appartenant à la même organisation que votre projet Google Cloud.
Votre jeton OAuth est enregistré dans le répertoire spécifié par la variable d'environnement GDRIVE_CREDS_DIR
.
Utilisation avec l'application de bureau
Pour intégrer ce serveur à l'application de bureau, ajoutez les éléments suivants à la configuration du serveur de votre application :
{ "mcpServers" : { "gdrive" : { "command" : "npx", "args" : ["-y", "@isaacphi/mcp-gdrive"], "env" : { "CLIENT_ID" : "<CLIENT_ID>", "CLIENT_SECRET" : "<CLIENT_SECRET>", "GDRIVE_CREDS_DIR" : "/path/to/config/directory" } } } }
Licence
Ce serveur MCP est sous licence MIT. Cela signifie que vous êtes libre d'utiliser, de modifier et de distribuer le logiciel, sous réserve des termes et conditions de la licence MIT. Pour plus de détails, veuillez consulter le fichier LICENSE dans le référentiel du projet.