Cover image
Try Now
2025-03-31

MCP Server for collaborative drawing with Large Language Models

3 years

Works with Finder

1

Github Watches

0

Github Forks

0

Github Stars

Interactive Drawing MCP

This project is an example of a Model Context Protocol (MCP) server with an interactive drawing interface. It demonstrates how to build an MCP extension that includes a separate UI window for drawing, using Tkinter as the graphical interface.

Features

  • Drawing Grid Interface:

    • Offers a 16x16 grid where each cell can be toggled between two states (filled or empty).
    • Provides a clear grid button to reset all cells.
  • Server Capabilities:

    • Start Drawing Session: Initializes a new session and launches the UI.
    • Toggle Cell: Toggle the color of individual cells via a command interface.
    • Get Grid State: Retrieve the current grid configuration as a text representation.
  • Persistence: Grid state is saved to a JSON file (board_state.json) to maintain consistency across sessions.

  • UI and State Synchronization:

    • Real-Time UI Update: A background thread continuously watches for updates to the grid state file and reflects changes visually.

Installation

Option 1: Install from Source

  1. Clone this repository:

    git clone https://github.com/AaronGoldsmith/interactive_draw_mcp
    cd interactive_draw_mcp
    
  2. Install the package:

    pip install -e .
    

Usage

As a Standalone MCP Server

Run the server to open the drawing window:

interactive-draw-mcp

With Goose

Option 1: Using Goose CLI (recommended)

Start Goose with your extension enabled:

# Local Development
goose session --with-extension "python -m interactive-draw-mcp"

Tools

  • Server Tools:
    • start_drawing_session(): Initializes a drawing session and opens the UI.
    • toggle_cell_color(row, col): Toggles the cell's color at specified row and col.
    • get_grid_state(): Provides a string representation of the grid's current state.

Resources and References

Architecture Overview

The architecture of this project demonstrates:

  1. MCP Server: Manages communication between the Goose AI and the drawing interface via well-defined tools.
  2. Interactive UI: Provides a visual interface for the grid.
  3. Integration with Goose AI: Tool calls from Goose AI reflect directly onto the grid state and vice versa.

Benefits

  • Separation of Responsibilities: Maintains clear separation between server logic and UI presentation.
  • Improved User Experience: Offers intuitive visual feedback alongside text-based command interface.
  • Adaptability: Can be extended to more sophisticated applications involving AI and interactive UIs.

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://zenepic.net
  • Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.

  • https://reddgr.com
  • Delivers concise Python code and interprets non-English comments

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • 林乔安妮
  • A fashion stylist GPT offering outfit suggestions for various scenarios.

  • 田中 楓太
  • A virtual science instructor for engaging and informative lessons.

  • ariofarmani
  • Test repository for GitHub MCP server functionality

  • 1Panel-dev
  • 💬 MaxKB is an open-source AI assistant for enterprise. It seamlessly integrates RAG pipelines, supports robust workflows, and provides MCP tool-use capabilities.

  • Mintplex-Labs
  • The all-in-one Desktop & Docker AI application with built-in RAG, AI agents, No-code agent builder, MCP compatibility, and more.

  • ShrimpingIt
  • Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx

  • GLips
  • MCP server to provide Figma layout information to AI coding agents like Cursor

    Reviews

    1 (1)
    Avatar
    user_jQaHh5KM
    2025-04-16

    I recently started using interactive_draw_mcp by AaronGoldsmith, and it's been a game-changer. This product makes it incredibly easy to create interactive drawings with intuitive controls. The GitHub link provides thorough documentation and the welcome message when starting up is inviting. Highly recommended for anyone looking to enhance their MCP applications with interactive drawing capabilities! Check it out at https://github.com/AaronGoldsmith/interactive_draw_mcp.