项目简介

MCP 反馈收集器是一个基于 Model Context Protocol (MCP) 实现的应用后端工具。其主要目的是在LLM(大型语言模型)与用户交互过程中,提供一个标准化的方式来收集用户的文字和图片反馈。通过让LLM调用这个工具,可以在一个连续的对话或任务执行流程中,随时获取用户输入,从而避免LLM在完成单步任务后立即中止,提高LLM在一个请求周期内的工具使用效率。

主要功能点

  • 多模态反馈支持: 支持用户输入文字反馈,并可以方便地添加图片(从文件选择或剪贴板粘贴)。
  • 可视化交互界面: 提供一个用户友好的图形界面对话框,用户可以在其中输入反馈并管理图片。
  • 深色主题设计: 界面采用与常见代码编辑器(如 Cursor)一致的深色主题风格,提升用户体验。
  • 快捷键操作: 支持使用键盘快捷键快速提交或取消反馈。
  • 国际化支持: 支持中文和英文界面切换。

安装步骤

安装过程假设您已安装 Python 3.8+ 和 conda(或其他虚拟环境工具)。

  1. 克隆代码仓库: 使用 'git clone' 命令将项目代码下载到您的本地计算机。
  2. 创建并激活虚拟环境: 为了避免依赖冲突,建议为本项目创建一个独立的 Python 虚拟环境,并将其激活。例如,使用 conda 创建一个名为 'feedback_collector' 的环境,并指定 Python 版本。
  3. 安装项目依赖: 进入项目根目录,使用 'pip' 命令根据 'requirements.txt' 文件安装所有必要的库。

服务器配置

本项目作为 MCP 服务器运行,需要由支持 MCP 协议的 LLM 客户端(如 Cursor)进行配置。配置信息通常以 JSON 格式存储在客户端的配置文件中。

您需要在客户端的 MCP 服务器配置部分添加一个新的条目,指向这个反馈收集器。关键配置信息包括:

  • 服务器名称: 一个用于标识此 MCP 服务器的唯一名称(例如: 'feedback-collector')。
  • 启动命令 (command): 客户端用于启动此 MCP 服务器进程的命令。通常是您的 Python 解释器路径。
  • 启动参数 (args): 传递给启动命令的参数。对于本项目,参数应指向服务器的启动模块,例如 '-m src.server'。
  • 工作目录 (cwd): MCP 服务器进程的当前工作目录,应设置为本项目的根目录路径。
  • 环境变量 (env): 可以设置一些环境变量来定制服务器行为,例如:
    • 'MCP_DIALOG_TIMEOUT': 设置反馈对话框的超时时间(秒)。
    • 'LANGUAGE': 设置界面语言('CN' 或 'EN')。

配置示例(概念性说明,实际配置格式请参考您的客户端文档):

{
  "mcpServers": {
    "您的服务器名称": {
      "command": "您虚拟环境中的python解释器路径",
      "args": ["-m", "src.server"],
      "cwd": "项目的根目录绝对路径",
      "env": {
        "MCP_DIALOG_TIMEOUT": "600",
        "LANGUAGE": "EN"
      }
    }
  }
}

配置完成后,客户端会根据这些信息在需要时启动并连接到这个反馈收集器服务器。

基本使用方法

  1. 完成上述的安装和 MCP 服务器配置。
  2. 在您的 LLM 客户端中,还需要配置相应的项目规则。这些规则指导 LLM 在完成特定任务后调用 'collect_feedback' 这个 MCP 工具。例如,可以配置规则让 LLM 在每次任务完成后调用该工具收集反馈。
  3. 当 LLM 客户端根据规则调用 'feedback-collector' 服务器上的 'collect_feedback' 工具时,一个反馈收集对话框会弹出。
  4. 在弹出的对话框中,您可以输入文字反馈,或通过“选择图片”/“粘贴图片”按钮添加图片。
  5. 点击“提交反馈”按钮(或使用快捷键 '⌘+Enter'/'Ctrl+Enter')发送反馈,或点击“取消”按钮(或使用 'ESC')取消。
  6. LLM 客户端将接收您提交的反馈数据(文字和图片),并可以根据这些反馈继续后续的交互或任务。

信息

分类

AI与计算