# 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
```bash
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:**
```json
{
"question": "What feature would you like to implement?",
"inputType": "text",
"placeholder": "Describe the feature..."
}
```
**Single Select:**
```json
{
"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:**
```json
{
"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:**
```json
{
"question": "Do you want to proceed with the deployment?",
"inputType": "confirm"
}
```
## VS Code Configuration
Add to your `.vscode/mcp.json`:
```json
{
"servers": {
"ask-question-mcp": {
"type": "stdio",
"command": "node",
"args": ["/path/to/ask-question-mcp/dist/index.js"]
}
}
}
```
## Development
```bash
npm run watch
```
## License
MIT