Skip to content

Actions

Create forms that visitors and connected AI agents can submit. Configure fields, validation, notifications and submission storage.

Updated October 23, 2026 6 min read

Create an action for visitors or connected AI agents to submit information, such as a reservation or callback request. Use an owner or editor account to define fields and manage responses in Studio.

Visitors use the form; connected AI agents call its MCP tool. Both use the same validation and submission storage. Action definition changes take effect when saved. Actions Bar appearance and site configuration stay in the private draft until publication.

Publish the site once to install the Actions Bar. After that, saved Action definitions take effect without another publish. Publish changes to the Bar’s site-level appearance and configuration separately. Actions and MCP action tools require Studio.

Agent Actions with Actions Bar settings and two example actions on desktop

Desktop example: choose how visitors see the Actions Bar.

Actions Bar settings and an example action on a phone

Phone example: the Actions Bar settings adapt to the screen.

Creating an action

Open Actions, then click New Action. Start from scratch or choose a template:

  • Contact form
  • Newsletter signup
  • Table reservation
  • Appointment booking
  • Event registration
  • Callback request
  • Quote request
  • Feedback form
  • Waitlist

Enter the action name. Visitors see it as the form title, and notification subjects include it. Choose an icon. Add a description if visitors need more context below the title. Then add the form fields.

If the action name is long, enter a Button Label in the Actions Bar settings. An empty label uses the action name. For example, name an action "Contact us" and use "Contact" on its button. Click Save Changes to save the action settings.

Field builder

Each action has a list of fields. Use the field builder to add, reorder, and configure them.

Supported field types

Type Description
Text Single-line text input
Email Email address with format validation
Phone Phone number with format validation
Number Numeric input with +/− stepper and optional min/max
Date Date picker (can require future dates only)
Time Time picker
Select Dropdown menu
Multi-select Checkbox group - visitors pick multiple options
Radio Radio buttons (switches to dropdown automatically if more than 4 options)
Checkbox Single on/off toggle
Textarea Multi-line text
URL Web address with format validation
File File upload with extension filtering and size limits
Hidden Not shown to visitors - useful for tracking codes

Field settings

Click the gear icon on any field to configure:

  • Placeholder - hint text shown inside the empty field
  • Default Value - pre-filled value (not shown for file or checkbox fields)
  • Help Text - short description shown below the field
  • Minimum / Maximum - for number fields
  • Max Length - character limit for text fields
  • Options - for select, radio, and multi-select fields
  • Value - for checkboxes: the value sent when checked (defaults to the field name)
  • Selected by default - for checkboxes: whether the checkbox is pre-checked
  • Allowed File Types - for file fields: choose document, image, or archive groups, or list specific extensions
  • Max File Size (MB) - for file fields: maximum upload size in MB (up to 50 MB)

Click Apply in field settings, then Save Fields on the action to save field changes.

Defining options

For select, radio and multi-select fields, enter one option per line. Option names can contain commas and special characters.

For multi-select fields, prefix an option with [x] to make it selected by default:

Vegetarian
[x] Vegan
[x] Gluten-free
Dairy-free
Nut-free

In this example, Vegan and Gluten-free are checked by default when the form loads.

Validation

Turn on Required for fields visitors must complete. VoxelSite checks each value by its field type:

  • Email - must be a valid email address
  • Phone - must be a valid phone number
  • URL - must be a valid web address
  • Number - must be within min/max range
  • Date - can require a date in the future
  • Multi-select - when required, at least one option must be checked
  • Text / Textarea - optional maximum character length

The browser shows field errors. The server checks submitted values. The MCP tool schema also describes the constraints for connected agents.

File upload checks

VoxelSite checks uploaded files before storing them:

  • Extension whitelist - only the extensions you allow are accepted
  • File signature check: compares supported file signatures with the declared type
  • Size limit - configurable per field, hard-capped at 50 MB
  • Storage: _data/uploads/actions/. Apache uses the supplied .htaccess protection. On Nginx, deny access to _data/ before accepting uploads. Studio provides authenticated downloads.

The actions bar

Active actions appear in a bar at the bottom of the published pages. Select an action to open its form.

After the initial publish, saved Action definitions update the public manifest using the published site configuration. Draft opening hours and Bar configuration do not leak into that update. Publish the draft to activate site-level configuration changes. Reload a published page to check the form.

If an upgraded installation asks you to migrate legacy Bar settings, inspect the preserved values in Studio and save them explicitly. Publication stays blocked until that conflict is resolved.

The Actions Bar:

  • Supports dark mode (light, dark, or auto based on system preference)
  • Offers three layout variants: bottom bar, floating action button, or minimal pill
  • Adapts to mobile screens and touch targets
  • Includes messages in 31 languages, selected from the visitor's browser language
  • Includes keyboard navigation and focus indicators

AI agent integration

Connected agents discover active actions through these public endpoints:

Endpoint Purpose
/actions/manifest.json JSON manifest with all active actions and their fields - readable in any browser
/mcp.php MCP endpoint for AI agents - supports tools/list and tools/call

AI assistants can:

  1. Call tools/list on /mcp.php to discover actions.
  2. Read the tool schema for field requirements, rules and options.
  3. Call tools/call with the action name and arguments to submit data.

What agents see

Each action becomes an MCP tool named make_[action_id]. For example, an action with ID reservation becomes make_reservation. This example shows a tools/list response schema:

{
  "name": "make_reservation",
  "description": "Reserve a table at the restaurant",
  "inputSchema": {
    "type": "object",
    "properties": {
      "name":   { "type": "string", "description": "Name" },
      "date":   { "type": "string", "description": "Date (must be in the future)" },
      "time":   { "type": "string", "description": "Time" },
      "guests": { "type": "number", "description": "Guests", "minimum": 1, "maximum": 12 }
    },
    "required": ["name", "date", "time", "guests"]
  }
}

Open an action and check Agent Preview to see its current schema.

Verifying your actions

Open https://example.com/actions/manifest.json, using your domain. Check the active actions, fields and constraints. Saved action changes update this manifest without another publish.

Connect a compatible client to this public endpoint for visitor interactions. Authenticated Studio MCP at /_studio/mcp.php manages the site and business records; it uses separate credentials. Your published llms.txt also lists available actions.

Managing submissions

Open an action to read its stored submissions. These are live business records, separate from website snapshots. Studio MCP business tools share record versions and stable retries with Studio.

Available controls:

  • Filter by status (new, confirmed, completed, cancelled)
  • View full submission details, metadata (IP, browser, timestamp), and timeline
  • Update the status of individual submissions
  • Export all submissions to CSV
  • Delete individual submissions
  • Purge old submissions in bulk - choose from 3 days to 1 year

Submission rules

Open the action settings to control repeated submissions:

  • Turn off Same email can submit multiple times to reject repeated submissions from an email address. Set the message visitors see when blocked.

Publishing

The first publish installs the Actions Bar on published pages. Later definition saves update its manifest without another publish. Bar configuration still needs a reviewed website publication. On an already published site, activating a draft makes it available to visitors. To activate it, click ○ Draft — click to go live. Test the published form after changing fields or activation.

Unpublishing removes the published site entry pages and their Actions Bar.

  • Forms - traditional schema-driven forms (contact, booking)
  • SEO & AI discovery - how llms.txt and MCP make your site AI-readable
  • Publishing - what happens when you publish

Found a mistake in these instructions? Open an issue.

Download VoxelSite