File Systems TypeScript ★ 283

isaacphi/mcp-gdrive

Google Drive'dan okuma ve Google Sheets düzenleme işlemleri için Model Context Protocol (MCP) Server.

Claude Desktop config.json'a ekle

{
  "mcpServers": {
    "isaacphi-mcp-gdrive": {
      "command": "node",
      "args": [
        "~/.mcp/mcp-gdrive/index.js"
      ]
    }
  }
}

Google Drive sunucusu

Bu MCP sunucusu, dosyaları listeleme, okuma ve arama yapabilmenin yanı sıra Google Sheets'e okuma ve yazma özelliğini sağlamak için Google Drive ile entegre olur.

Bu proje, Anthropic, PBC tarafından geliştirilen ve bu depodan MIT Lisansı altında lisanslanan kodu içerir.

Bileşenler

Tools

  • gdrive_search

    • Açıklama: Google Drive'da dosyaları arayın.
    • Input:
      • query (string): Arama sorgusu.
      • pageToken (string, isteğe bağlı): Sonraki sayfa için token.
      • pageSize (number, isteğe bağlı): Sayfa başına sonuç sayısı (maksimum 100).
    • Output: Eşleşen dosyaların adlarını ve MIME türlerini döndürür.
  • gdrive_read_file

    • Açıklama: Google Drive'dan bir dosyanın içeriğini okuyun.
    • Input:
      • fileId (string): Okunacak dosyanın ID'si.
    • Output: Belirtilen dosyanın içeriğini döndürür.
  • gsheets_read

    • Açıklama: Aralıklar ve biçimlendirme için esnek seçeneklerle Google Spreadsheet'ten veri okuyun.
    • Input:
      • spreadsheetId (string): Okunacak spreadsheet'in ID'si.
      • ranges (string dizisi, isteğe bağlı): A1 gösterim aralıkları isteğe bağlı dizisi (örneğin, ['Sheet1!A1:B10']). Sağlanmazsa, tüm sayfayı okur.
      • sheetId (number, isteğe bağlı): Okunacak belirli sheet ID'si. Aralıklar ile sağlanmazsa, ilk sayfayı okur.
    • Output: Spreadsheet'ten belirtilen verileri döndürür.
  • gsheets_update_cell

    • Açıklama: Google Spreadsheet'teki bir hücre değerini güncelleyin.
    • Input:
      • fileId (string): Spreadsheet'in ID'si.
      • range (string): A1 gösteriminde hücre aralığı (örneğin, 'Sheet1!A1').
      • value (string): Yeni hücre değeri.
    • Output: Belirtilen hücredeki güncellenmiş değeri doğrular.

Resources

Sunucu, Google Drive dosyalarına erişim sağlar:

  • Files (gdrive:///<file_id>)
    • Tüm dosya türlerini destekler
    • Google Workspace dosyaları otomatik olarak dışa aktarılır:
      • Docs → Markdown
      • Sheets → CSV
      • Presentations → Düz metin
      • Drawings → PNG
    • Diğer dosyalar native biçimde sağlanır

Başlangıç

  1. Yeni bir Google Cloud projesi oluşturun
  2. Google Drive API'yi etkinleştirin
  3. Bir OAuth onay ekranı yapılandırın (test için "internal" iyidir)
  4. OAuth kapsamlarını ekleyin: https://www.googleapis.com/auth/drive.readonly, https://www.googleapis.com/auth/spreadsheets
  5. Sheet'ler ve belgelerle etkileşim kurabilmek için Google Sheets API ve Google Docs API'yi çalışma alanınızın Etkinleştirilen API ve Hizmetler bölümünde etkinleştirmeniz gerekir.
  6. Bir OAuth Client ID oluşturun uygulama türü "Desktop App" için
  7. İstemcinizin OAuth anahtarlarının JSON dosyasını indirin
  8. Anahtar dosyasını gcp-oauth.keys.json olarak yeniden adlandırın ve GDRIVE_CREDS_DIR ile belirttiğiniz yola yerleştirin (örneğin, /Users/username/.config/mcp-gdrive)
  9. OAuth Client ID ve Client Secret'ınızı not edin. Bunlar yapılandırma dizininizle birlikte environment variables olarak sağlanmalıdır.
  10. Projede aşağıdaki alanlarla bir .env dosyası ayarlamanız gerekecektir. Client ID ve Client Secret'ı Google Cloud Console'un Credentials bölümünde bulabilirsiniz.
GDRIVE_CREDS_DIR=/path/to/config/directory
CLIENT_ID=<CLIENT_ID>
CLIENT_SECRET=<CLIENT_SECRET>

Sunucuyu npm run build veya npm run watch ile oluşturduğunuzdan emin olun.

Kimlik Doğrulama

Daha sonra kimlik doğrulama adımını tetiklemek için node ./dist/index.js komutunu çalıştırmanız gerekecektir

Tarayıcınız ile kimlik doğrulaması yapmaya davet edileceksiniz. Google Cloud projenizle aynı kuruluşta yer alan bir hesapla kimlik doğrulaması yapmalısınız.

OAuth token'ınız GDRIVE_CREDS_DIR environment variable tarafından belirtilen dizine kaydedilir.

Authentication Prompt

Desktop App ile Kullanım

Bu sunucuyu desktop uygulamayla entegre etmek için, uygulamanızın sunucu yapılandırmasına aşağıdakini ekleyin:

{
  "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"
      }
    }
  }
}

Lisans

Bu MCP sunucusu MIT Lisansı altında lisanslanmıştır. Bu, MIT Lisansı'nın şartları ve koşullarına tabi olarak, yazılımı serbestçe kullanmanız, değiştirmeniz ve dağıtmanız anlamına gelir. Daha fazla ayrıntı için lütfen proje deposundaki LICENSE dosyasını görmek için bakınız.

Benzer MCP sunucuları

Daha fazla: File Systems →