Interactive Feedback MCP
Provides interactive user feedback and command execution for AI-assisted development.
Interactive Feedback MCP - 交互式反馈MCP服务器
🌐 Language / 語言切換: 简体中文 |English
一个强大的 MCP 服务器,在AI辅助开发工具如 Cursor 中实现无缝的人机协作工作流程。该服务器允许您运行命令、查看输出结果,并通过直观的图形界面直接向AI提供丰富的文本反馈。
✨ 核心特性
🚀 先进的用户界面
- 现代化Qt图形界面 - 直观设计和响应式布局
- 多语言支持 - 中英文界面即时切换
- 图片拖拽支持 - 自动压缩和Base64编码
- 智能按钮布局 - 自适应屏幕尺寸和用户偏好
- 工具菜单集成 - 有序组织的系统维护功能
🎯 智能快捷响应系统
- 预配置响应按钮 - 覆盖常见开发工作流程
- RIPER-5协议集成 - (研究 → 创新 → 计划 → 执行 → 审查)
- 可自定义快捷操作 - 支持拖拽重新排序
- 项目特定配置 - 记住您的偏好设置
- 智能MCP调用 - 智能判断何时需要请求反馈
🔧 强大的命令执行
- 跨平台命令执行 - 实时输出流传输
- 自动执行模式 - 适用于重复性工作流程
- 进程管理 - 启动/停止控制和状态监控
- 命令历史 - 每个项目的命令持久化
- 控制台输出 - 语法高亮和滚动支持
🖼️ 高级图片处理
- 剪贴板图片支持 - Ctrl+V粘贴功能
- 多种图片格式 - PNG、JPG、JPEG、GIF、BMP、WebP
- 智能压缩 - 可配置的目标大小(30KB-100KB)
- Base64传输 - 直接AI图像识别
- 临时文件管理 - 自动清理功能
⚙️ 专业配置管理
- 项目特定设置 - 使用Qt QSettings安全存储
- 按钮自定义 - 尺寸、可见性和内容控制
- 性能优化 - 布局缓存和批量更新
- 备份和恢复 - 配置管理功能
- 主题和布局 - 持久化存储偏好设置
💡 为什么使用这个工具?
通过引导助手与用户确认而不是分支到投机性的高成本工具调用,该模块可以大幅减少像Cursor这样的平台上的高级请求数量(例如OpenAI工具调用)。在某些情况下,它帮助将原本多达25个工具调用合并为单个具有反馈感知的请求——节省资源并提高性能。
性能优势
- 降低API成本 - 通过最小化不必要的工具调用
- 提高准确性 - 在关键决策点进行人工验证
- 增强生产力 - 通过简化的反馈工作流程
- 更好的协作 - AI和人类开发者之间的配合
🎮 使用方法
基本工作流程
- 启动界面 - 当AI助手调用时启动
- 查看摘要 - 审查AI已完成的工作
- 使用快捷响应按钮 - 处理常见反馈场景:
- ✅ 看起来不错 - 批准当前工作
- 🔧 需要小调整 - 请求轻微修改
- 📋 完成所有清单 - 执行剩余任务
- 🎯 智能执行清单 - 智能处理剩余项目
高级功能
🔍 RIPER-5 协议工作流程
系统包含用于系统性问题解决的专用按钮:
- 🔍 深度分析问题 - 深度分析模式和系统性分解
- 💡 创新解决方案 - 头脑风暴多种方法并评估选项
- 📋 制定实施计划 - 生成详细的实施计划和审查检查点
- ⚡ 执行计划步骤 - 按计划执行,带有交互反馈
- 🎯 验证最终结果 - 根据需求进行全面验证
🖼️ 图片集成
- 拖拽图片 - 直接拖入界面或使用Ctrl+V粘贴截图
- 配置传输选项 - 启用Base64进行AI识别
- 调整压缩设置 - 选择目标大小以获得最佳性能
- 发送前预览 - 使用缩略图预览功能
⚙️ 自定义选项
- 编辑快捷按钮 - 点击⚙️按钮自定义响应
- 工具菜单 - 访问系统功能,如临时文件清理
- 语言切换 - 在中英文界面之间切换
- 布局偏好 - 调整按钮大小和窗口布局
命令执行功能
- 切换命令区域 - 显示/隐藏命令执行面板
- 自动执行模式 - 启用启动时自动命令运行
- 实时输出 - 查看命令执行结果
- 进程控制 - 启动、停止和监控运行中的进程
📋 提示词工程
为了获得最佳效果,请将以下内容添加到您的AI助手自定义提示中任意一种:
示例1:
每当您想要提问时,始终调用MCP `interactive_feedback`。
每当您即将完成用户请求时,调用MCP `interactive_feedback`而不是简单地结束过程。
继续调用MCP直到用户反馈为空,然后结束请求。
使用RIPER-5协议按钮时,遵循系统化方法:
1. 🔍 研究:在提出解决方案之前彻底分析问题
2. 💡 创新:探索多种创造性方法
3. 📋 计划:创建详细的、可审查的实施计划
4. ⚡ 执行:按步骤执行计划,设置检查点
5. 🎯 审查:根据原始需求验证结果
示例2:
配套当前mcp的cursor提示词:RIPER-5-cursor-rule
这确保您的AI助手有效使用MCP服务器并遵循结构化的问题解决方法。
🔧 配置
此MCP服务器使用Qt的QSettings
在每个项目基础上存储配置,包括:
存储的设置
- 命令偏好 - 每个项目的默认命令
- 执行设置 - 自动执行偏好和命令历史
- UI偏好 - 窗口几何、按钮可见性、语言选择
- 快捷响应自定义 - 自定义按钮、大小和排列
- 图片处理设置 - 压缩偏好和传输选项
- 性能设置 - 布局缓存和更新偏好
存储位置
设置存储在特定于平台的位置:
- Windows: 注册表
HKEY_CURRENT_USER\Software\InteractiveFeedbackMCP\InteractiveFeedbackMCP
- macOS:
~/Library/Preferences/com.InteractiveFeedbackMCP.InteractiveFeedbackMCP.plist
- Linux:
~/.config/InteractiveFeedbackMCP/InteractiveFeedbackMCP.conf
配置组织结构
- 全局设置: 窗口几何、语言偏好等通用UI设置存储在
MainWindow_General
组中 - 项目特定设置: 每个项目根据其目录路径哈希获得唯一的配置组,格式为
Project_{项目名}_{目录哈希}
- 基础传输设置: Base64传输配置等全局功能设置直接存储在根级别
配置隔离机制
系统通过以下方式确保不同项目的配置互不干扰:
- 目录哈希: 使用项目目录的MD5哈希值生成唯一标识符
- 组分离: 不同项目的设置存储在独立的配置组中
- 回退机制: 项目特定设置优先,未设置时使用全局默认值
存储的具体配置项
每个项目配置组包含以下设置:
run_command
: 项目的默认执行命令execute_automatically
: 是否自动执行命令suffix_mode
: 反馈后缀模式(force/smart/none)button_size
: 按钮大小设置(small/medium/large/custom)custom_button_width/height
: 自定义按钮尺寸visible_buttons
: 可见快捷按钮列表language
: 界面语言设置use_base64_transmission
: 是否启用Base64图片传输base64_target_size_kb
: Base64传输的目标文件大小commandSectionVisible
: 命令区域是否可见quick_responses
: 自定义快捷响应按钮配置
配置文件示例
在Linux系统上,配置文件内容类似:
[MainWindow_General]
geometry=@ByteArray(...)
windowState=@ByteArray(...)
[Project_MyProject_a1b2c3d4]
run_command=python main.py
execute_automatically=false
suffix_mode=force
button_size=medium
language=zh_CN
use_base64_transmission=true
base64_target_size_kb=30
🚀 安装
前置要求
- Python 3.11 或更新版本
- uv (Python包管理器)
- Windows:
pip install uv
- Linux/Mac:
curl -LsSf https://astral.sh/uv/install.sh | sh
- Windows:
安装步骤
-
克隆仓库:
git clone https://github.com/liaosiqian/interactive-feedback-mcp.git cd interactive-feedback-mcp
-
安装依赖:
uv venv uv sync --index-url https://pypi.tuna.tsinghua.edu.cn/simple
与AI工具集成
Cursor 配置
添加到您的
mcp.json
配置文件:
{
"mcpServers": {
"interactive-feedback-mcp": {
"command": "uv",
"args": [
"--directory",
"/path/to/interactive-feedback-mcp",
"run",
"server.py"
],
"timeout": 600,
"autoApprove": [
"interactive_feedback"
]
}
}
}
重要提醒: 将 /path/to/interactive-feedback-mcp
替换为您克隆仓库的实际路径。
Cline / Windsurf 配置
在相应工具的MCP设置中使用类似的配置原理,指定 interactive-feedback-mcp
作为服务器标识符。
🛠️ 开发
开发模式
使用Web界面运行服务器进行测试:
uv run fastmcp dev server.py
这会打开一个用于测试MCP工具交互的Web界面。
项目结构
interactive-feedback-mcp/
├── feedback_ui.py # 主UI控制器 (773行)
├── ui_layout.py # 布局管理 (372行)
├── ui_performance.py # 性能优化 (120行)
├── button_core.py # 按钮核心逻辑 (195行)
├── ui_events.py # 事件处理 (178行)
├── ui_settings.py # 配置管理 (142行)
├── feedback_logic.py # 业务逻辑 (215行)
├── quick_response_manager.py # 快捷响应系统 (180行)
├── ui_dialogs.py # 对话框组件 (580行)
├── cleanup_temp_images.py # 图片清理工具 (222行)
├── clipboard_image_widget.py # 图片处理 (540行)
├── i18n.py # 国际化 (352行)
├── server.py # MCP服务器入口点 (74行)
└── config.py # 配置工具 (44行)
架构亮点
- 模块化设计 - 清晰的关注点分离
- 基于Qt的UI - 现代设计模式
- 性能优化 - 包括布局缓存和批量更新
- 全面的国际化 - 支持多语言
- 健壮的错误处理 - 优雅降级
🔨 可用工具
interactive_feedback
用于请求用户反馈的主要工具,包含丰富的上下文。
使用示例:
<use_mcp_tool>
<server_name>interactive-feedback-mcp</server_name>
<tool_name>interactive_feedback</tool_name>
<arguments>
{
"project_directory": "/path/to/your/project",
"summary": "我已经实现了请求的功能,需要您对实现方法的反馈。"
}
</arguments>
</use_mcp_tool>
参数:
project_directory
(字符串): 当前项目目录的路径summary
(字符串): 已完成工作或问题的简要描述
返回值:
logs
(字符串): 任何执行命令的控制台输出interactive_feedback
(字符串): 用户的文本反馈和指示
🎯 最佳实践
对于AI助手
- 始终提供上下文 - 在摘要参数中提供详细信息
- 使用特定的项目目录 - 确保配置隔离正确
- 等待用户反馈 - 在进行重大更改之前
- 利用快捷响应按钮 - 通过提及其可用性
- 遵循RIPER-5协议 - 进行系统性问题解决
对于用户
- 自定义快捷按钮 - 针对您最常见的响应
- 使用图片功能 - 提供视觉反馈和示例
- 配置项目特定设置 - 适应不同的工作流程
- 保持临时文件清洁 - 使用工具菜单清理选项
- 根据需要切换语言 - 适用于国际协作
性能技巧
- 启用自动执行 - 适用于重复性命令工作流程
- 谨慎使用Base64传输 - 对于大图片
- 自定义按钮布局 - 匹配您的屏幕尺寸
- 利用工具菜单 - 保持界面有序
🌟 致谢与联系
本项目最初由 Fábio Ferreira (@fabiomlferreira) 开发。
RIPER-5-cursor-rule.txt 原始版本来源于 煎饼果子(86)
大佬整理
📄 许可证
这个项目是开源的。请参考许可证文件了解详情。
🚀 贡献
欢迎贡献!请随时提交问题、功能请求或拉取请求来改进这个工具。
📚 功能详细说明
🎨 界面自定义
- 按钮大小调整 - 小号(100x30)、中号(120x40)、大号(150x45)或自定义尺寸
- 语言切换 - 运行时即时在中英文之间切换
- 布局适配 - 自动适应不同屏幕尺寸和分辨率
- 主题保存 - 记住窗口大小、位置和用户偏好
🔄 工作流程集成
- RIPER-5协议 - 结构化的五阶段问题解决方法
- 检查清单管理 - 智能执行和进度跟踪
- 项目配置隔离 - 每个项目独立的设置和历史
- 自动化脚本 - 支持重复性任务的自动执行
🖥️ 命令行集成
- 实时进程监控 - 查看命令执行状态和输出
- 跨平台兼容 - Windows、macOS、Linux全平台支持
- 错误处理 - 优雅处理命令失败和异常情况
- 输出格式化 - 语法高亮和可读性优化
📊 性能监控
- UI响应优化 - 批量更新减少界面卡顿
- 内存使用监控 - 智能缓存管理
- 网络传输优化 - 图片压缩和传输效率
- 调试统计 - 性能指标收集和分析
这个工具设计用于提升AI辅助开发的效率和准确性,通过人机协作实现更好的开发体验。
Related Servers
Unreal Engine Code Analyzer
Analyzes Unreal Engine source code to provide context for AI assistants.
Windows Command Line MCP Server
Enables AI models to interact with the Windows command-line safely and efficiently.
JMeter MCP Server
Execute JMeter tests and analyze results through MCP-compatible clients.
iFlytek Workflow MCP Server
An MCP server for executing iFlytek workflows through MCP tools.
MCP Hot-Reload
A Hot Module Replacement (HMR) proxy server for MCP servers that automatically restarts on file changes, buffers messages, and manages connections.
Supervisord MCP
A tool for managing Supervisord processes, integrated with AI agents via the Model Context Protocol (MCP). It offers standardized process control, real-time monitoring, and robust operations.
Sandbox MCP Server
Provides isolated Docker environments for secure code execution.
DevHub
Manage and utilize website content within the DevHub CMS platform
Azure DevOps
Interact with Azure DevOps for managing projects, pipelines, and repositories.
Kubernetes
Kubernetes MCP server with the top30 tools