README.md
An MCP App that provides an interactive UI for asking questions with various input types.
Ask Question MCP App
An MCP App that provides an interactive UI for asking questions with various input types.
Features
- Text Input: Free-form text area for open-ended questions
- Single Select: Choose one option from a list
- Multi-Select: Choose multiple options with checkboxes
- Confirm: Simple Yes/No confirmation dialog
Installation
npm install
npm run build
Usage
The MCP server exposes a single tool ask_question with the following parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
question |
string | Yes | The question to display |
inputType |
enum | Yes | text, select, multiselect, or confirm |
options |
array | No | Options for select/multiselect (each with value, label, optional description) |
placeholder |
string | No | Placeholder text for text input |
Examples
Text Input:
{
"question": "What feature would you like to implement?",
"inputType": "text",
"placeholder": "Describe the feature..."
}
Single Select:
{
"question": "Which framework do you prefer?",
"inputType": "select",
"options": [
{
"value": "react",
"label": "React",
"description": "A JavaScript library for building user interfaces"
},
{
"value": "vue",
"label": "Vue",
"description": "The progressive JavaScript framework"
},
{
"value": "svelte",
"label": "Svelte",
"description": "Cybernetically enhanced web apps"
}
]
}
Multi-Select:
{
"question": "Select the features to include:",
"inputType": "multiselect",
"options": [
{ "value": "auth", "label": "Authentication" },
{ "value": "db", "label": "Database" },
{ "value": "api", "label": "REST API" },
{ "value": "tests", "label": "Unit Tests" }
]
}
Confirmation:
{
"question": "Do you want to proceed with the deployment?",
"inputType": "confirm"
}
VS Code Configuration
Add to your .vscode/mcp.json:
{
"servers": {
"ask-question-mcp": {
"type": "stdio",
"command": "node",
"args": ["/path/to/ask-question-mcp/dist/index.js"]
}
}
}
Development
npm run watch
License
MIT
Tools (1)
ask_questionDisplays an interactive UI to ask the user a question supporting text, select, multiselect, or confirm input types.Configuration
claude_desktop_config.json
{
"servers": {
"ask-question-mcp": {
"type": "stdio",
"command": "node",
"args": ["/path/to/ask-question-mcp/dist/index.js"]
}
}
}Try it
→Ask the user 'What feature would you like to implement?' using text input with placeholder 'Describe the feature...'
→Present a single select question 'Which framework do you prefer?' with options React, Vue, Svelte.
→Ask 'Select the features to include:' as multiselect with options auth, db, api, tests.
→Confirm with the user: 'Do you want to proceed with the deployment?' using confirm input.