Tools: 57
Customer Relation

Formitize

Connect your account, then chat with AI to run tools.

Formitize is an Australian field-service and paperless business platform for mobile forms, CRM, job scheduling, sales quotes and leads, asset registers, and invoicing. Read and write clients, jobs, job types, quotes, tasks, leads, assets, forms, scheduler views, and submitted inspection data.

Use in your AI tool

You’ll sign in to MCPBundles when your client connects.

MCP URL
https://mcp.mcpbundles.com/bundle/formitize

Chat in MCPBundles Studio

This server needs a sign-in. MCPBundles handles that setup once — then chat here with saved access and a log of what ran.

Managed
57 tools
Agent guide included

Opens MCPBundles Studio with this server selected. After sign-in, chat and run tools from the same thread.

Browse all tools

Live probe refreshed Sep 14, 2026 · Endpoint host mcp.mcpbundles.com

AI Skill
SKILL.md

Domain knowledge for Formitize — workflow patterns, data models, and gotchas for your AI agent.

Formitize

Formitize is a field-service operations stack: CRM clients and sites, schedulable jobs, job type templates, sales quotes tasks and leads, asset registers, mobile form templates, scheduler and workflow definitions, and submitted inspection reports. Australian accounts typically use the AU service host.

Hierarchy

Account → CRM clients (billingName) → locations & contacts → jobs (assigned to users/queues) → job history → attached forms → submitted form rows → assets (per asset schema) → invoices.

Sales (when enabled): quotes, tasks, and pipeline leads — not the legacy CRM lead list (that surface is not implemented on the current API version).

Operations: job type templates, scheduler calendar, workflow definitions, field users and teams, qualifications, and scheduler resources (resources require explicit permission on the connected credential).

Jobs can auto-create clients when client.billingName is supplied on create. Asset data is always scoped to an asset schema id — list schemas before listing assets.

Operational order

  1. Clients — list CRM clients (page) or fetch one by client_id (billing, embedded contact/location ids).
  2. Contacts & locations — always scoped to a client_id. List or fetch by optional contact_id / location_id; upsert and delete on the same client-scoped paths.
  3. Jobs — list open jobs (optional status filter) or fetch one job by id for status, assignee, due date, and attached forms. Use job history for audit timeline on a known job_id.
  4. Job types — list templates before interpreting recurring work.
  5. Sales — list or fetch quotes (quote_id), tasks (task_id), and CRM leads (lead_id) with pagination; upsert and delete on the same resources; use extra_fields for module-specific columns.
  6. Scheduler & workflows — scheduler entries for calendar dispatch; workflow definitions and workflow templates; upsert/delete when automations are managed via API.
  7. Field users & qualifications — agents and teams for assignment; qualifications list and upsert/delete when Admin exposes them on the token.
  8. Resources — list and manage scheduler resources when the credential includes Resources permission.
  9. Webhooks — list and configure outbound job webhooks when integrations are enabled.
  10. Assets — list asset schemas (optional schema_id for one definition), then list or fetch assets within a schema id.
  11. Forms — list form templates; search submitted forms by query, form_id, and page, or fetch by submitted_id / job_id; upsert or delete submissions.
  12. Lookup databases — list database names, then list/upsert/delete rows within a named lookup database.
  13. Invoices — list, fetch, upsert, and delete invoice summaries when billing modules are enabled.

Job status codes (for filters)

Comma-separated status on job list: 1 Created, 2 Assigned, 3 Accepted, 4 Finished, 6 Rejected, 8 Rescheduled.

Write semantics

  • Client upsert — create with billingName; update by client id. Deactivate via dedicated deactivate client or extra_fields status: inactive.
  • Contact upsert — create or update under a parent client_id.
  • Contact delete — delete by client id + contact id.
  • Location upsert — create or update under a parent client_id.
  • Location delete — delete by client id + location id.
  • Job upsert — omit id to create (needs title, agent, and client.billingName or existing client). Pass numeric id to update title, notes, status, assignees, or attached forms.
  • Job delete — destructive and idempotent by job id.
  • Job type upsert — create with title or name; delete by job type id.
  • Quote / task / lead upsert — create or update by resource id; delete by id query param.
  • Workflow / scheduler / qualification / resource — create and delete when modules are enabled on the token.
  • Invoice upsert — create or update invoice rows; delete by id.
  • Lookup row upsert — create or update rows in a named lookup database; delete by row id.
  • Webhook upsert — register callback URL; delete by webhook id.
  • Submitted form delete — delete by submitted form id.
  • Asset upsert — create or update within an asset schema; schema-specific columns vary — use extra_fields for schema-defined keys.
  • Asset delete — delete by schema id + asset id.
  • Submitted form upsert — create or update; pass formID, jobID, and answer fields via extra_fields.

Assign agent to -1 for queue-style jobs any field user can pick up.

Gotchas

  • Responses wrap data in a top-level payload key; tools return the unwrapped payload.
  • Job and submitted-form list responses are maps keyed by id — tools normalize to items arrays.
  • Empty accounts return {} or [] for lists; that is not an auth failure.
  • Flat top-level contact and location lists are not implemented — always use client-scoped contact and location reads and writes.
  • Pipeline leads use the sales lead tools — do not use the legacy CRM lead list.
  • Resources require explicit permission on the credential; otherwise the service returns a no-permission error.
  • Credential permissions are scoped in Formitize Admin; missing module permission surfaces as a payload error message.

