Interactive Feedback MCP

Um servidor MCP para ferramentas de desenvolvimento assistidas por IA como Cursor e Claude, suportando fluxos de trabalho de feedback interativo com IA.

Documentação

🗣️ Interactive Feedback MCP - Edição Profissional

Python PySide6 FastMCP License MCP

Sistema inteligente de feedback interativo projetado para desenvolvimento assistido por IA

Interactive Feedback MCP é um MCP Server de alto desempenho, projetado para ferramentas de desenvolvimento de IA como Cursor, Claude Desktop e Windsurf. Utiliza um layout moderno de três colunas com efeito de vidro fosco na UI, suportando feedback interativo em tempo real, processamento multimídia e análise inteligente de projetos.

✨ Recursos Principais

🎯 Sistema de Interação Inteligente

  • 🔄 Diálogo bidirecional em tempo real - O assistente de IA pode pausar e solicitar esclarecimentos ao usuário, evitando desenvolvimento baseado em suposições
  • 🎯 Opções predefinidas - Seleção rápida de operações comuns para aumentar a eficiência do desenvolvimento
  • 📊 Análise inteligente - Analisa automaticamente a intenção do usuário, nível de urgência e contexto do projeto
  • ⚡ Otimização de desempenho - Tempo de inicialização <2s, resposta da UI <100ms, uso de memória <100MB

🎨 Interface de UI Moderna

  • 🖼️ Layout de três colunas - Conteúdo da mensagem (40%) + Recomendações inteligentes (40%) + Informações do projeto (20%)
  • ✨ Efeito vidro fosco - Tema escuro, modo forçado, não afetado pelo tema do sistema
  • 🌏 Otimizado para chinês - Suporte perfeito para fontes chinesas e codificação UTF-8
  • 📱 Design responsivo - Adapta-se a diferentes tamanhos de tela e configurações de DPI

🔧 Arquitetura Técnica

  • 🏗️ Protocolo MCP - Chamadas de ferramentas padronizadas baseadas no framework FastMCP
  • 🎯 UI PySide6 - Framework de interface Qt moderno
  • ⚡ Monitoramento de desempenho - Sistema integrado de rastreamento e otimização de desempenho
  • ⚙️ Gerenciamento de configuração - Sistema de configuração unificado com suporte a troca de temas e personalização

💡 Problemas Resolvidos

Pontos problemáticos das ferramentas de desenvolvimento de IA

Em ambientes como Cursor:

  • Cada prompt consome créditos de API, com custos elevados
  • Desenvolvimento baseado em suposições gera código com erros
  • Interação unidirecional, sem possibilidade de esclarecer requisitos em tempo hábil
  • Baixa eficiência de iteração e longo tempo de depuração

Nossa solução

Interactive Feedback MCP através do mecanismo de pausa em chamadas de ferramentas:

  • 🔄 A IA pode realizar múltiplas interações em uma única solicitação
  • 💰 Chamadas de ferramentas não são contabilizadas no uso da API
  • ✅ Confirmação antes da execução, reduzindo erros
  • 🚀 Eficiência aumentada em mais de 5 vezes

🚀 Início Rápido

Requisitos do sistema

  • Python: 3.10+
  • Sistema: Windows 10+, macOS 12+, Ubuntu 20.04+
  • Memória: Recomendado 4GB+
  • Armazenamento: 500MB de espaço disponível

Etapas de instalação

1. Instalar o gerenciador de pacotes uv

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows (PowerShell)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

# 或者使用 pip
pip install uv

2. Clonar o projeto

git clone https://github.com/your-username/interactive-feedback-mcp.git
cd interactive-feedback-mcp

3. Verificar a instalação

# 测试MCP服务器
uv run server.py

# 测试UI界面
uv run enhanced_feedback_ui.py --prompt "测试消息" --output-file test.json

⚙️ Guia de Configuração

Configuração do cliente MCP

Configuração do Cursor

Crie mcp.json na raiz do projeto ou na configuração global:

{
  "mcpServers": {
    "interactive-feedback": {
      "command": "uv",
      "args": [
        "--directory", 
        "/absolute/path/to/interactive-feedback-mcp", 
        "run", 
        "server.py"
      ],
      "timeout": 600,
      "autoApprove": ["interactive_feedback"]
    }
  }
}

Configuração do Claude Desktop

Edite claude_desktop_config.json:

