This page provides a comprehensive reference for all available MCP (Model Context Protocol) items in the Formulize system. The items listed below are automatically extracted from the codebase and updated whenever new items are added.
Tools are functions that AI assistants can call to perform actions in Formulize.
These tools are available to all authenticated users:
List all forms in this Formulize instance
List all the applications and the forms that are part of each one.
List all the connections between forms, which can explain how forms are related to one another. Connection are based pairs of elements, one in each form, that have matching values. Entries in the forms are connected when they have the same value in the paired elements, or when one element is ‘linked’ to the other, in which case the values in the linked element will be entry_ids in the other form (foreign keys).
List all the screens for all forms.
List all the users in the system.
Get detailed information about a specific form, including its elements, screens, and connections to other forms. You can get a list of all the forms and their IDs with the list_forms tool.
Get detailed information about a specific screen. Lookup screens by their ID number, also known as ‘sid’
Create a new entry in a Formulize form. Returns success status and new entry ID. Formulize may automatically add default values for required elements, if they have default values defined. Do not be concerned about required elements unless this tool returns an error saying that required elements are missing.
Update an existing entry in a Formulize form.
Retrieve entries from a form with optional filtering, sorting, and pagination. Supports both simple entry ID lookup and complex multi-condition filtering. Returns data in a structured format suitable for analysis or display.
Convert database values to human-readable format. Essential for linked elements (foreign keys), checkboxes, and select lists where raw database values are IDs or codes rather than display text.
Test the MCP server connection and database access
The local MCP server caches information to reduce network traffic and the load on the Formulize system. Use this tool to see the status of the cache.
The local MCP server caches information to reduce network traffic and the load on the Formulize system. Use this tool to clear the cache.
These tools are only available to webmaster users:
Query the database with a SELECT statement. The database is MariaDB/MySQL and queries are written in SQL. If you don’t know the database schema for the form, use the get_form_details tool to look up the form’s database table name, and the field names are the element handles.
This Formulize system logs all activity. This tool will read up to the last 1000 lines from the activity log and return them as a array of JSON objects. There are several keys available in the objects, including microtime (a timestamp), user_id (the user who was active), request_id (which identifies log entries that were part of the same http request), session_id (which connects each request in a user’s session), formulize_event (which is a short descriptor of the activity), as well as form_id, screen_id, and entry_id.
Resources provide read-only access to system information and data.
formulize://system/system_info.json
Formulize system info and status
formulize://system/applications_list.json
All the applications in the system. Applications are collections of forms that work together. A form can be part of one or more applications. Applications are purly for organizing forms, any form can still interact with any other form regardless of the application(s) they’re in.
formulize://system/groups_list.json
All the groups in the system. Groups are collections of users. Each group can have its own permissions to access a form, such as viewing the form, updating entries by other people in the same group, seeing entries by anyone in any group, etc.
formulize://system/users_list.json
All the users in the system. Users are collected into groups. Users can be members of multiple groups. Permissions are assigned to groups, and users inherit all the permissions from all the groups they are a member of. Permissions include things like viewing a form, creating entries in a form, updating entries created by other people in the same group, seeing entries by anyone in any group, etc.
formulize://system/forms_list.json
All the forms in the system, and their elements, screens and connections to other forms. Forms are the main part of Formulize. Users enter data into forms, and can access data in forms that they or other users have entered. The interactions with forms and data is controlled by the permissions assigned to the groups, and users can be assigned to one or more groups.
formulize://system/screens_list.json
All the screens in the system. Screens are ways of presenting a form and its entries to users. Lists screens show the entries in the form, and have extensive configuration options to of entries are a type of screen. Versions of the form which users can fill in, are a type of form. , Connection are based pairs of elements, one in each form, that have matching values. Entries in the forms are connected when they have the same value in the paired elements, or when one element is ‘linked’ to the other, in which case the values in the linked element will be entry_ids in the other form (foreign keys).
formulize://system/form_connections_list.json
All the connections between forms. Connections are based pairs of elements, one in each form, that have matching values. Entries in the forms are connected when they have the same value in the paired elements, or when one element is ‘linked’ to the other, in which case the values in the linked element will be entry_ids in the other form (foreign keys).
formulize://schemas/{form_title}_(form_{form_id}).json
Complete schema, element definitions, screens, and form connections (x each form).
formulize://permissions/group_perms_for_{form_title}"."_(form_{form_id}).json
All the permissions for all groups on a form (x each form).
formulize://permissions/form_perms_for_{group_name}"."_(group_{group_id}).json
All the permissions for a group, on all forms (x each group).
Prompts are pre-defined templates that can be used with AI assistants for common tasks.
Ask the AI to write a report about the data in a form.
Arguments:
Ask the AI to look up data in the system.
Arguments:
Ask the AI for a report on recent user activity
Arguments: