# Typeform MCP

> Typeform MCP Server connects your AI client directly to Typeform data. You can fetch raw submissions, inspect form layouts for structural details, or pull completion insights without needing the heavy web panel. This lets you process survey responses and manage forms entirely within your chat context.

## Overview
- **Category:** marketing-automation
- **Price:** Free
- **Tags:** form-builder, survey-management, response-extraction, data-parsing, customer-feedback

## Description

**Finding Your Way Around Typeform Data**

Your AI client hooks up straight to your Typeform account, bypassing the bulky web panels you usually gotta mess with. You don't need to click through dashboards or download CSVs just to get answers; this server lets your agent pull everything into memory instantly. It's all about getting the raw data and structure right inside your chat context.

**Mapping Your Environment**
You start by figuring out what you’re working with. You can use `list_workspaces` to see every distinct workspace ID connected to your account—that gives you a clean map of where everything lives. From there, if you need to know which forms are active, just run `list_forms`. This spits out a simple list of all the form IDs currently set up in Typeform.

**Inspecting Form Structure and Design**
Once you have an ID, you gotta check what that form looks like structurally. The `get_form_details` tool pulls the blueprint for any specific Typeform instance; it lets you see the full metadata and question components without ever having to open the visual editor. You can inspect the underlying flow logic and all the questions used. Need a design refresh? `list_form_themes` retrieves a list of every available visual theme you can apply, so you know what looks good before you commit.

**Pulling Raw Responses and Insights**
When it comes to data, this thing is fast. If you need all the user submissions for a given form ID, `get_form_responses` gathers every single submitted answer into usable data arrays right in your client's memory. This is way cleaner than dealing with manual file dumps cluttering up your folders.

Beyond raw answers, if you want to analyze what people actually thought, use `get_form_insights`. This tool pulls the aggregated analytics for a specific form ID, giving you key numbers like average scores or completion rates without forcing you to wade through complex reporting dashboards. It delivers the metrics straight up.

## Tools

### get_form_details
Retrieves the full structure and metadata for any single Typeform instance.

### get_form_insights
Pulls aggregated analytics, including completion rates and average scores, for a form ID.

### get_form_responses
Retrieves all submitted answers for a specified Typeform ID into memory.

### list_form_themes
Shows you a list of visual design themes available to apply to your forms.

### list_forms
Provides a simple list of all active form IDs within the Typeform account.

### list_workspaces
Lists every distinct workspace ID available in your connected Typeform account.

## Prompt Examples

**Prompt:** 
```
List all forms strictly tied to our marketing department running today.
```

**Response:** 
```
Executed search. I found 2 forms actively listed on the primary token: 'End of Course Audit' (ID 98Ab) and 'Website UX Panel' (ID cc31). Do you want metadata on the UX panel specifically?
```

**Prompt:** 
```
Fetch the raw responses corresponding precisely to Form ID cc31 generated previously.
```

**Response:** 
```
Awaiting extraction protocols... Process resolved. We have 15 answers collected. The general sentiment is quite enthusiastic (rating averages around '8/10'). A recurring comment notes 'The UI flows really cleanly for mobile users'. How else can I summarize this dataset?
```

**Prompt:** 
```
Get the questions mapping block describing Form XYZ natively inside our array structurally without reading real data yet.
```

**Response:** 
```
Extracted architectural blueprint correctly. The Form XYZ encompasses exactly 6 blocks. Notably, a multiple-choice element ('How did you know us?') and a large text-field entry block ('Give suggestions'). Would you like to dump its responses now securely inside the session locally purely unhindered natively without blocks?
```

## Capabilities

### List all Typeform workspaces
Shows you every workspace associated with your Typeform account.

### Find available forms
Lists all the form IDs currently set up in your account.

### Get a form's structure and metadata
Retrieves the blueprint of a specific form, letting you see its questions and components.

### Pull raw survey submissions
Gathers all user responses for a given form ID into usable data arrays.

### Analyze completion metrics
Pulls analytical data, like average scores and completion rates, for specific forms.

### List visual themes
Retrieves a list of available design themes you can use on your forms.

## Use Cases

### Analyzing a large job satisfaction survey
The HR analyst needs to know the overall mood. They ask their agent to run `get_form_insights` on the main ID. The agent pulls completion rates and average scores, allowing the user to immediately summarize general sentiment without ever touching an export.

