
Company News
AWS Security Hub Adds Socket for Supply Chain Security
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.
An MCP server that enables AI agents to ask users clarifying questions via pop-up terminal 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):
claude mcp add user-prompt -- "C:\Tools\UserPromptMcpServer\UserPromptMcpServer.exe"
Other clients — point the command at the executable (see Client Configuration Reference for full examples):
{
"command": "C:\\Tools\\UserPromptMcpServer\\UserPromptMcpServer.exe"
}
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
dotnet tool install -g UserPrompt
2. Configure your MCP client
Claude Code (CLI):
claude mcp add user-prompt -- user-prompt
Other clients — the command name is user-prompt (see Client Configuration Reference for full examples):
{
"command": "user-prompt"
}
Updating:
dotnet tool update -g UserPrompt
Requires the .NET 8.0 SDK or later.
git clone https://github.com/Jacob-J-Thomas/user-context-retrieval-mcp-server.git
cd user-context-retrieval-mcp-server
dotnet publish UserPromptMcpServer -c Release -r win-x64 -o ./publish
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:
{
"mcpServers": {
"user-prompt": {
"command": "/path/to/UserPromptMcpServer.exe"
}
}
}
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):
{
"mcpServers": {
"user-prompt": {
"command": "/path/to/UserPromptMcpServer.exe"
}
}
}
Add the following to ~/.codex/config.toml (global) or .codex/config.toml (project-level):
[mcp_servers.user-prompt]
command = "/path/to/UserPromptMcpServer.exe"
Or via the CLI:
codex mcp add user-prompt -- /path/to/UserPromptMcpServer.exe
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. |
{
"name": "user_prompt",
"arguments": {
"reason": "The project has no database configuration and I need to set one up.",
"questions": [
"Which database engine should I use (PostgreSQL, SQLite, SQL Server)?",
"Should I include Entity Framework Core as the ORM?"
]
}
}
User responded to 2 question(s):
1. Q: Which database engine should I use (PostgreSQL, SQLite, SQL Server)?
A: PostgreSQL
2. Q: Should I include Entity Framework Core as the ORM?
A: Yes, use EF Core with code-first migrations
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.
UserPromptMcpServer/
├── UserPromptMcpServer.csproj # Project file (.NET 8)
├── Program.cs # MCP server entry point (stdio transport)
└── Tools/
└── UserPromptTool.cs # Tool implementation
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)developgit clone https://github.com/Jacob-J-Thomas/user-context-retrieval-mcp-server.git
cd user-context-retrieval-mcp-server
dotnet restore UserPromptMcpServer/UserPromptMcpServer.csproj
dotnet build UserPromptMcpServer/UserPromptMcpServer.csproj
This project is licensed under the Apache License 2.0. See LICENSE for details.
Jacob Thomas — @Jacob-J-Thomas
FAQs
An MCP server that enables AI agents to ask users clarifying questions via pop-up terminal windows.
We found that UserPrompt demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.

Research
/Security News
Popular npm packages keyv and cacheable compromised.

Security News
A misconfiguration gave three Anthropic models internet access, and one, believing it was in a simulation, shipped a credential-stealing package to PyPI.