# Kizeo Forms MCP MCP

> Kizeo Forms manages mobile data collection and user accounts via API calls. This MCP lets your agent interact with structured field submissions—from listing available forms to searching complex entries, or even pushing pre-filled assignments directly into a form for field workers.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** mobile-forms, data-collection, field-data, workflow-automation, digital-forms, data-submission

## Description

Field operations generate massive amounts of data, but getting it out of the mobile forms and into usable insights is often a mess. This connector handles that complexity by giving your agent direct access to the system's core functions. You can query specific submissions using advanced filters, or list every form definition if you need to audit what fields exist across the organization. Need to update user roles? It handles that too. When you connect this through Vinkius, your AI client translates natural language commands into precise data operations—you don't have to learn API syntax. You simply ask the agent to 'find all pending site reports from last week,' and it executes the necessary reads and searches for you.

## Tools

### search_form_data
Searches for multiple form submissions using advanced filtering criteria like date or status.

### create_new_user
Adds a new user account to the Kizeo Forms system using required name, email, and password details.

### delete_account_user
Removes an existing user profile from the Kizeo Forms account.

### list_all_forms
Provides a directory listing of all forms available within the Kizeo Forms instance.

### get_form_entry_data
Gets all submitted data records belonging to one unique form submission ID.

### get_form_definition
Retrieves the specific structure and fields for a single named form.

### push_data_to_form
Submits a brand-new data entry into a form by passing in a JSON body with field values.

### update_existing_user
Modifies details, such as the email or name, for a user already in the system.

### list_account_users
Outputs a complete list of every user currently registered in the account.

## Prompt Examples

**Prompt:** 
```
List all my available forms in Kizeo.
```

**Response:** 
```
I've retrieved your forms. You have 5 active forms, including 'Inspection Report' (ID: 12345), 'Time Tracking' (ID: 67890), and 'Inventory Audit' (ID: 11223).
```

**Prompt:** 
```
Search for submissions in form ID '12345' where status is 'Pending'.
```

**Response:** 
```
I found 3 submissions in form 12345 matching your criteria. Recent entries include data from 'Site A' and 'Site B'. Would you like to see the full details for any of them?
```

**Prompt:** 
```
Push a new entry to form '67890' with technician name 'Jane Doe' and site 'South Station'.
```

**Response:** 
```
Successfully pushed the new entry to form 67890. The data has been recorded and is now available for the technician in the field.
```

## Capabilities

### List available forms
Retrieves a list of every form configured in your Kizeo account.

### Get specific form definitions
Pulls the exact structure and field requirements for one particular form ID.

### Search submitted data
Searches all collected data across multiple forms using custom criteria like date range or status.

### Retrieve a single submission
Fetches the complete set of answers for one specific form entry ID.

### Push new field data
Automatically creates and submits a brand-new data record into an existing form structure.

### Manage user accounts
Creates, updates, or deletes user profiles and controls their permissions within the system.

## Use Cases

### Auditing compliance after an incident.
A site manager needs to know every inspection report filed last quarter that has the status 'Needs Review.' The agent runs `list_all_forms` first, then uses `search_form_data` to pull all relevant submissions across multiple forms and filters them by date range or specific criteria. This replaces hours of manual database querying.

### Onboarding a new field team.
An HR manager needs to add ten new employees and set up their accounts. They simply ask the agent to 'add 10 users.' The agent then runs `create_new_user` repeatedly, ensuring every person has credentials before they ever hit the road.

### Sending a follow-up task.
A supervisor needs to assign an immediate audit to a technician. Instead of waiting for the tech to fill out the form, they prompt the agent to 'send a pre-filled audit form to John Doe.' The agent uses `push_data_to_form` to populate and submit the initial draft.

### Finding data from an old project.
A developer needs historical records for a discontinued site. They ask the agent to 'get all submissions for form ID 12345.' The agent uses `get_form_entry_data` and verifies if the data is complete, solving the problem of buried archival records.

## Benefits

- Stop manually compiling reports. By using `search_form_data`, your agent finds all submissions matching complex criteria—like 'all pending audits from Site C'—in one query, regardless of how many forms are involved.
- Never lose track of what forms exist again. The ability to run `list_all_forms` means you can audit the entire system structure and verify that every necessary form is configured correctly before deployment.
- Assign tasks instantly in the field. You don't need to open the web app; using `push_data_to_form`, your agent sends pre-filled data directly into a form, ready for the user to review or finalize on site.
- Maintain clean records by controlling access. If an employee leaves, you can use `delete_account_user` and `update_existing_user` through natural language commands, keeping permissions accurate without manual dashboard navigation.
- Instantly understand form requirements. Before submitting data, running `get_form_definition` lets your agent check the required fields for a specific form ID, guaranteeing you don't miss any critical data points.

## How It Works

The bottom line is, you tell your agent what you need done with field data, and it handles all the API calls needed to get it.

1. Subscribe to this MCP in Vinkius and provide your Kizeo Forms authorization token.
2. Your agent determines the necessary action, such as listing forms or searching data submissions, based on your natural language prompt.
3. The MCP executes the specific API call, returning structured data (like form entries or user lists) directly to your AI client.

## Frequently Asked Questions

**How do I search for old records using the `search_form_data` tool?**
You pass specific filters to the agent, telling it exactly which forms or date ranges you want. You don't have to know the internal IDs; just tell your agent what you're looking for.

**Can I use `push_data_to_form` if the form structure changes?**
You should always run `get_form_definition` first. This ensures that the JSON body you send via `push_data_to_form` matches the current, required fields for the form.

**What if I need to add a new user account?**
Use the `create_new_user` tool. You just provide the name, email, and password details when prompted by your agent.

**Is there a way to get data for only one specific submission?**
Yes, run `get_form_entry_data`. Just give it the unique form entry ID, and you'll get every piece of submitted information associated with that record.

**How do I use the `list_all_forms` tool to get an inventory of every form in my Kizeo account?**
It returns a comprehensive list of all available forms. This gives you the IDs and names, which is essential for knowing what data sources exist before running any specific queries.

**What information can I get about user roles using `list_account_users`?**
It provides key details for every account in your system. You'll see names, email addresses, and the current status or role assigned to each user.

**Before sending data, how can I verify the required fields using `get_form_definition`?**
The tool retrieves the complete schema for a form. You use this definition to validate your JSON payload against the exact structure and field requirements of that specific submission.

**If I need to correct an existing user's details, should I use `update_existing_user`?**
Yes, you must use this tool. You provide the unique user ID along with the updated information. This lets you modify a profile without deleting and having to recreate the account entirely.

**How do I find my Form ID?**
Use the `list_all_forms` tool to see a comprehensive list of all forms in your account along with their unique IDs.

**Can I filter form data using specific fields?**
Yes, the `search_form_data` tool allows you to perform advanced searches by providing a JSON object with your filtering criteria.

**Is it possible to push data to a form via the agent?**
Absolutely. Use the `push_data_to_form` tool with the target Form ID and a JSON object containing the field values you want to pre-fill.