# QuestionPro MCP

> QuestionPro lets your AI agent analyze survey responses, manage questionnaires, and extract real insights instantly. Your agent can filter campaigns by folder, compile live statistics, pull granular participant data, and maintain contact lists—all through natural conversation. It handles the full lifecycle of feedback collection.

## Overview
- **Category:** data-analytics
- **Price:** Free
- **Tags:** market-research, customer-feedback, employee-engagement, survey-data, data-collection

## Description

You're running a campaign, and you need to know what people think—fast. This agent connects straight into QuestionPro so your AI client can handle all the survey analytics, questionnaire management, and data extraction without you ever having to write a nasty API call. You simply talk to it, and it does the heavy lifting.

First things first: you'll wanna run `check_questionpro_status` immediately. That confirms your connection is working right, so you don't waste time debugging something simple. 

### Building and Structuring Your Surveys

You need a new survey? You can kick off a whole structure using `create_survey`. Before that, or while you’re organizing things, you might want to check what questions are available in the system's bank by calling `list_questions`. If you find a specific question ID, `get_question` pulls all its details for you. You can also list every single survey already created with `list_surveys`, or get basic metadata and configuration info on a single one using `get_survey`. 

Organization is key here. To keep your work tidy, you'll first retrieve the available organizational folders using `list_folders`. Then, when you want to focus only on projects within that folder, `list_surveys_by_folder` filters down exactly what you need. You can also list all user accounts associated with QuestionPro by running `list_users`.

### Pulling Data and Analyzing Performance

This is where the magic happens. To get a quick read on how well an existing survey's performing, you call `get_survey_stats`. That gives you summary statistics right away, like completion rates for the whole group. But sometimes you need to dig deep. If you want all the data points submitted by one specific person, `get_response` pulls that detailed record for you. Need a list of every single submission across multiple surveys or folders? You just use `list_responses`. 

For outreach purposes, you can keep track of your targets by calling `list_email_lists`, which shows all the mailing lists maintained in the account.

### Workflow Management

Your agent handles everything from building out a survey to pulling granular data points. You use these tools to list surveys (`list_surveys`) and filter them down by folder ID using `list_surveys_by_folder` when you're ready to analyze specific campaigns.

## Tools

### check_questionpro_status
Verifies that your connection to QuestionPro is working correctly.

### create_survey
Builds a new survey structure within the platform.

### get_question
Retrieves specific details about an individual question in the questionnaire.

### get_response
Pulls all data points submitted by one participant for a given survey.

### get_survey_stats
Calculates and returns summary statistics, including completion rates, for an entire survey.

### get_survey
Gets basic metadata and configuration details for a specific survey.

### list_surveys_by_folder
Filters and lists only the surveys contained within a specific folder ID.

### list_email_lists
Lists all available email contact lists maintained in the account.

### list_folders
Retrieves a list of organizational folders used to group surveys and campaigns.

### list_questions
Lists all questions that exist in the system's question bank.

### list_responses
Retrieves a list of submission records across multiple surveys or folders.

### list_surveys
Lists all surveys currently created in your QuestionPro account.

### list_users
Retrieves a list of user accounts associated with the QuestionPro system.

## Prompt Examples

**Prompt:** 
```
Show response rate and completion stats for our customer satisfaction survey
```

**Response:** 
```
The Customer Satisfaction Survey has a 65% response rate and an 82% completion rate so far. Would you like to see a breakdown by demographic?
```

**Prompt:** 
```
Show me all active surveys with their response rates and completion percentages.
```

**Response:** 
```
9 active surveys. "Customer Experience 2025" leads with 3,421 responses (78% completion rate). "Employee Pulse Check" has 234 of 300 expected responses (78%). "Product Feature Priority" collected 1,890 responses with 82% completion. "Market Research Q2" at 567 responses but only 54% completion, suggesting friction in the form. "NPS Quarterly" scored 71 with 2,100 respondents. Total responses this quarter: 12,450. 3 surveys have response rates below 60%.
```

**Prompt:** 
```
Export the detailed analytics report for the Customer Experience 2025 survey.
```

**Response:** 
```
Analytics report generated for "Customer Experience 2025". Total responses: 3,421. Overall satisfaction: 4.3/5. Key findings: Product quality rated highest (4.6/5), pricing perceived as competitive by 72% of respondents, support response time is the top improvement area (mentioned 890 times). Demographics: 55% enterprise, 30% mid-market, 15% SMB. Trends vs last quarter: satisfaction up 0.3 points, NPS improved from 67 to 72. Report exported in PDF and Excel formats.
```

## Capabilities

### Analyze Survey Performance
The agent pulls real-time statistics and completion rates from an existing survey using `get_survey_stats`.

### Retrieve Specific Answers
You can ask the agent for detailed data on a single participant's submission by calling `get_response`.

