{"id":"e46fc39c-9129-4a58-a559-a7656204492d","slug":"maproom","kind":"mcp","name":"maproom","summary":"Local-first mind maps for AI-assisted software development, with a browser editor and MCP tools.","owner":"Raggertooth","repoUrl":"https://github.com/Raggertooth/maproom","license":"MIT","licenseTier":"permissive","trust":"community","stars":1,"match":null,"fewStars":true,"format":"mcp","createdAt":"2026-10-11T10:38:15.000Z","addedAt":"2026-10-21T05:17:57.623Z","logoUrl":"https://avatars.githubusercontent.com/u/35512757?u=74333392559a85ca198f28ab3f0409e5c75de22b&v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["utilities","browser-web","cloud-infra"],"tags":["ai-agents","developer-tools","diagrams","mind-map","mind-mapping","software-architecture"],"runtime":"binary","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-27T01:52:46.284Z","sample":false,"url":"https://conduits.dev/tools/maproom","language":"TypeScript","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"# Maproom\n\n**Mind maps for AI-assisted software development.** Maproom gives AI agents a structured canvas for exploring a codebase, planning features, mapping architecture, and communicating technical decisions. People can inspect and edit the same maps in a browser while agents work through the Model Context Protocol (MCP).\n\n![Maproom mind-map editor](docs/qa/maproom-browser-final.png)\n\nMaproom is a local-first project: the browser editor and MCP server share a JSON map store on your machine. The editor runs on macOS, Linux, or Windows with a supported Node.js release. This first release is a useful MVP for planning and development diagrams; it does not inspect source repositories or automatically generate maps from code.\n\n## What you can map\n\n- Software architecture: services, components, data stores, APIs, and their relationships\n- Feature design: user goals, flows, constraints, implementation branches, and acceptance criteria\n- Domain models: entities, concepts, ownership, and dependencies\n- Engineering plans: milestones, tasks, risks, decisions, and release readiness\n- Operational thinking: incident causes, mitigations, recovery paths, and runbooks\n\nThe map structure supports nested topics, notes, progress status, branch colours, and labelled cross-links. Layouts include radial, left-to-right, right-to-left, and organisation chart.\n\n## Quick start\n\nRequirements: Node.js 22.19+, 24.11+, or 26+, and npm. From a terminal:\n\n```bash\ngit clone https://github.com/Raggertooth/maproom.git\ncd maproom\nnpm ci\nnpm run build\nnpm start\n```\n\nThen open [http://127.0.0.1:4318](http://127.0.0.1:4318). Maproom creates a starter map the first time it runs. The server binds to the local computer only.\n\nTo work on the source with live reload, use `npm run dev`; the Vite UI runs at `http://127.0.0.1:5173` and sends API requests to the local server at port 4318.\n\n## Connect an AI agent\n\nMaproom exposes an MCP server over stdio. Build once with `npm run build`, then register the absolute path to `dist/server/mcp.js` in your MCP host. For example, a Codex configuration can look like:\n\n```toml\n[mcp_servers.maproom]\ncommand = \"node\"\nargs = [\"/absolute/path/to/maproom/dist/server/mcp.js\"]\nenv = { MAPROOM_DATA_PATH = \"/absolute/path/to/maproom/data/maps.json\" }\n```\n\nSet `MAPROOM_DATA_PATH` to the same file for the browser server and MCP process so they share maps. Restart the MCP host after saving its configuration. See [Agent setup](docs/agent-setup.md) for more detail and example prompts.\n\n### Available tools\n\n| Tool | Purpose |\n| --- | --- |\n| `list_maps` | List saved maps and their basic metadata |\n| `get_map` | Read a map as structured JSON |\n| `create_map` | Create a map with a root topic |\n| `add_topics` | Add one or more nested topics |\n| `update_topic` | Change a topic’s text, notes, status, colour, or parent |\n| `remove_topic` | Remove a topic and its descendants |\n| `connect_topics` | Add or update a labelled cross-link |\n| `set_layout` | Select a visual layout |\n| `export_map` | Return a map as OPML or SVG |\n\n## Exports and data\n\nThe editor can export OPML and SVG, create PNG images, and print to PDF. Map data is stored locally in `data/maps.json`; set `MAPROOM_DATA_PATH` to choose another location. OPML is a portable outline format and does not include every visual property of a Maproom map. See [Data format and exports](docs/data-format-and-exports.md).\n\n## Documentation\n\n- [Agent setup](docs/agent-setup.md) — MCP configuration and prompt patterns\n- [Development diagram patterns](docs/development-diagrams.md) — practical examples for software design work\n- [Architecture](docs/architecture.md) — components, data flow, and design decisions\n- [Data format and exports](docs/data-format-and-exports.md) — map model, storage, and export boundaries\n- [Development guide](docs/development.md) — local setup and project structure\n- [Contributing](CONTRIBUTING.md) — how to propose changes\n- [Security](SECURITY.md) — local network boundary and vulnerability reporting\n- [MIT License](LICENSE) — reuse and distribution terms\n\n## Current limitations\n\n- The MCP interface is local stdio; it is not a hosted or remote MCP service.\n- Maps are stored in one local JSON file; there is no cloud sync, multi-user editing, or authentication.\n- Agents do not automatically read source repositories. Give an agent the relevant code or repository tools, then ask it to represent its findings in Maproom.\n- Layout is generated automatically. Users can edit the map structure and content, but there is no freeform drag-and-drop canvas yet.\n- Interchange formats preserve outline content, while some Maproom-specific visual details may not transfer.\n\n## Project status\n\nMaproom is an early, working project. The editor and MCP tools are implemented; the data model and export formats may evolve. Maproom is distributed under the MIT License. See [LICENSE](LICENSE) for the terms.\n\n"}