{"_id":"cloudmindmaps-mcp","name":"cloudmindmaps-mcp","dist-tags":{"latest":"1.1.0"},"versions":{"1.1.0":{"name":"cloudmindmaps-mcp","version":"1.1.0","description":"Model Context Protocol (MCP) server that lets Claude and other AI assistants create, list, and read mind maps on CloudMindMaps (FreeMind/Freeplane .mm format).","mcpName":"app.cloudmindmaps/mindmaps","main":"index.js","type":"module","bin":{"cloudmindmaps-mcp":"index.js"},"scripts":{"start":"node index.js"},"keywords":["mcp","model-context-protocol","modelcontextprotocol","mindmap","mind-map","mindmapping","freemind","freeplane","mm","claude","cloudmindmaps","ai"],"author":{"name":"Jan Rezab"},"license":"MIT","homepage":"https://cloudmindmaps.app/mcp","repository":{"type":"git","url":"git+https://github.com/jan-rezab/cloudmindmaps.git","directory":"mcp-server"},"bugs":{"url":"https://github.com/jan-rezab/cloudmindmaps/issues"},"engines":{"node":">=18"},"dependencies":{"@modelcontextprotocol/sdk":"^1.29.0","zod":"^3.24.0"},"gitHead":"da2780935bc38bd90a9993255508a623269c5ae3","_id":"cloudmindmaps-mcp@1.1.0","_nodeVersion":"25.6.1","_npmVersion":"11.9.0","dist":{"integrity":"sha512-atmcQR8Ax+o2MKJmYnzziNH7EaRqnEtNU9yQcYc4bhP8wKPQgiapuhOemo21KkR1g2okRSBxvIG6WzgQXf6fgg==","shasum":"a17041e4c6c683c3c0626d99c7fc0ef65d6e8a13","tarball":"https://registry.npmjs.org/cloudmindmaps-mcp/-/cloudmindmaps-mcp-1.1.0.tgz","fileCount":5,"unpackedSize":19564,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIE5bUBANwnY9drSKCHzO1R5QUO7i8bDLd/bMjvrzWnC4AiEAvSelFylDK9UTb6rXxqZu0+X8kpsWYHvVKai/5T6r5/Y="}]},"_npmUser":{"name":"cloudmindmaps","email":"cloudmindmaps@janrezab.com"},"directories":{},"maintainers":[{"name":"cloudmindmaps","email":"cloudmindmaps@janrezab.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cloudmindmaps-mcp_1.1.0_1783399217053_0.07134292580450108"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-07T04:40:16.942Z","1.1.0":"2026-07-07T04:40:17.182Z","modified":"2026-07-07T04:40:17.366Z"},"maintainers":[{"name":"cloudmindmaps","email":"cloudmindmaps@janrezab.com"}],"description":"Model Context Protocol (MCP) server that lets Claude and other AI assistants create, list, and read mind maps on CloudMindMaps (FreeMind/Freeplane .mm format).","homepage":"https://cloudmindmaps.app/mcp","keywords":["mcp","model-context-protocol","modelcontextprotocol","mindmap","mind-map","mindmapping","freemind","freeplane","mm","claude","cloudmindmaps","ai"],"repository":{"type":"git","url":"git+https://github.com/jan-rezab/cloudmindmaps.git","directory":"mcp-server"},"author":{"name":"Jan Rezab"},"bugs":{"url":"https://github.com/jan-rezab/cloudmindmaps/issues"},"license":"MIT","readme":"# CloudMindMaps MCP Server\n\n[![npm version](https://img.shields.io/npm/v/cloudmindmaps-mcp.svg)](https://www.npmjs.com/package/cloudmindmaps-mcp)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE)\n\nLet Claude — and any other [Model Context Protocol](https://modelcontextprotocol.io) client — create, browse, and read mind maps directly on **[cloudmindmaps.app](https://cloudmindmaps.app)**. Maps use the open FreeMind/Freeplane `.mm` format, so anything you make here also opens in those desktop apps.\n\nJust ask:\n\n> *\"Turn these meeting notes into a mind map.\"*\n> *\"Make a mind map of the pros and cons of microservices.\"*\n> *\"List my mind maps and show me the roadmap one.\"*\n\nClaude structures the ideas, this server saves the map, and you get a shareable link.\n\n## Tools\n\n| Tool | What it does |\n|---|---|\n| **`create_mindmap_from_outline`** | **Recommended.** The AI supplies a nested outline; the server generates valid `.mm` XML (IDs, balanced branches, escaping) and saves it. |\n| `create_mindmap` | Create a map from raw CloudMindMaps `.mm` XML (for power users who need clouds, edges, connectors, rich HTML nodes). |\n| `list_mindmaps` | List maps you own or that are shared with you. |\n| `get_mindmap` | Read a map's details and full `.mm` XML by ID. |\n\nPlus a prompt, **`convert_to_mindmap`**, that turns any pasted content into a well-structured map in one step.\n\n## Quick start\n\n### 1. Get your CloudMindMaps API key\n\nSign in at [cloudmindmaps.app](https://cloudmindmaps.app), open your browser console, and run:\n\n```js\nconst token = await firebase.auth().currentUser.getIdToken();\nconst res = await fetch(\"https://cloudmindmaps.app/api/keys\", {\n  method: \"POST\",\n  headers: { Authorization: `Bearer ${token}` },\n});\nconsole.log(\"Your API key:\", (await res.json()).key);\n```\n\nCopy the key — it's shown only once. Re-running the command regenerates it (and revokes the old one).\n\n### 2. Add the server to your MCP client\n\nNo install needed — `npx` fetches and runs it. Just add the config below and drop in your key.\n\n**Claude Desktop** — edit `claude_desktop_config.json` (Settings → Developer → Edit Config):\n\n```json\n{\n  \"mcpServers\": {\n    \"cloudmindmaps\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"cloudmindmaps-mcp\"],\n      \"env\": { \"CLOUDMINDMAPS_API_KEY\": \"YOUR_API_KEY_HERE\" }\n    }\n  }\n}\n```\n\n**Claude Code** (CLI):\n\n```bash\nclaude mcp add cloudmindmaps --env CLOUDMINDMAPS_API_KEY=YOUR_API_KEY_HERE -- npx -y cloudmindmaps-mcp\n```\n\n**Cursor / other MCP clients** — same shape: command `npx`, args `[\"-y\", \"cloudmindmaps-mcp\"]`, env `CLOUDMINDMAPS_API_KEY`.\n\n### 3. Restart your client\n\nYou'll see the four tools appear. Ask Claude to make a mind map and it will reply with a link to open on cloudmindmaps.app.\n\n## Configuration\n\n| Env var | Required | Default | Description |\n|---|---|---|---|\n| `CLOUDMINDMAPS_API_KEY` | ✅ | — | Your API key from step 1. |\n| `CLOUDMINDMAPS_API_URL` | — | `https://cloudmindmaps.app` | Override for self-hosted / staging. |\n| `CLOUDMINDMAPS_TIMEOUT_MS` | — | `30000` | Per-request timeout in milliseconds. |\n\n## Running from source (development)\n\n```bash\ncd mcp-server\nnpm install\nCLOUDMINDMAPS_API_KEY=YOUR_KEY node index.js\n```\n\nThen point your client at `node /absolute/path/to/mcp-server/index.js` instead of `npx`.\n\n## Revoking your key\n\n```js\nconst token = await firebase.auth().currentUser.getIdToken();\nawait fetch(\"https://cloudmindmaps.app/api/keys\", {\n  method: \"DELETE\",\n  headers: { Authorization: `Bearer ${token}` },\n});\n```\n\n## Links\n\n- Web app: https://cloudmindmaps.app\n- Setup guide: https://cloudmindmaps.app/mcp\n- `.mm` format spec: https://cloudmindmaps.app/prompt-convert-to-mm.md\n\n## License\n\nMIT © Jan Rezab / CloudMindMaps\n","readmeFilename":"README.md","_rev":"1-56b46d88a648aa16e9a82848630ea6d0"}