Servidor MCP em Python para integrar o Google Drive a assistentes de IA, com autenticação persistente em SQLite e auto-refresh de tokens.

Google Drive MCP Server (Python + SQLite)

Servidor MCP (Model Context Protocol) em Python para integração com o Google Drive API. Possui persistência local de credenciais OAuth 2.0 em banco SQLite e renovação automática de tokens.

Propósito e Isenção de Responsabilidade (Disclaimer)

  • Propósito: Este projeto foi desenvolvido exclusivamente para fins educacionais, de pesquisa, prototipagem e auxílio a Desenvolvedores de Software, Engenheiros de Software e Engenheiros de IA na criação de PoCs (Prova de Conceito) e integrações locais com agentes de IA.
  • Isenção de Responsabilidade: O autor não se responsabiliza pelo mau uso, vazamento de credenciais feito por terceiros, perda de dados ou utilização indevida das APIs. Cada desenvolvedor é inteiramente responsável por suas próprias credenciais OAuth e pelo cumprimento dos Termos de Serviço da Google API.
  • Vínculo: Este projeto é um utilitário open-source independente e não possui qualquer vínculo, afiliação ou endosso oficial por parte do Google LLC ou da Anthropic.

Arquitetura

  • Engine: FastMCP (mcp.server.fastmcp)
  • API Target: Google Drive API (googleapiclient)
  • Storage: SQLite (auth.db) para credenciais OAuth (access token, refresh token, expiry)
  • Transport: Standard IO (stdio)

Requisitos

  • Python 3.10+
  • Credencial de aplicativo no Google Cloud Console (OAuth 2.0 Client ID do tipo Desktop App)

Instalação

python -m venv venv
# Windows:
.\venv\Scripts\Activate.ps1
# Linux/macOS:
source venv/bin/activate

pip install -r requirements.txt

Autenticação

Execute o fluxo de autenticação via CLI:

python auth_flow.py

O script solicita o Client ID e Client Secret, abre o servidor local na porta 8080 para o consentimento OAuth no navegador e persiste as credenciais no arquivo auth.db.

Configuração do Cliente MCP

Adicione o servidor no arquivo de configuração do seu cliente (ex: claude_desktop_config.json):

{
  "mcpServers": {
    "gdrive": {
      "command": "C:/caminho/para/seu/projeto/venv/Scripts/python.exe",
      "args": [
        "C:/caminho/para/seu/projeto/server.py"
      ]
    }
  }
}

Nota: Substitua C:/caminho/para/seu/projeto/ pelo caminho absoluto da pasta do projeto em seu sistema.

Tools Disponíveis

  • check_auth_status: Retorna o status da autenticação e informações da conta conectada.
  • list_files(folder_id="root", page_size=20, query=""): Lista arquivos e subpastas.
  • search_files(query_string="", page_size=20): Executa busca por nome de arquivo.
  • get_file_metadata(file_id): Retorna metadados detalhados de um arquivo em formato JSON.
  • read_text_file(file_id): Obtém o conteúdo de texto de um arquivo ou exporta Google Docs para texto plano.
  • create_file(name, content, folder_id="root", mime_type="text/plain"): Cria um novo arquivo no Drive.
  • logout(): Remove as credenciais salvas no banco SQLite.

Testes

Para validar a execução de todas as ferramentas localmente:

python test_tools.py

MCP Server · Populars

MCP Server · New

    DareDev256

    FCPXML MCP

    🎬 The first AI-powered MCP server for Final Cut Pro XML. Control your edits with natural language.

    Community DareDev256
    acunningham-ship-it

    Veil

    Stealth browser for AI agents — real Chrome over raw CDP, no Playwright/Puppeteer. TypeScript + MCP-native. Passes sannysoft 57/57, bypasses Cloudflare.

    Cassette-Editor

    Oh My Cassette: Chat Your Raw Clips Into a Finished Cut

    你的随身 AI 剪辑搭档 | Pocket AI co-editor for video montage — AI video editing plugin & MCP server for Claude Code, Codex, Hermes & OpenCode

    Community Cassette-Editor
    trendsmcp-ai

    Trends MCP

    MCP server for live trend data. Query Google Search, YouTube, TikTok, Reddit, Amazon, Wikipedia, News sentiment, Web Traffic, App Downloads, Steam, npm and more. Works with Claude, Cursor, VS Code, GitHub Copilot, ChatGPT, Windsurf, Cline, Raycast and any MCP-compatible.

    Community trendsmcp-ai
    jacob-bd

    Gemini Notebook (formerly Google NotebookLM) CLI & MCP Server

    Programmatic access to Gemini Notebook - via command-line interface (CLI), Model Context Protocol (MCP) server, and AI agent skills.

    Community jacob-bd