prompt-gui-mcp
Enables AI coding agents to request user input through customizable desktop forms, returning structured data.
README
prompt-gui-mcp
prompt-gui-mcp lets AI coding agents ask for your input through beautiful, interactive GUI forms instead of plain text prompts.
Instead of forcing an agent to guess, stall, or ask you in chat, the agent can call an MCP tool that opens a macOS desktop prompt. You answer in the app, and the result goes back to the agent as structured data.
For example, send this prompt to your agent:
Use prompt-gui-mcp to show me a form with questions that will help you recommend a travel destination.
Ask about my preferences, travel season, budget, trip style, and any other details you need.
opens a desktop form like this:
<img src="docs/assets/prompt-form-travel-example.png" alt="Travel preference prompt form" width="320">
flowchart LR
Agent["AI coding agent"] -->|Calls prompt-form| MCP["prompt-gui-mcp"]
MCP -->|Opens GUI form| App["Desktop app"]
App -->|Shows prompt| User["You"]
User -->|Submits answers| App
App -->|Returns structured data| MCP
MCP -->|Tool result| Agent
What It Does
- Shows flexible forms generated from an MCP tool call.
- Agents can compose forms with elements such as text, textarea, radio, select, checkbox-list, markdown, and image fields.
- Returns the user's validated answers to the calling agent.
- Keeps the prompt in a small always-on-top desktop window.
- Includes a follow-up wait tool so agents can continue waiting when a prompt takes longer than their normal tool timeout.
The current MCP tools are:
| Tool | Purpose |
|---|---|
prompt-form |
Show a structured form and return submitted values plus optional feedback. |
wait-for-prompt |
Continue waiting for a pending prompt by UUID. |
Download
Only the macOS app is packaged right now.
- Open the GitHub Releases page.
- Download the latest macOS
.dmgor.zipasset. - Install and launch
prompt-gui-mcp. - Keep the app running while your coding agent uses the MCP server.
The mac app starts the local backend sidecar automatically. By default, the MCP endpoint is:
http://127.0.0.1:43118/mcp
Set Up Your Coding Agent
Configure any MCP client that supports Streamable HTTP to connect to the local server:
{
"mcpServers": {
"prompt-gui-mcp": {
"url": "http://127.0.0.1:43118/mcp"
}
}
}
Then restart the agent or reload its MCP servers. The desktop app must be running before the agent calls prompt-form.
Some agents use a TOML-style MCP config instead:
[mcp_servers.prompt-gui-mcp]
url = "http://127.0.0.1:43118/mcp"
After setup, ask the agent to use prompt-gui-mcp when it needs your input. For example:
Use prompt-gui-mcp to show me a form before choosing the deployment strategy. Ask for the target environment, risk tolerance, rollback preference, and approval notes.
Build And Run The Packaged App
Requirements:
- Node.js 22+
- pnpm 10+
- Rust toolchain
- Xcode Command Line Tools on macOS
Install dependencies:
pnpm install
Build the packaged desktop app:
pnpm --filter desktop tauri:build
Open the generated app bundle:
open apps/desktop/src-tauri/target/release/bundle/macos/prompt-gui-mcp.app
The .app, .dmg, and .zip outputs are written under:
apps/desktop/src-tauri/target/release/bundle/
Development Checks
pnpm --filter backend check
pnpm --filter desktop check
pnpm simulate
pnpm simulate starts the desktop app and sends a sample MCP tool call so you can test the full prompt flow.
Architecture
Coding agent -> MCP HTTP endpoint -> backend queue -> desktop app -> human
^ |
|--------------------|
apps/backendis the Node.js MCP server and local HTTP API.apps/desktopis the Svelte frontend and Tauri v2 macOS shell.- The backend listens on
127.0.0.1:43118unlessI_AM_MCP_SERVER_PORTis set. - The desktop app reads backend state over local HTTP/SSE and submits completed form results back to the backend.
Repository
apps/backend MCP server, task queue, local HTTP/SSE API
apps/desktop Svelte UI and Tauri desktop shell
docs Design notes, packaging notes, and README assets
Contributions are welcome. Keep changes focused, run the checks above, and open a pull request with a clear description.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.