{
  "mcpServers": {
    "interactive-feedback": {
      "command": "uv",
      "args": [
        "--directory", 
        "/absolute/path/to/interactive-feedback-mcp", 
        "run", 
        "server.py"
      ],
      "timeout": 600
    }
  }
}

⚠️ Aviso importante:

  • Use caminhos absolutos para garantir que o projeto seja encontrado corretamente
  • Usuários de Windows devem usar barras normais / ou barras invertidas duplas \\
  • Reinicie o cliente de IA após a configuração

Configuração das regras do assistente de IA

Adicione em Cursor Settings > Rules for AI:

# Interactive Feedback MCP 使用规则

## 强制交互协议
- 收到用户消息后,必须先调用 `interactive_feedback` 工具进行智能分析
- 提供预定义选项供用户快速选择
- 执行操作前必须获得用户确认
- 完成任务后询问是否需要进一步操作

## 使用场景
- 需求不明确时:询问澄清
- 有多种实现方案时:提供选项
- 重要操作前:请求确认
- 任务完成后:询问后续需求

## 格式示例

Use a ferramenta interactive_feedback para perguntar ao usuário sobre necessidades específicas

性能配置

创建 ~/.interactive_feedback_mcp/config.json:

{
  "ui": {
    "theme": "enhanced_glassmorphism",
    "language": "zh_CN",
    "font_family": "PingFang SC",
    "font_size": 14,
    "window_width": 1400,
    "window_height": 1200,
    "panel_ratios": [40, 40, 20]
  },
  "performance": {
    "max_startup_time": 2.0,
    "max_response_time": 100.0,
    "max_memory_usage": 100.0,
    "enable_monitoring": true
  }
}

📄 Sistema de Logs

🔍 Funcionalidades de log

Este projeto agora inclui um sistema completo de logs, com suporte para:

  • 📊 Registro de logs em múltiplos níveis (DEBUG, INFO, WARNING, ERROR, CRITICAL)
  • 🔄 Rotação de arquivos e controle de tamanho (rotação padrão de 10MB, mantendo 5 backups)
  • ⚡ Monitoramento de desempenho (registra o tempo de operações, identifica operações lentas)
  • 📋 Registro de contexto do projeto (registra automaticamente informações do projeto e status do Git)
  • 🐛 Rastreamento detalhado de erros (inclui informações de stack trace e contexto)
  • 👁️ Monitoramento de logs em tempo real

📁 Localização dos arquivos de log

logs/
├── interactive_feedback_mcp.log    # 主日志文件
├── errors.log                      # 错误日志
├── performance.log                  # 性能日志  
└── project_context.log             # 项目上下文日志

🛠️ Ferramentas de gerenciamento de logs

Use o script manage_logs.py para gerenciar logs:

# 查看日志摘要
python manage_logs.py summary

# 查看最近50行主日志
python manage_logs.py view --type main --lines 50

# 查看错误日志
python manage_logs.py view --type error

# 搜索日志内容
python manage_logs.py search "错误关键词" --type all

# 分析错误统计
python manage_logs.py analyze

# 实时监控日志
python manage_logs.py monitor

# 清理30天前的日志
python manage_logs.py cleanup --days 30

# 导出日志文件
python manage_logs.py export --output logs_backup.zip

# 配置日志级别
python manage_logs.py config --level DEBUG

⚙️ Configuração de logs

O arquivo de configuração de logs logging_config.json permite personalizar:

  • 📝 Nível e formato dos logs
  • 📦 Tamanho do arquivo e configurações de rotação
  • 🖥️ Controle de saída no console
  • ⏱️ Limites de monitoramento de desempenho
  • 🧹 Política de limpeza automática

🚨 Solução de problemas

Use o sistema de logs para diagnosticar problemas:

  1. Visualizar logs de erro

    python manage_logs.py view --type error
    
  2. Analisar problemas de desempenho

    python manage_logs.py view --type performance
    
  3. Verificar contexto do projeto

    python manage_logs.py view --type context
    
  4. Pesquisar erros específicos

    python manage_logs.py search "UI启动失败" --type all
    

📖 Guia de Uso

Uso básico

1. Feedback interativo inteligente

请使用 interactive_feedback 询问我想要什么类型的API设计

2. Análise de projeto e sugestões

分析当前项目状态并提供改进建议

3. Revisão e otimização de código

请审查这段代码并提供优化建议:[代码内容]

Recursos avançados

1. Sistema de referência de arquivos

请分析 @server.py 文件的架构设计

2. Operações em lote