### Manage Survey Assets
The agent helps you organize your content, allowing you to list surveys (`list_surveys`) or create entirely new ones using `create_survey`.

### Organize Feedback by Folder
Your agent filters and lists campaigns based on defined folders, making it easy to isolate specific projects with `list_folders`.

### Handle Contact Lists
You can list and manage outreach targets using tools like `list_email_lists`, keeping your marketing efforts contained.

## Use Cases

### Assessing Quarterly NPS Trends
The PM needs to know if the latest product update improved satisfaction. They prompt their agent: 'What's the overall satisfaction score for the last quarter?' The agent uses `get_survey_stats` on the relevant survey, returning the calculated score and completion rate in one go. The PM gets a number, not a report.

### Auditing User Access
The ops engineer suspects unauthorized access to sensitive employee surveys. They ask their agent to 'List all users who have access.' The agent runs `list_users` and provides the full roster, allowing the engineer to immediately check permissions.

### Cross-referencing Feedback Segments
A researcher wants to compare results from two different market segments (Enterprise vs. SMB). They ask their agent to 'Compare survey data from the Enterprise folder versus the SMB folder.' The agent runs `list_surveys_by_folder` for both, then compiles and compares the stats using multiple calls to `get_survey_stats`.

### Debugging a Broken Survey
A user reports that one key question isn't showing up. They ask their agent: 'What are the details for the 'Subscription Model' question?' The agent runs `get_question`, instantly validating if the question exists, what its type is, and confirming it’s active.

## Benefits

- See real-time performance metrics immediately. Instead of exporting a CSV and running pivot tables, calling `get_survey_stats` gives you the current completion rate in seconds. This saves hours of manual spreadsheet work.
- Pinpoint exact feedback sources using folder filtering. If your Q2 launch survey is mixed up with Q1 data, use `list_surveys_by_folder` to isolate the right dataset instantly. No more searching through irrelevant campaigns.
- Get granular insights on single submissions. Need to know why one user rated support a 2/5? Use `get_response` to pull that specific record and understand the context without wading through thousands of entries.
- Manage your entire campaign pipeline conversationally. Your agent can list all available surveys (`list_surveys`) and then check which ones belong in 'HR' using `list_folders`, keeping you organized automatically.
- Target outreach precisely. Don't send a generic email blast. Use `list_email_lists` to confirm your audience segments before running any campaign, ensuring maximum relevance.

## How It Works

The bottom line is your agent acts as a single point of contact for all survey operations, turning complex API interactions into conversational prompts.

1. First, you connect the QuestionPro API key to Vinkius. This gives your agent permission to access and manipulate survey data.
2. Next, you prompt your agent with a task—for example, 'What is the completion rate for our Q3 market research?'
3. The agent recognizes the intent, calls `get_survey_stats` (or another relevant tool), processes the returned JSON data, and spits out the answer in plain English.

## Frequently Asked Questions

**How do I see if a survey is ready for analysis with QuestionPro? (using list_surveys)**
You can use `list_surveys` to see all surveys. If you're unsure which one is the right one, always follow up by using `get_survey` on its ID to confirm it’s active and configured correctly.

**Can I pull detailed answers from a specific person using QuestionPro? (using get_response)**
Yes. You must use the participant's unique ID with `get_response`. This tool retrieves every single data point that individual submitted for that survey.

**What if I want to analyze only Q2 surveys using QuestionPro? (using list_surveys_by_folder)**
You need to first know the folder ID. Use `list_folders` to find the 'Q2' folder, and then use that ID with `list_surveys_by_folder`. This filters out everything else.

**Does QuestionPro help me organize my contact lists? (using list_email_lists)**
It does. You can run `list_email_lists` to see all your available segments and confirm which group you're supposed to be targeting for outreach.

**What does the `check_questionpro_status` tool verify about my account?**
It confirms your connection health instantly. Running this check validates that your API key is active and that data communication with QuestionPro is fully operational.

**How do I use the `list_responses` tool to pull all submitted survey answers?**
This tool retrieves a paginated list of every submitted record. You can filter by specific date ranges or campaign IDs within the call parameters, handling thousands of responses efficiently.

**Using `list_questions`, what structure details can my AI agent access?**
The tool provides a full catalog of all question IDs and their corresponding text strings for any survey. This lets your agent reference specific questions programmatically without needing to know their unique identifiers.

**If I need to manage permissions, what does the `list_users` tool show me?**
It provides a roster of every user linked to your QuestionPro account. You can check usernames, assigned roles, and last login dates directly through this function.

**Can I view response details?**
Yes, access individual survey responses with complete answer data and timestamps, or list all responses for analysis.

**Can I export data from folders?**
Yes, you can filter and retrieve all surveys or specific responses contained within a specific folder.

**How to handle API Limits?**
The API includes rate limits depending on your plan. The MCP handles basic pagination efficiently to avoid exceeding them.