Interactive_draw_mcp

Interactive_draw_mcp

🚀 交互式绘制 MCP

本项目是一个模型上下文协议(MCP)服务器示例,带有交互式绘图界面。它展示了如何构建一个包含单独绘图界面的MCP扩展,采用Tkinter作为图形接口,能有效解决用户在绘图交互及数据持久化方面的需求,为相关开发提供了良好的参考。

🚀 快速开始

运行服务器以打开绘图窗口:

interactive-draw-mcp

✨ 主要特性

  • 绘制网格界面
    • 提供一个16x16的网格,每个单元格可在填充与空白两种状态间切换。
    • 设有清空网格按钮,可重置所有单元格。
  • 服务器功能
    • 启动绘图会话:初始化新会话并打开界面。
    • 切换单元格颜色:通过命令接口切换指定rowcol位置的单元格颜色。
    • 获取网格状态:返回当前网格配置的文本表示。
  • 持久化存储:网格状态保存到JSON文件(board_state.json),确保不同会话间的一致性。
  • UI和状态同步
    • 实时UI更新:利用后台线程持续监视网格状态文件,并将更改实时反映在界面中。

📦 安装指南

方案1:从源代码安装

  1. 克隆此仓库:
    git clone https://github.com/AaronGoldsmith/interactive_draw_mcp
    cd interactive_draw_mcp
    
  2. 安装包:
    pip install -e .
    

💻 使用示例

作为独立MCP服务器

运行服务器以打开绘图窗口:

interactive-draw-mcp

与Goose集成

方案1:使用Goose CLI(推荐)

启用扩展启动Goose会话:

# 本地开发
goose session --with-extension "python -m interactive-draw-mcp"

📚 详细文档

工具和架构概述

  • 服务器工具
    • start_drawing_session():初始化绘图会话并打开界面。
    • toggle_cell_color(row, col):切换指定rowcol位置的单元格颜色。
    • get_grid_state():返回网格当前状态的字符串表示。

资源与参考资料

架构概述

该项目架构展示了:

  1. MCP服务器:通过明确定义的工具管理Goose AI与绘图界面之间的通信。
  2. 交互式UI:提供网格的可视化界面。
  3. 与Goose AI集成:来自Goose AI的工具调用直接反映到网格状态,反之亦然。

优势

  • 职责分离:在逻辑和呈现之间保持清晰的划分。
  • 改进用户体验:提供直观的视觉反馈,同时保留基于文本的命令界面。
  • 适应性:可以扩展为更复杂的应用程序,涉及AI与交互式界面。
  • 0 关注
  • 0 收藏,25 浏览
  • system 提出于 2025-10-01 00:21

相似服务问题

相关AI产品