MCP Google Drive
Advanced MCP server for Google Drive integration with full CRUD operations, file management, and sharing capabilities.
✨ Features
- File Management: Create, read, update, delete files and folders
- Search & Discovery: Advanced search with multiple criteria
- Sharing & Permissions: Manage file sharing and access control
- Content Operations: Upload, download, and modify file content
- Drive Operations: List drives, manage shared drives
- Type Safety: Full TypeScript support with Zod validation
- Error Handling: Comprehensive error handling and logging
🚀 Quick Setup
Prerequisites
- Node.js 18+
- Google Service Account with Drive API enabled
- Service Account JSON key file
Installation
npm install mcp-google-drive
Environment Setup
Set your Google Service Account credentials:
export GOOGLE_SERVICE_ACCOUNT_KEY='{"type":"service_account",...}'
🔧 Cursor MCP Integration
Automatic Integration
The MCP server is designed to work seamlessly with Cursor. Add this configuration to your ~/.cursor/mcp.json:
{
"mcpServers": {
"mcp-google-drive": {
"command": "npx",
"args": ["mcp-google-drive@1.3.2"],
"env": {
"GOOGLE_SERVICE_ACCOUNT_KEY": "your-service-account-json",
"MCP_MODE": "stdio",
"LOG_LEVEL": "info",
"DISABLE_CONSOLE_OUTPUT": "false"
},
"cwd": "/path/to/your/project"
}
}
}
Troubleshooting Cursor Integration
If MCP tools are not working in Cursor:
- Restart Cursor after updating
mcp.json - Check MCP Status: Command Palette → "MCP: Show Servers"
- Verify Connection: Command Palette → "MCP: Test Connection"
- Check Logs: Look for MCP server startup messages
Manual Server Start
If automatic integration fails, you can start the server manually:
# In your project directory
npm run start
# Or globally
npx mcp-google-drive
🛠️ Available Tools
File Operations
search_files- Search files with advanced criteriaget_file- Get file metadata and contentcreate_file- Create new files and foldersupdate_file- Update file content and metadatadelete_file- Delete files and folderscopy_file- Copy files to new locationsmove_file- Move files between folders
Drive Management
get_drive_info- Get drive informationlist_shared_drives- List available shared drives
Sharing & Permissions
get_file_permissions- Get file sharing settingsshare_file- Share files with usersget_file_revisions- Get file version history
📚 Documentation
🧪 Development
Build
npm run build
Development Mode
npm run dev
Linting
npm run lint
npm run lint:fix
📄 License
MIT License - see LICENSE for details.
🤝 Contributing
Contributions welcome! Please read our contributing guidelines and submit pull requests.
📞 Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: README and Setup Guide