请批量处理以下文件的格式化:@ui/components/*.py

3. Monitoramento de desempenho

检查当前应用的性能指标并提供优化建议

Descrição da interface de UI

Layout de três colunas

  • Coluna esquerda (40%): Conteúdo da mensagem e entrada do usuário
  • Coluna central (40%): Recomendações e opções inteligentes da IA
  • Coluna direita (20%): Informações do projeto e status do Git

Atalhos de teclado

  • Ctrl+Enter: Enviar feedback
  • Escape: Cancelar operação
  • Ctrl+1-5: Seleção rápida de opções predefinidas
  • Ctrl+/: Exibir informações de ajuda

🛠️ Guia de Desenvolvimento

Estrutura do projeto

interactive-feedback-mcp/
├── server.py                          # MCP服务器入口
├── enhanced_feedback_ui.py            # UI主程序
├── rules.md                          # 开发规范文档
├── pyproject.toml                    # 项目配置
├── ui/                               # UI组件模块
│   ├── components/                   # 核心组件
│   │   ├── three_column_layout.py   # 三栏布局
│   │   ├── enhanced_markdown_renderer.py  # 渲染引擎
│   │   └── main_window.py           # 主窗口
│   ├── styles/                      # 样式主题
│   │   └── enhanced_glassmorphism.py # 毛玻璃主题
│   ├── utils/                       # 工具模块
│   │   ├── performance.py           # 性能监控
│   │   └── config_manager.py        # 配置管理
│   └── widgets/                     # 自定义控件
└── tests/                           # 测试文件

Configuração do ambiente de desenvolvimento

# 安装开发依赖
uv sync --dev

# 运行测试
uv run python -m pytest tests/

# 代码格式化
uv run python -m black .

# 类型检查
uv run python -m mypy .

Requisitos de desempenho

  • Tempo de inicialização: < 2 segundos
  • Resposta da UI: < 100 milissegundos
  • Uso de memória: < 100MB (em estado ocioso)
  • Uso de CPU: < 5% (em estado ocioso)

🔧 Solução de Problemas

Problemas comuns

1. Caracteres chineses exibidos incorretamente

# 检查编码设置
python -c "import locale; print(locale.getpreferredencoding())"

# 强制UTF-8
export PYTHONIOENCODING=utf-8

2. Anomalias na interface de UI

# 重置配置
rm ~/.interactive_feedback_mcp/config.json

# 重新启动应用
uv run enhanced_feedback_ui.py --prompt "测试" --output-file test.json

3. Problemas de desempenho

# 检查性能指标
uv run python -c "
from ui.utils.performance import global_performance_monitor
monitor = global_performance_monitor
monitor.start_monitoring()
print(monitor.get_current_metrics())
"

4. Falha na conexão MCP

  • Verifique se a configuração do caminho está correta
  • Confirme se o comando uv está disponível
  • Verifique as mensagens de erro no log do cliente
  • Valide se o server.py pode ser executado normalmente

📈 Roteiro

Versão atual (v2.0)

  • ✅ UI de três colunas
  • ✅ Tema vidro fosco
  • ✅ Monitoramento de desempenho
  • ✅ Gerenciamento de configuração

Próxima versão (v2.1)

  • 🔄 Análise de conteúdo de vídeo
  • 🔄 Reconhecimento OCR de imagens
  • 🔄 Suporte a múltiplos idiomas
  • 🔄 Sistema de plugins

Planos futuros (v3.0)

  • 🔮 Integração de agentes de IA
  • 🔮 Sincronização em nuvem
  • 🔮 Colaboração em equipe
  • 🔮 Extensão de API

🤝 Guia de Contribuição

Fluxo de desenvolvimento

  1. Faça um fork do projeto
  2. Crie um branch de funcionalidade: git checkout -b feature/new-feature
  3. Siga as diretrizes de desenvolvimento
  4. Escreva casos de teste
  5. Envie um PR

Padrões de código

  • Siga as regras de desenvolvimento em rules.md
  • Use Black para formatação de código
  • Mantenha a cobertura de testes > 80%
  • Escreva mensagens de commit claras

📄 Licença

Este projeto é distribuído sob a licença de código aberto MIT License.

🙏 Agradecimentos

  • FastMCP - Suporte ao framework MCP
  • PySide6 - Framework de UI
  • Cursor - Ferramenta de desenvolvimento de IA
  • Claude - Assistente de IA

📞 Contato

⭐ Se este projeto foi útil para você, dê-nos uma estrela!