A modern MCP server for interactive user feedback collection with GUI and Web modes
Project description
🎯 MCP服务器反馈收集器
一个现代化的 Model Context Protocol (MCP) 服务器,为AI助手提供交互式用户反馈收集功能。支持GUI和Web两种界面模式,完美适配桌面和服务器环境。
✨ 主要特性
- 🎨 智能界面 - 自动检测环境,支持GUI和Web两种界面模式
- 🖥️ 跨平台兼容 - Windows GUI、Linux/Mac Web界面,完美适配服务器环境
- 📷 多图片支持 - 同时选择多张图片,支持文件选择和剪贴板粘贴
- 💬 灵活反馈 - 支持纯文字、纯图片或文字+图片组合反馈
- ⚡ 零配置安装 - 使用uvx一键安装,无需复杂配置
- 🔧 智能超时 - 可配置的对话框超时时间,避免操作中断
- 🌐 Web模式 - 在无GUI环境下自动启动Web服务器,浏览器访问
🚀 快速开始
1. 安装uvx
pip install uvx
2. 配置Claude Desktop
在 claude_desktop_config.json 中添加:
{
"mcpServers": {
"mcp-server-feedback": {
"command": "uvx",
"args": ["mcp-server-feedback"],
"env": {
"PYTHONIOENCODING": "utf-8",
"MCP_DIALOG_TIMEOUT": "600"
}
}
}
}
3. 重启Claude Desktop
配置完成后重启Claude Desktop即可使用。
🛠️ 核心功能
collect_feedback()
收集用户反馈的主要工具,AI可以汇报工作内容,用户提供文字和图片反馈。
# AI调用示例
result = collect_feedback("我已经完成了代码优化工作...")
pick_image()
快速图片选择工具,用于单张图片选择场景。
get_image_info()
获取图片文件的详细信息(格式、尺寸、大小等)。
🖼️ 界面预览
🎯 工作完成汇报与反馈收集
┌─────────────────────────────────────────┐
│ 📋 AI工作完成汇报 │
│ ┌─────────────────────────────────────┐ │
│ │ [AI汇报的工作内容显示在这里] │ │
│ └─────────────────────────────────────┘ │
└─────────────────────────────────────────┘
┌─────────────────────────────────────────┐
│ 💬 您的文字反馈(可选) │
│ ┌─────────────────────────────────────┐ │
│ │ [多行文本输入区域] │ │
│ └─────────────────────────────────────┘ │
└─────────────────────────────────────────┘
┌─────────────────────────────────────────┐
│ 🖼️ 图片反馈(可选,支持多张) │
│ [📁选择文件] [📋粘贴] [❌清除] │
│ [图片缩略图预览区域] │
└─────────────────────────────────────────┘
[✅ 提交反馈] [❌ 取消]
⚙️ 配置说明
环境变量
-
MCP_DIALOG_TIMEOUT: 对话框等待时间(秒)- 默认:300秒(5分钟)
- 建议:600秒(10分钟)
- 复杂操作:1200秒(20分钟)
-
MCP_DISPLAY_MODE: 强制指定界面模式auto(默认):自动检测环境gui:强制使用GUI模式web:强制使用Web模式
-
MCP_WEB_PORT: 指定Web服务器端口(Web模式)- 默认:自动分配8000-8100范围内可用端口
高级配置示例
{
"mcpServers": {
"mcp-server-feedback": {
"command": "uvx",
"args": ["mcp-server-feedback"],
"env": {
"PYTHONIOENCODING": "utf-8",
"MCP_DIALOG_TIMEOUT": "600",
"MCP_DISPLAY_MODE": "web",
"MCP_WEB_PORT": "8080"
}
}
}
}
支持的图片格式
PNG、JPG、JPEG、GIF、BMP、WebP
💡 使用场景
- ✅ AI完成任务后收集用户评价
- ✅ 收集包含截图的详细反馈
- ✅ 获取用户对代码/设计的意见
- ✅ 收集bug报告和改进建议
🔧 技术栈
- MCP框架: FastMCP
- GUI模式: tkinter + PIL
- Web模式: Flask + HTML5/CSS3/JavaScript
- 多线程: threading + queue
- 图片处理: Pillow
- 进程管理: psutil
- 环境检测: 自动识别GUI/Web环境
🌐 环境适配
GUI模式 (Windows/有显示环境的Linux)
- 使用tkinter创建原生桌面应用
- 支持文件对话框和剪贴板操作
- 美观的现代化界面设计
Web模式 (Linux服务器/SSH环境)
- 自动启动本地Web服务器
- 现代化的响应式Web界面
- 支持拖拽上传和剪贴板粘贴
- 自动端口管理和进程清理
📝 更新日志
v2.1.0 (2025-05-30)
- 🌐 新增Web模式 - 支持Linux服务器环境
- 🔍 智能环境检测 - 自动选择GUI或Web界面
- 🔧 端口管理 - 自动寻找可用端口,清理旧进程
- 🖥️ 跨平台兼容 - 完美适配Windows和Linux环境
- 📱 响应式设计 - Web界面支持各种屏幕尺寸
v2.0.0 (2025-05-28)
- 🎨 全新现代化UI设计
- 📷 多图片同时提交支持
- 🖼️ 横向滚动图片预览
- 💫 彩色按钮和图标
- 🔧 优化用户体验
📄 许可证
MIT License - 详见 LICENSE 文件
🤝 贡献
欢迎提交Issue和Pull Request!
让AI与用户的交互更高效直观! 🎯
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_server_feedback-2.1.0.tar.gz.
File metadata
- Download URL: mcp_server_feedback-2.1.0.tar.gz
- Upload date:
- Size: 19.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0d864ab9ab31a7182ed4d9a4d47ae88c248bbe1fd0b12a477704f64cb276ef82
|
|
| MD5 |
d853b4fe966aa90da855b6ea1c859922
|
|
| BLAKE2b-256 |
fcda2fd27f45bbf6017073dad97d534d80d11a77a7c413b26f59ba6deb0d81d9
|
File details
Details for the file mcp_server_feedback-2.1.0-py3-none-any.whl.
File metadata
- Download URL: mcp_server_feedback-2.1.0-py3-none-any.whl
- Upload date:
- Size: 18.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc5685b48f16b4a6b16e10917265da7b6c238293e34db9fbd6d4dae9008627b8
|
|
| MD5 |
48e4f84ca11b9ba0e63cc121f2474f82
|
|
| BLAKE2b-256 |
de8a1fbe41ba66c4b311e4234a20b62546e4f2414f86fdb3a605834928b21637
|