An MCP server that enables AI agents to ask users clarifying questions via pop-up terminal windows.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
mcp-name: io.github.Jacob-J-Thomas/user-prompt
A Model Context Protocol (MCP) server that gives AI agents the ability to ask users clarifying questions mid-task via a pop-up terminal window. Built with .NET 8 and C#.
Long-running AI agents (like Claude Code, IDE copilots, or custom agentic workflows) often encounter situations where they need human input β ambiguous requirements, unexpected errors, or design decisions that could go multiple ways. Without a mechanism to ask, the agent either guesses (often incorrectly) or stops entirely and waits for the user to notice.
This MCP server exposes a single tool, user_prompt, that an AI agent can call at any point during execution. When invoked, a new terminal window opens on the user's machine displaying the agent's questions. The user types their answers and the responses are returned directly to the agent, allowing it to continue working with the additional context.

pwsh) must be installedNote: Pre-built releases have no other dependencies. The .NET Global Tool and Build from Source options require the .NET 8.0 SDK or later.
Pick one of the three install options below. Each option walks you through installation, client configuration, and updates end-to-end.
Self-contained executables β no .NET SDK required.
1. Download
Grab the zip for your platform from the latest release:
| Platform | Asset |
|---|---|
| Windows (x64) | UserPromptMcpServer-win-x64.zip |
| macOS (Intel) | UserPromptMcpServer-osx-x64.zip |
| macOS (Apple Silicon) | UserPromptMcpServer-osx-arm64.zip |
| Linux (x64) | UserPromptMcpServer-linux-x64.zip |
2. Extract
Unzip to a permanent location, for example:
C:\Tools\UserPromptMcpServer\~/tools/UserPromptMcpServer/3. Configure your MCP client
Claude Code (CLI):
Other clients β point the command at the executable (see Client Configuration Reference for full examples):
Updating: download the new release and replace the files in the same folder.
Requires the .NET 8.0 SDK or later. The tool is added to your PATH automatically.
1. Install
2. Configure your MCP client
Claude Code (CLI):
Other clients β the command name is user-prompt (see Client Configuration Reference for full examples):
Updating:
Requires the .NET 8.0 SDK or later.
Replace
win-x64with your platform's runtime identifier (e.g.osx-arm64,linux-x64).
Then configure your client the same way as Option A, pointing at the executable inside ./publish/.
This server uses the stdio transport β it does not listen on a port. The MCP client launches the server process and communicates with it over stdin/stdout. Replace the command/path below with the value from whichever install option you chose.
Add the following to your claude_desktop_config.json:
Config file location:
| Platform | Path |
|---|---|
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
Add the following to .cursor/mcp.json (project-level) or ~/.cursor/mcp.json (global):
Add the following to ~/.codex/config.toml (global) or .codex/config.toml (project-level):
Or via the CLI:
Any MCP client that supports the stdio transport can launch this server. Point it at the executable (or the user-prompt command name if using the .NET Global Tool).
Once configured, the user_prompt tool is available to the AI agent automatically. The agent decides when to invoke it based on its own judgment β no manual triggering is required.
Tool name: user_prompt
| Parameter | Type | Required | Description |
|---|---|---|---|
reason | string | Yes | A clear explanation of why the agent needs user input. Displayed prominently in the terminal window. |
questions | string[] | Yes | A list of specific questions. Displayed as a numbered list; the user answers each in sequence. |
When the tool is invoked, a new PowerShell window opens displaying:
1>, 2>, etc.) β one Enter per answerIf the user does not respond within 10 minutes, or closes the window without answering, the agent receives a descriptive fallback message and can decide how to proceed.
tools/call JSON-RPC request over stdinAll temporary files are created under %TEMP%/UserPromptMcpServer/<session-guid>/ and are cleaned up after each invocation regardless of outcome.
Contributions are welcome! To make sure your change gets merged, please open an issue first to discuss the proposed change and get approval before starting work.
git checkout -b feature/my-feature)dotnet build)developThis project is licensed under the Apache License 2.0. See LICENSE for details.
Jacob Thomas β @Jacob-J-Thomas
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/user-prompt)<a href="https://allmcps.com/mcp/user-prompt"><img src="https://allmcps.com/api/badge/user-prompt?style=directory" alt="User Prompt on AllMCPs" /></a>