Brainstorm MCP Server

Brainstorm MCP Server

An MCP server that launches a lightweight localhost UI for interactive AI-assisted brainstorming and planning. It enables collaborative ideation workflows with visual diagrams, interactive elements, and image support for seamless human-AI collaboration.

Category
Visit Server

README

MCP Brainstorm Server

An MCP (Model Context Protocol) server that spawns a lightweight, resource-efficient localhost UI for interactive AI-assisted brainstorming, planning, and visualization. Designed to work seamlessly with Claude and other AI agents for collaborative ideation workflows.

What It Does

Core Workflow

  1. Detection: When you mention brainstorming keywords (brainstorm, plan, think, how do...), the AI agent asks if you want to use the interactive UI
  2. Launch: Server starts on localhost with a session-specific URL
  3. Interaction: Render brainstorming materials using mermaid diagrams or Tailwind-styled HTML UI
  4. Submission: Users interact with clickable buttons, input comments, and optionally upload/paste images
  5. Retrieval: AI agent reads submitted responses to continue work
  6. Documentation: Optional saving to plans/*.md for future reference

Features

  • Multi-Session Support: Each AI agent session gets its own URL (localhost:{port}/{sessionid}) with tab names reflecting working directory for easy distinction

  • Shared Single Install Across Agents: One local clone and one Python environment can be reused by Claude, Codex, and other MCP-compatible agents at the same time, so you install once per machine instead of once per agent

  • Rich Content Rendering:

    • Mermaid diagrams for graphs, flowcharts, and visualizations
    • Tailwind CSS-styled UI for brainstorming options and interfaces
    • Markdown-compatible format renderer with embedded diagrams and tables
  • Interactive Elements:

    • Auto-generated IDs for sections and options (for easy reference)
    • Clickable buttons for user choices
    • Inline comment input fields
    • Submit/Done workflow
  • Image Support:

    • Local file upload via file picker
    • Internet-accessible URLs
    • Clipboard paste-in capability
  • Resource Efficient: Lightweight Python server designed for single-user operation

  • Loopback Only: The HTTP UI is hard-limited to loopback addresses and rejects non-local clients

Architecture

Components

├── mcp_server.py          # MCP server implementation (Python)
├── server/                # localhost UI server
│   ├── app.py            # Flask/FastAPI server
│   ├── templates/        # HTML templates
│   └── static/           # CSS, JS, assets
└── requirements.txt      # Dependencies

Runtime data is stored outside the repository by default under ~/.mcp/brainstorm-mcp/:

~/.mcp/brainstorm-mcp/
├── sessions/             # Session state storage
│   └── assets/           # Uploaded or pasted image data
└── plans/                # User-saved markdown plans

Session Management

  • Each session gets a unique sessionid (UUID or similar)
  • Session state stored in lightweight persistent storage under the user's ~/.mcp/brainstorm-mcp/ directory by default
  • URLs: localhost:PORT/{sessionid}
  • Tab titles reflect the working directory (pwd) of the AI agent terminal

Tech Stack

  • MCP Framework: Python MCP SDK
  • Backend: Python (Flask/FastAPI for lightweight HTTP server)
  • Frontend Rendering:
    • Diagrams: Mermaid.js
    • UI/Styling: Tailwind CSS
    • Markdown: Compatible format with embedded Mermaid support
  • Storage: JSON/SQLite (minimal, for session state)

Installation & Usage

Prerequisites

  • Python 3.9+
  • MCP client (Claude or compatible AI agent)

Full Installation Guide

For complete installation instructions, including:

  • using an existing local clone
  • cloning into the recommended shared MCP server location
  • connecting the server to Codex
  • connecting the server to Claude Code
  • reusing one install across multiple agents

See INSTALL.md.

Setup

git clone <repo-url>
cd mcp-brainstorm-server
pip install -r requirements.txt

Running the Server

The server is started on-demand by the MCP tool when the AI agent detects brainstorming keywords. Users can also manually start it:

python mcp_server.py

Expected Dependencies

anthropic-mcp
flask  # or fastapi
pydantic
python-dotenv

Protocol Flow

Example: Planning a Feature

  1. User: "Let me brainstorm the architecture for this feature"
  2. AI Agent: Detects keyword → Asks "Should I open the interactive brainstorming UI?"
  3. User: "Yes"
  4. Server: Launches at localhost:8080/abc-def-123-ghi (sessionid based on pwd)
  5. UI: Renders mermaid diagram of possible architectures with clickable options, comment fields, and image upload area
  6. User: Clicks preferred architecture option, adds comments, optionally uploads a reference diagram
  7. User: Clicks "Submit"
  8. Server: Stores submission under sessionid
  9. User: Returns to AI agent and says "response submitted"
  10. AI Agent: Retrieves submission via MCP → Continues planning with the user's input
  11. AI Agent (optional): "Should I save this plan? Suggested location: plans/feature-architecture.md" Default saved location on disk: ~/.mcp/brainstorm-mcp/plans/feature-architecture.md

MCP Tool Specification

Available Tools

start_brainstorm_session

Starts an interactive brainstorming UI session.

Input:

  • prompt (str): Initial brainstorming prompt/context
  • content_type (str): "mermaid", "html", or "markdown"
  • working_dir (str, optional): Current working directory (used for tab title)

Output:

  • session_id (str): Unique session identifier
  • url (str): Full localhost URL to access the UI
  • port (int): Port number used

get_session_response

Retrieves user submission from a completed session.

Input:

  • session_id (str): Session identifier

Output:

  • response (dict): User's submitted choices, comments, and images
  • timestamp (str): When submission occurred
  • status (str): "pending", "submitted", "expired"

list_sessions

Lists all active sessions.

Output:

  • sessions (list): Array of active session objects with IDs, URLs, and creation times

close_session

Terminates and cleans up a session.

Input:

  • session_id (str): Session to close

Design Principles

  • Minimal Resource Usage: Single-user operation, no heavy dependencies
  • Stateless Where Possible: Sessions are ephemeral unless saved to disk
  • Ease of Reference: Auto-generated IDs on all interactive elements
  • AI-Agent Friendly: Structured response format for easy parsing and continuation
  • Visual Clarity: Clear separation of UI sections with markdown/mermaid rendering

Future Enhancements

  • Persistent session history
  • Real-time collaboration (future multi-user support)
  • Custom Tailwind component library for brainstorming templates
  • Built-in export to various formats (PDF, PNG, etc.)
  • Integration with git for automatic plan versioning

License

MIT

Contributing

Contributions welcome. Please follow PEP 8 for Python code and ensure the server remains lightweight.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured