interactive-mcp
@ttommyth
Vibe coding should have human in the loop! interactive-mcp: Local, cross-platform MCP server for interact with your AI Agent
Overview
What is interactive-mcp?
interactive-mcp is a Node.js/TypeScript MCP server that enables LLMs to interact directly with users on their local machine through OS notifications and command-line prompts. It is designed for developers using MCP clients like Claude Desktop, Cursor, or VS Code who need the LLM to ask questions, confirm actions, or gather user feedback during execution.
How to use interactive-mcp?
Add a minimal configuration to your MCP client’s JSON settings (Claude Desktop, Cursor, or VS Code) using npx -y interactive-mcp. Customize the default 30-second timeout or disable specific tools by appending command-line flags such as -t 30 or --disable-tools message_complete_notification,intensive_chat to the args array.
Key features of interactive-mcp
- Exposes five tools for user interaction
- Request user input with predefined options
- Send OS completion notifications
- Start, ask in, and stop persistent chat sessions
- Customizable timeout per prompt
Use cases of interactive-mcp
- Interactive setup or configuration processes guided by an LLM
- Gathering user feedback during code generation or modification
- Clarifying instructions or confirming actions in pair programming
- Any workflow requiring user input or confirmation during LLM operation
FAQ from interactive-mcp
What runtime does interactive-mcp require?
Node.js is required. For development, pnpm is used for package management.
What platforms are supported?
Windows, macOS, and Linux are all supported.
Does interactive-mcp run remotely or locally?
It runs locally alongside the MCP client (e.g., Claude Desktop, VS Code) because it needs direct access to the user’s operating system for notifications and command-line prompts.
What tools does interactive-mcp provide?
Five tools: request_user_input (asks a question, can show options), message_complete_notification (sends an OS notification), start_intensive_chat (starts a persistent chat session), ask_intensive_chat (asks a question within that session), and stop_intensive_chat (closes the session).
Can I customize the prompt timeout?
Yes. Use the -t or --timeout flag followed by the number of seconds (default is 30 seconds).