Tools discovered (57)

Showing 25 of 57 from the live probe.

  • Formitize Deactivate Client

    Deactivate a Formitize CRM client by client_id. Sets status to inactive on the client record (Help Desk deactivation pattern). Requires client_id; optional billing_name when the upstream API expects it on update.

  • Formitize Delete Asset

    Delete one asset row from a Formitize asset schema. Requires schema_id and asset_id. Destructive and idempotent.

  • Formitize Delete Contact

    Delete a contact from a Formitize CRM client. Requires client_id and contact_id. Destructive and idempotent when the API accepts repeat deletes.

  • Formitize Delete Invoice

    Delete a Formitize invoice by invoice_id. Destructive and idempotent when the API accepts the delete.

  • Formitize Delete Job

    Permanently delete a Formitize job by id. Destructive and idempotent — deleting an already removed job still succeeds when the API accepts it.

  • Formitize Delete Job Type

    Permanently delete a Formitize job type template by id. Destructive and idempotent when the API accepts the delete.

  • Formitize Delete Lead

    Permanently delete a Formitize CRM lead by lead_id. Destructive and idempotent when the API accepts the delete.

  • Formitize Delete Location

    Delete a site location from a Formitize CRM client. Requires client_id and location_id. Destructive and idempotent when the API accepts repeat deletes.

  • Formitize Delete Lookup Row

    Delete one row from a lookup database by database_name and row_id.

  • Formitize Delete Qualification

    Delete a Formitize qualification record by qualification_id. Destructive and idempotent when the API accepts the delete.

  • Formitize Delete Quote

    Permanently delete a Formitize quote by quote_id. Destructive and idempotent when the API accepts the delete.

  • Formitize Delete Resource

    Delete a Formitize scheduler resource by resource_id. Requires Resources permission on the API token.

  • Formitize Delete Scheduler Entry

    Delete a Formitize scheduler entry by scheduler_entry_id. Destructive and idempotent when the API accepts the delete.

  • Formitize Delete Submitted Form

    Delete a submitted mobile form record by submitted_id. Destructive and idempotent when the API accepts the delete.

  • Formitize Delete Task

    Permanently delete a Formitize task by task_id. Destructive and idempotent when the API accepts the delete.

  • Formitize Delete Webhook

    Delete a Formitize webhook by webhook_id. Destructive and idempotent when the API accepts the delete.

  • Formitize Delete Workflow

    Permanently delete a Formitize workflow by workflow_id. Destructive and idempotent when the API accepts the delete.

  • Formitize Get Assets

    List or fetch assets within a Formitize asset schema. Requires schema_id. Omit asset_id to list all assets in the schema; pass asset_id for one row.

  • Formitize Get Asset Schemas

    List or fetch asset schema definitions on the Formitize account. Each schema describes an asset register (columns, types). Omit schema_id to list all schemas; pass schema_id for one schema definition.

  • Formitize Get Clients

    List or fetch Formitize CRM clients. Omit client_id to list clients with billing name, primary contact, address, and status (`page` for pagination). Pass client_id for one client including contacts, locations, billing terms, and custom fields.

  • Formitize Get Contacts

    List or fetch contacts for a Formitize CRM client. Requires client_id. Omit contact_id to list all contacts on the client; pass contact_id for one contact with phones, email, and custom fields.

  • Formitize Get Field Users

    List Formitize field users, agents, or teams for job assignment. Default scope returns both agent/list/ and team/list/ in one payload. Use scope agents or teams for one list. user/list/ may be null on some accounts.

  • Formitize Get Form Templates

    List mobile form templates configured on the Formitize account, or fetch one template by template_id. Always call this before formitize_upsert_submitted_form so answer field names and formMultiple option KEYS are known — dropdown values must be option keys (e.g. "1"), not display labels.

  • Formitize Get Invoices

    List or fetch Formitize invoices when the accounts module is enabled. Omit invoice_id to list; pass invoice_id for one invoice with line items and payment status.

  • Formitize Get Job History

    Fetch the change log for one Formitize field job — status changes, scheduler updates, assignee changes, and timestamps. Requires job_id from the jobs list.

Frequently Asked Questions

What is the Formitize MCP server?

Formitize is an Australian field-service and paperless business platform for mobile forms, CRM, job scheduling, sales quotes and leads, asset registers, and invoicing. Read and write clients, jobs, job types, quotes, tasks, leads, assets, forms, scheduler views, and submitted inspection data. It provides 57 tools that AI agents can use through the Model Context Protocol (MCP).

How do I connect Formitize to my AI agent?

Add the MCPBundles server URL to your MCP client configuration (Claude Desktop, Cursor, VS Code, etc.). The URL format is: https://mcp.mcpbundles.com/bundle/formitize. Authentication is handled automatically.

How many tools does Formitize provide?

Formitize provides 57 tools that can be called by AI agents, along with a SKILL.md that gives your AI agent domain knowledge about when and how to use them.

What authentication does Formitize require?

Formitize uses API Key. Formitize requires credentials. Connect via MCPBundles and authentication is handled automatically.

Setup Instructions

Connect Formitize to any MCP client in minutes

Ready to use Formitize?

Sign in to connect your credentials and start running tools from the chat.