SuperAPI AI 工具集

interactive-mcp

interactive-mcp 是一个用 Node.js/TypeScript 实现的 MCP(Model Context Protocol)服务器,用于在 LLM 与用户之间建立交互式沟通。它设计为在本地与 MCP 客户端(如 Claude Desktop、VS Code)一起运行,因为需要直接访问用户操作系统来显示通知和命令行提示。该服务器通过 MCP 暴露以下工具:request_user_input(向用户提问并返回答案,可显示预设选项)、message_complete_notification(发送简单的系统通知)、start_intensive_chat(启动持久命令行聊天会话)、ask_intensive_chat(在活跃的 intensive chat 会话中提问)、stop_intensive_chat(关闭活跃的 intensive chat 会话)。适用于需要 LLM 在本地机器上直接与用户交互的场景,例如交互式设置或配置流程、代码生成或修改过程中收集反馈、结对编程中澄清指令或确认操作,以及任何需要在 LLM 运行期间获取用户输入或确认的工作流。项目处于早期阶段。

访问官网

工具介绍

用途

interactive-mcp 是一个用 Node.js/TypeScript 实现的 MCP(Model Context Protocol)服务器,旨在促进 LLM 与用户之间的交互式沟通。该服务器设计为在本地与 MCP 客户端(例如 Claude Desktop、VS Code)一起运行,因为它需要直接访问用户的操作系统来显示通知和命令行提示。项目目前处于早期阶段。

主要能力

该服务器通过 Model Context Protocol(MCP)暴露以下工具:

  • request_user_input:向用户提问并返回其答案,可以显示预设选项。
  • message_complete_notification:发送简单的操作系统通知。
  • start_intensive_chat:启动一个持久的命令行聊天会话。
  • ask_intensive_chat:在活跃的 intensive chat 会话中提问。
  • stop_intensive_chat:关闭活跃的 intensive chat 会话。

使用方式

客户端配置

默认情况下,用户提示会在 30 秒后超时。可以通过在配置客户端时直接在 args 数组中添加命令行标志来自定义服务器选项,例如超时或禁用工具。请确保 npx 命令可用。

与 Claude Desktop / Cursor 一起使用:将最小配置添加到 claude_desktop_config.json(Claude Desktop)或 mcp.json(Cursor)中。支持指定版本,也支持自定义超时(例如 30 秒)。

与 VS Code 一起使用:将最小配置添加到用户设置(JSON)文件或 .vscode/mcp.json 中。在 macOS 上使用默认 Terminal.app 时,可考虑以下配置文件设置以获得更流畅的体验:在“Shell”标签页中,于“当 shell 退出时”(Terminal > Settings > Profiles > [你的配置文件] > Shell)选择“如果 shell 干净退出则关闭”或“关闭窗口”。这有助于在 MCP 服务器启动和停止时管理窗口。

开发设置

本节主要面向希望修改或贡献服务器的开发者。如果只是想将服务器与 MCP 客户端一起使用,请参阅上面的“客户端配置”部分。

  • Node.js:查看 package.json 了解版本兼容性。
  • pnpm:用于包管理。安装 Node.js 后,通过 npm install -g pnpm 安装。

安装(开发者):

克隆仓库:

git clone https://github.com/ttommyth/interactive-mcp.git cd interactive-mcp

安装依赖:

pnpm install

运行应用程序(开发者):

interactive-mcp 服务器接受以下命令行选项。这些选项通常应在 MCP 客户端的 JSON 设置中配置,直接添加到 args 数组(参见“客户端配置”示例)。

示例:在客户端配置的 args 数组中设置多个选项。

开发命令:

  • 构建:pnpm build
  • 代码检查:pnpm lint
  • 格式化:pnpm format

适用场景

该服务器适用于 LLM 需要直接在用户本地机器上与用户交互的场景,例如:

  • 交互式设置或配置流程。
  • 在代码生成或修改过程中收集反馈。
  • 在结对编程中澄清指令或确认操作。
  • 任何需要在 LLM 运行期间获取用户输入或确认的工作流。

交互指导原则

当与此 MCP 服务器交互时(例如作为 LLM 客户端),请遵循以下原则以确保清晰并减少意外更改:

  • 优先交互:频繁使用提供的 MCP 工具(request_user_input、start_intensive_chat 等)与用户互动。
  • 寻求澄清:如果需求、指令或上下文不清晰,始终在继续之前提出澄清问题。不要做假设。
  • 确认操作:在执行重大操作(如修改文件、运行复杂命令或做出架构决策)之前,与用户确认计划。
  • 提供选项:尽可能通过 MCP 工具向用户提供预设选项,以便快速决策。

可以像这样向 LLM 客户端提供这些指令。

限制

项目处于早期阶段。默认用户提示超时为 30 秒。其他限制暂未提供。

贡献与许可

欢迎贡献!请遵循标准开发实践。(更多细节可稍后添加。)

MIT(详见 LICENSE 文件——如适用,或直接指定许可证)。