### Debugging a complex onboarding flow
A UX designer suspects a form branch is broken. They use `get_form_details` to get the structural blueprint. This shows them the intended logic, allowing them to pinpoint exactly which question type or field ID needs correction.

### Consolidating feedback from multiple campaigns
A Product Manager has dozens of surveys spread across different client groups. They first use `list_workspaces` and then iterate through forms using `list_forms`. Finally, they run `get_form_responses` on each one to pass all raw data into a single AI prompt for comprehensive analysis.

### Validating form setup before launch
A developer needs to ensure the survey is set up correctly. They use `list_forms` to get the ID, then run `get_form_details`. This confirms all question types and metadata are present *before* any real users submit data.

## Benefits

- You get immediate sentiment analysis using `get_form_insights`. Instead of manually calculating averages from exported data, the agent pulls metrics directly and passes them to your LLM for instant summary.
- Bypass CSV dumps entirely. Use `get_form_responses` to pull raw submissions programmatically. This keeps sensitive feedback secure in your chat context instead of cluttering file storage.
- Inspect form logic without opening a browser. The `get_form_details` tool lets you map out flow branching and question types, which is critical for designers who need structural blueprints.
- Quickly locate the right survey. Use `list_workspaces` followed by `list_forms` to filter through dozens of campaigns and pinpoint the exact form ID needed for analysis.
- View design options with `list_form_themes`. You can check which visual themes are available before committing time to styling, saving you from unnecessary UI exploration.

## How It Works

The bottom line is: You treat your Typeform account like a database accessible purely through conversation commands.

1. First, secure an official connection token directly within the Typeform platform and lock it to this bridge implementation.
2. Next, tell your agent what you need—query for a form ID using `list_forms` or specify the raw data you want from `get_form_responses`.
3. Your AI client executes the command, pulling the targeted metadata, responses, or insights directly into the chat context.

## Frequently Asked Questions

**How do I find all my active Typeform surveys using list_forms?**
Use `list_forms` to pull a plain list of every form ID in the account. This is faster than navigating the web panel and gives you an immediate inventory of what's available for analysis.

**What is the difference between get_form_responses and get_form_insights?**
The difference is raw data versus summary. `get_form_responses` pulls every single answer submitted (the messy, detailed input). `get_form_insights` gives you clean metrics like average scores or completion percentages.

**Can I see what themes are available for my forms using list_form_themes?**
Yes, running `list_form_themes` retrieves all the visual design options attached to your Typeform account. This helps you decide on a look before applying any changes.

**Do I need an API key for get_form_responses?**
You must provide a verified connection token in the setup process, which authenticates the agent to your Typeform account. The server handles the secure use of that token when you invoke `get_form_responses`.

**Before listing forms, how do I use `list_workspaces` to determine which environment my target form belongs to?**
It lists all available workspaces associated with your account token. You need this list first because Typeform often runs multiple instances across different scopes; knowing the workspace ID lets you scope your subsequent commands correctly.

**When I use `get_form_details`, how does it handle conditional logic or complex question types?**
It pulls the full metadata blueprint, including conditional jumps and field types. You get a structured array showing which questions are visible based on user input, letting you map the flow outside of Typeform.

**If I run `get_form_responses` with an invalid Form ID, what specific error message should I expect?**
The system returns a clear 'Form not found' status code and specifies the required format for the input. This lets your AI client catch bad IDs immediately in the script without crashing the whole workflow.

**What metrics does `get_form_insights` provide that aren't available through raw data from submissions?**
It delivers calculated analytics like completion rates, average time spent, and drop-off points per segment. This gives you high-level performance summaries right out of the box for quick analysis.

**Can I publish a new dynamic Typeform directly from a conversational command?**
No, this architecture specifically focuses purely and strictly on ingesting incoming feedback payloads and analyzing structures. Complex visual form generation natively lacks API flexibility conducive to safe autonomous LLM builders efficiently avoiding poor user interfaces natively constructed blindly.

**Are hidden variables pulled alongside standard answers when retrieving responses?**
Yes! Extracted payloads contain an aggregated matrix detailing exact answers seamlessly mixed with tracking parameters natively gathered enabling profound correlation matching intelligently done effortlessly inside the AI model natively securely attached perfectly.

**Does pagination protect aggressive limits natively for massive sets of answers?**
Totally protected. Vurb's native egress filtering dynamically manages page streams safely avoiding out-of-context faults gracefully when looping through immense objects autonomously parsing inputs effortlessly natively correctly securely stably unified absolutely correctly.