Mindmup2GoogleDriveMCP
Enables searching, listing, and retrieving MindMup mind map files stored in Google Drive, with support for parsing mind map content, getting summaries, and extracting specific chunks with keyword search capabilities.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Mindmup2GoogleDriveMCPfind mind maps about project planning"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MindMup2 Google Drive MCP Server
A Model Context Protocol (MCP) server that lets AI clients (Claude Code, Cursor) search, read, and drill into MindMup 2 .mup mind maps stored in Google Drive β without dumping a 3MB JSON tree into the model. Large maps are auto-summarised into a tree outline; the AI then drills into specific sections by node_path.
Compatibility: Claude Code, Cursor (HTTP transport). Not supported: Claude Desktop (stdio-only).
π« Result

β¨ Features
Search MindMup files across your entire Google Drive (read-only)
Tree navigation + section drill-down for large mind maps β small files return full content, large files return an outline you can drill into
Per-client cache isolation via
X-Client-Idheader, so different users/tools don't share cached contentHot-reload dev mode via
fastmcp run --reload+ bind-mounted sourceFastMCP server with built-in
/healthand/pingendpointsDocker Compose for both dev and prod
πΊοΈ End-to-End Flow
1. Set up Google Cloud service account β download JSON key
2. Share your Drive folder with the SA β Viewer access
3. Base64-encode the JSON key β for X-Google-Credential header
4. Run the server (Docker or Python) β http://127.0.0.1:9805
5. Configure your MCP client (Claude/Cursor) with the base64 credential
6. Verify β curl http://127.0.0.1:9805/healthπ§ Available MCP Tools
Tool | Description |
| List MindMup files from Google Drive (folders and non- |
| Read a MindMup file by |
| Search nodes by keyword. Params: |
| Drill into a section by |
Suggested workflow for AI agents: list_files β read_mindmap β if outline_only, either search_mindmap (by keyword) or get_mindmap_section (by node_path from suggested_start_paths).
π Getting Started
Prerequisites
Python 3.12+
Docker & docker-compose (required for
make run-dev-docker/make run-prod) ; Ref. makefileGoogle Cloud Platform account
An MCP client that supports HTTP transport (Claude Code or Cursor)
Google Drive API Setup
Step | Description | Image |
1 | Go to Google Cloud Console and create a new project (free tier is fine β no billing required for Drive API). | |
2 | Enable the Google Drive API. | |
3 | Create Service Account credentials: - "IAM & Admin" β "Service Accounts" β "Create Service Account" - No project-level role needed (Drive sharing handles auth) - Open the SA β "Keys" tab β "Add Key" β JSON β download the key file. |
|
4 | Base64-encode the entire JSON key file (see Header Reference). β οΈ Add the JSON file to | |
5 | Share your Google Drive folder with the SA: - Copy the - Right-click the folder β Share β paste the email - Grant Viewer access, uncheck "Notify people" - Sharing propagates to subfolders. |
|
Note on scopes: The server requests
auth/drive+auth/drive.file. Despite the broad scope, withViewerfolder-level sharing the SA can only read what you've shared. Workspace-managed accounts may block external sharing β if so, ask your admin to allow service-account sharing for your domain.
Run the Server
Docker (recommended):
make run-dev-docker # dev: hot-reload, source bind-mounted
make run-prod # prod: no reloadDirect Python (no Docker):
pip install -r requirements.txt
python3 run.py
# Optionally: MCP_TRANSPORT=streamable-http python3 run.pyVerify the Server
curl http://127.0.0.1:9805/health
# => {"result":"success","time":"...","message":"MCP server is running. ..."}If you don't get success, check docker logs <container> (Docker mode) or stdout (Python mode).
Run Tests
pip install -r requirements.txt
pytestMCP Client Configuration
Add to your MCP client config (~/.claude/mcp.json for Claude Code, or your Cursor MCP settings):
{
"mcpServers": {
"mindmup-gdrive": {
"type": "http",
"url": "http://127.0.0.1:9805/mcp",
"headers": {
"X-Google-Credential": "ewogICJ0eXBlIjogInNlcnZpY2VfYWNjb3VuXXXXXXXXXXX",
"X-Client-Id": "shyin-claude-code"
}
}
}
}Header Reference
Header | Required | Description |
| β | Your service account JSON, base64-encoded. Use base64encode.org and paste the output here. β οΈ Base64 is encoding, not encryption β the MCP client config sits in plaintext on disk, so don't sync it to public repos / unencrypted cloud backups. |
| Optional | A unique identifier per user + tool, e.g. |
π©Ί Troubleshooting
Symptom | Likely cause / fix |
| Server not running. Check |
| Invalid base64. Sanity check: |
| (a) Folder shared with the wrong email β must match |
Docker build fails | Make sure Docker daemon is running. Re-run |
Changes not picking up in dev | Hot-reload only watches Python source. Restart the container after dependency or env changes. |
ποΈ Project Structure
βββ mcp_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 with read tools
β β βββ mindmup_parser.py # MindMup parsing + tree navigation
β βββ model/
β β βββ common_model.py # Common data models
β β βββ gdrive_model.py # Google Drive data models
β β βββ mindmup_model.py # Mind map data models (with to_ai_dict)
β βββ utility/
β βββ enum.py # Enumerations and constants
β βββ logger.py # Logging utilities
βββ tests/ # Unit tests
βββ plans/ # Implementation plans
βββ run.py # Main entry point
βββ requirements.txt # Python dependencies
βββ makefile # Build and deployment commandsThis server cannot be installed
Maintenance
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/mcp_mindmup2_google_drive'
If you have feedback or need assistance with the MCP directory API, please join our Discord server

