Skip to main content
Glama
readme.mdβ€’5.37 kB
# MindMup2 Google Drive MCP Server A Model Context Protocol (MCP) server that provides seamless integration between MindMup mind maps and Google Drive. This server enables you to search, retrieve, and parse MindMup files stored in your Google Drive directly through the MCP interface. - _Medium Article:_ https://medium.com/@shyinlim/using-google-drive-mindmup-mcp-to-review-test-cases-automatically-ee03f2e9272d ## πŸ’« Result ![ezgif-5b4a0eb3a275f8.gif](readme/ezgif-5b4a0eb3a275f8.gif) ## ✨ Feature - **Search MindMup Files**: Find MindMup files across your entire Google Drive (read-only) - **Google Drive Integration**: List and filter files in Google Drive with various criteria - **MindMup Parsing**: Parse and extract content from MindMup mind map files - **FastMCP Server**: Built on FastMCP framework for high performance - **Docker Support**: Containerized deployment with Docker Compose ## πŸ”§ Available MCP Tools | Tool | Description | |------|-------------| | `gdrive_tool_list_file` | List files from Google Drive with optional filtering by file type or name | | `get_single_mindmup_tool` | Get a single MindMup file by ID or name | | `analyze_mindmup_summary_tool` | Get summary overview of a MindMup file (sections, node count, structure) | | `get_mindmup_chunk_tool` | Get specific chunk of a large MindMup file with optional keyword search | ## 🧠 Business Value - **Unified Knowledge Management**: Centralize mind map access across Google Drive through a single MCP interface - **Enhanced Productivity**: Quick search and retrieval of mind maps without switching between applications - **Developer Integration**: Seamlessly integrate mind mapping capabilities into existing workflows and tools - **Scalable Architecture**: Handle large collections of mind maps with efficient filtering and parsing - **Cross-Platform Compatibility**: Access mind maps from any MCP-compatible client or application ## πŸ—οΈ Project Structure ``` β”œβ”€β”€ deployment/ β”‚ β”œβ”€β”€ docker-compose-dev.yml β”‚ β”œβ”€β”€ docker-compose-prod.yml β”‚ └── Dockerfile β”œβ”€β”€ src/ β”‚ β”œβ”€β”€ core/ β”‚ β”‚ β”œβ”€β”€ gdrive_client.py # Google Drive API client β”‚ β”‚ β”œβ”€β”€ gdrive_feature.py # Google Drive feature implementation β”‚ β”‚ β”œβ”€β”€ mcp_server.py # Main MCP server implementation β”‚ β”‚ └── mindmup_parser.py # MindMup file parsing β”‚ β”œβ”€β”€ model/ β”‚ β”‚ β”œβ”€β”€ common_model.py # Common data models β”‚ β”‚ β”œβ”€β”€ gdrive_model.py # Google Drive data models β”‚ β”‚ └── mindmup_model.py # Mind map data models β”‚ └── utility/ β”‚ β”œβ”€β”€ enum.py # Enumerations and constants β”‚ └── logger.py # Logging utilities β”œβ”€β”€ run.py # Main entry point β”œβ”€β”€ requirements.txt # Python dependencies └── makefile # Build and deployment commands ``` ## πŸš€ Getting Started ### Prerequisites - Python 3.12+ - Google Cloud Platform account ### Google Drive API Setup | Step | Description | Image | |------|-------------|-------| | 1 | Go to [Google Cloud Console](https://console.cloud.google.com/) and create a new project or select an existing one | | | 2 | Enable [Google Drive API](https://console.cloud.google.com/apis/library/drive.googleapis.com) in your project | | | 3 | Create Service Account credentials:<br>- Go to "IAM & Admin" β†’ "Service Accounts"<br>- Click "Create Service Account"<br>- Download the JSON key file | ![google_service_acc.jpg](readme/google_service_acc.jpg)| | 4 | Encode the entire JSON key file to base64:<br>- See [Generate Base64 Credential](#generate-base64-credential) section | | | 5 | Share your Google Drive folder with the Service Account:<br>- Right-click folder β†’ Share<br>- Paste the service account email<br>- Grant **Viewer** access<br>- Do **NOT** send invitation | ![google_drive_share_list.jpg](readme/google_drive_share_list.jpg) | ### Run the Server For development: ```bash make run-dev-docker ``` For production: ```bash make run-prod ``` ### MCP Client Configuration Add this server to your MCP client configuration: ```json { "mcpServers": { "mindmup-gdrive": { "url": "http://your-server:9802/sse", "headers": { "X-Google-Credential": "<your-base64-encoded-credential>" } } } } ``` #### Generate Base64 Credential Encode your Google service account JSON to base64: ```bash # macOS / Linux cat your_service_account.json | base64 | tr -d '\n' # Windows PowerShell [Convert]::ToBase64String([IO.File]::ReadAllBytes("your_service_account.json")) ``` Copy the output and paste it as the `X-Google-Credential` value. ## πŸ” Future Plan - **Create MindMup Files**: Create new mind maps directly through MCP interface - **Edit MindMup Content**: Modify existing mind map nodes and structure - **Export Features**: Export mind maps to various formats (PDF, PNG, SVG) - **Sync Operations**: Two-way synchronization between local and cloud mind maps - **Advanced Tagging**: Add metadata and tags to mind map nodes - **Plugin System**: Extensible plugin architecture for custom functionality ## Contribution This project is a collaborative effort: - 50% developed by the project maintainer - 50% generated with assistance from Claude AI

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/shyinlim/Mindmup2GoogleDriveMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server