← Back to all apps

Jotform

Productivityby Jotform Inc.
Launched Sep 23, 2026 on ChatGPT

Create, edit, and analyze forms directly inside Claude. Simply describe what you want to collect, and Jotform generates complete forms you can refine through conversation. Whether you're creating surveys, research questionnaires, client intake forms, or internal request workflows, you can update forms, review submissions, and analyze responses using natural language - all without leaving Claude.

Build surveys, research questionnaires, application and intake forms, request forms, lead generation forms, assessments, evaluation forms, feedback forms, quizzes, registration forms, RSVP forms, appointment booking forms, order forms, and more. Add, remove, and reorder fields, customize layouts and themes, and update your forms at any time through conversation.

View submissions in real time, filter responses using natural language, summarize feedback, compare results, identify trends, uncover recurring themes, and generate actionable insights from your form data.

You can use the Jotform connector to:

Create forms with natural language:

"Create an employee satisfaction survey with a 1–5 rating scale, department field, and optional comments."

"Create a language proficiency quiz with 20 multiple-choice questions and automatic scoring."

Edit existing forms:

"Open my 'Job Application' form and add a required LinkedIn profile field and an optional portfolio URL."

"Update my IT Support Request form by adding a priority dropdown and department selector."

Review and analyze submissions:

"Summarize the latest customer feedback responses and identify the most common feature requests."

"Analyze submissions from my employee evaluation form and highlight recurring strengths and improvement areas."

13ChatGPT Tools
11Claude Tools
Jotform Inc.Developer
ProductivityCategory

Use Cases

productivitydata-analyticseducationnonprofitsales-and-marketing

Available Tools

Create a signable document

create_sign_document
Full Description

Create a signable document that can be sent to one or more signers for e-signature. Use this tool when the user wants to collect signatures, build a signing workflow, or prepare a document for signing. The document content is generated from a text prompt; an optional uploaded PDF, image, or DOCX can be passed as reference context (it is analyzed, not used as the final file).

Parameters (1 required, 2 optional)
Required
promptstring

Primary input: a description of the signable document to generate (e.g. "an NDA for a contractor with a 2-year term"). The document content is generated from this.

Optional
document_fileobject

Optional reference document (PDF, image, or DOCX) used only as context to generate the document. It is analyzed for content, not used as the final file. If omitted, the most recent attachment in the chat is used when available.

document_titlestring

Optional title for the document. Defaults to a title derived from the generated content.

Display a signable document

display_sign_document
Full Description

Refresh an already-created signable document in the rendered App so it can be previewed again after its previous preview expires. The refreshed document is handed to the App, which renders it; the response reports which document was refreshed. Requires the document_id and form_id of an existing sign document.

Parameters (2 required)
Required
document_idstring

The ID of the sign document to display.

form_idstring

The form ID backing the sign document.

Edit a sign document

edit_sign_document
Full Description

Edit an existing sign document. Can update the document title, regenerate the document content from a new prompt, or modify document settings. If the document was created from an uploaded file, a reconstruction of the document is needed for the edit operation, which may change how the document looks or reads. Before editing such a document, warn the user that the result may differ from the original and confirm with them before calling this tool.

Parameters (2 required)
Required
document_idstring

The document ID of the sign document to edit.

promptstring

New prompt to regenerate the document content. Describes the changes to make (e.g. "add a confidentiality clause", "change the term to 3 years").

Get signers of a sign document

get_signers
Full Description

Retrieve the signers of a sign document or sign form — participants that have signature/date/text fields assigned to them — including their participant IDs, names, emails, roles, signing order, and signing status. When given a form ID, this returns signers across all of the form's documents (the editable draft plus every sent document), each annotated with its document ID and status. Participant roles with no assigned fields are excluded. Use this to see who has been sent a document and to get participant IDs before updating signers.

Parameters (1 required)
Required
document_idstring

The ID of the sign document to get signers for. A sign form ID (as seen in the /sign/{id} builder URL) is also accepted, in which case signers from all of the form's documents (draft + sent) are returned.

Get signing status

get_signing_status
Full Description

Report the current status of a sign document including the overall document status and per-signer status (sent, viewed, signed, declined) with key timestamps. Accepts a sign document ID or a sign form ID (as seen in the /sign/{id} builder URL); when a form ID or draft document ID is given, the most recently sent copy is reported.

Parameters (1 required)
Required
document_idstring

The ID of the sign document to check status for. A sign form ID (as seen in the /sign/{id} builder URL) is also accepted, in which case the most recently sent copy is reported.

Get Teams

get_teams
Full Description

Retrieves team information for the user in Enterprise environments. Returns team details including members when returnBasicTeamInfo is false.

Parameters (1 required)
Required
returnBasicTeamInfoboolean

If true, returns only team IDs and names without member details. If false (default), returns full team information including team members, their roles, and member count. Set to false when the user wants to see who is in a team.

List signing submissions

list_submissions
Full Description

List signatures and signing submissions for sign documents. Use this tool when the user wants to view who has signed, check signatures, or see signing activity. You can list submissions for a specific sign document by passing its form_id, or across all sign documents when form_ids is empty. Do NOT use this tool to list the user's sign documents themselves — use the sign document listing/search tool for that.

Parameters (4 required)
Required
filterobject
form_idsarray

An array of numeric form IDs whose submissions to list or filter. Only pass an empty array when the user has NOT specified any form name and wants to list across their most recent forms.

limitnumber

Maximum number of submissions to return (default: 50).

user_querystring

A natural-language description of what the user wants to list or filter. Used as the filtering criteria when is_filtered_by_rules is true.

API Request

mcp_app_request
Full Description

Makes an authenticated request to the Jotform REST API with the given method, body, and query parameters. The API host is resolved automatically for the current account, so pass only a relative path.

WHEN TO USE: Prefer a dedicated tool when one exists for the requested action (for example: create_form, edit_form, list_submissions, search, fetch, display_form, analyze_submissions). Only use this tool as a fallback when no dedicated tool covers the request. See https://api.jotform.com/docs/ for the full API reference.

COMMON ENDPOINTS (relative paths, grouped by resource; not exhaustive):

  • User: "user", "user/forms", "user/submissions", "user/folders", "user/reports", "user/settings", "user/usage".
  • Form: "form/{formID}", "form/{formID}/questions", "form/{formID}/question/{questionID}", "form/{formID}/properties", "form/{formID}/properties/{propertyKey}", "form/{formID}/submissions", "form/{formID}/files", "form/{formID}/reports", "form/{formID}/webhooks".
  • Submission: "submission/{submissionID}".
  • Report: "report/{reportID}".
  • Folder: "folder/{folderID}".

RULES:

  • Use a relative path with no leading slash and no "API/" prefix (use "user", not "/API/user" or "/user").
  • The endpoints above are examples, not a complete list. You may use any documented Jotform API endpoint. Do not invent sub-resources; if unsure, start from a parent/collection endpoint above (for example "form/{formID}/properties") instead of guessing a new path.
  • "emails", "conditions", "products" and "formStrings" are not standalone endpoints and are not valid {propertyKey} values. They are returned as grouped sections of "form/{formID}/properties", so read them from there.
  • Treat a 404 as "this path does not exist" and report it, instead of retrying variations of the same path.

TIP: To reference a specific question or property, first GET the parent collection ("form/{formID}/questions" or "form/{formID}/properties") and use the IDs/keys returned there instead of guessing.

Parameters (1 required, 3 optional)
Required
endpointstring

Relative API path (e.g. "form/12345" or "user/forms").

Optional
body

Request body for POST/PUT/PATCH requests.

methodstring

HTTP method. Defaults to GET.

Options:GETPOSTPUTPATCHDELETE
query

Query parameters appended to the URL.

Search User Products

search
Full Description

Search and list the user's Jotform products of these types only: sign document. Use this tool to find products by name or criteria, to list products of one or more types, or to get a product ID for another tool. It does not search submissions. product_type: array of types to include; ["ALL"] covers every available type (sign). filter.title_filter: array of plain strings matched against product titles (OR logic, no regex). Matching is per whole word and case-insensitive, with no partial or plural matching: "invoice" does not match the title "Invoices 2024", so pass every spelling you want covered as its own array element, e.g. ["invoice", "invoices", "billing"]. A multi-word element needs most of its words present in the title, so prefer separate single-word elements to widen a search. Empty array lists all products of the requested types. filter.date_filter: [start, end] creation-date range in YYYY-MM-DD format, or empty array for no date filter. filter.status_filter: null lists active products. favorited_only lists owned favorited products; archived_only lists owned archived products; trashed_only lists owned trashed products. filter.is_filtered_by_rules: LAST RESORT (extra AI call) — only when no title keyword can express the criteria, such as the language a title is written in or an abstract topic with no obvious keyword. When the request contains a plausible title word, ALWAYS prefer filter.title_filter, listing several keyword variants (synonyms, singular and plural, translations) in one call rather than setting this true. If both are sent, the keywords are applied first and the AI pass runs only when they match nothing, so it cannot refine keyword matches further. Never present unfiltered results for criteria the filters could not express. Enterprise server admins: active-status searches cover ALL assets on the server (with owner and team info, server-wide totals and workflow error counts); owned-state filters stay scoped to the admin's own products. order_by: default "last_activity"; only use another option when the user asks for a specific sorting. Examples: (1) product_type=["ALL"], filter.title_filter=["invoice", "invoices"] to find products whose title contains either word; (2) product_type=["sign"] to list products of one type; (3) filter.status_filter="trashed_only" to list trashed products.

Parameters (5 required)
Required
filterobject
limitnumber

Maximum number of products returned. Defaults to 20 and is capped at 50.

order_bystring

Sort order for the results. Default "last_activity"; only use another option when a specific sorting is requested.

Options:last_activitymost_recent_createdleast_recent_createdsubmissions_countlast_submission
product_typearray

Product types to include. Use ["ALL"] for every available type: sign.

user_querystring

A natural-language instruction describing what the user wants to find and list from their products. Used as the filtering criteria when filter.is_filtered_by_rules is true.

Send document for signature

send_for_signature
Full Description

Send a sign document to signers via email. A sign document has a fixed set of signer roles (signature slots). Each send dispatches one independent copy of the document to one person per role — a "set". The number of signer roles only controls how many people are on a single copy; it is NOT a limit on how many people can ever receive the document. You can call this tool as many times as needed to send additional independent copies to different people: a one-signer document can be sent to any number of individuals (one copy each), and a multi-signer document can be sent to different sets of people (one copy per set). To send a copy to a different person or set of people, first point the signer role(s) at them with the updateSigner tool (set each role's name and email), then call this tool — there is no separate "add signer" step, and having only one signer role does not prevent sending to more people. Supports signing order and auto-reminders. This action emails real people — confirm with the user before calling.

Parameters (1 required, 4 optional)
Required
document_idstring

The ID of the sign document to send. A sign form ID (as seen in the /sign/{id} builder URL) is also accepted and resolved to the form's draft document.

Optional
auto_remindboolean

Enable automatic reminders for pending signers. Defaults to false.

enable_signing_orderboolean

When true, signers receive the document in their assigned order. Defaults to false (all at once).

messagestring

Optional custom message to include in the signing invitation email.

subjectstring

Optional custom email subject line.

Sign a document sent to me

sign_sent_document
Full Description

Open a sent Jotform Sign document in the secure signing UI for the current account. Use only when the document was sent to the current account email address and the user explicitly wants to sign it.

Parameters (1 required)
Required
document_idstring

The ID of the sent sign document to open for signing. Draft documents and form IDs are not accepted.

Update sign document content

update_sign_document_content
Full Description

Saves user-edited HTML content of an AI-created sign document and regenerates its PDF and fields.

Parameters (1 required, 2 optional)
Required
document_idstring

The document ID of the sign document to update.

Optional
finalizeboolean

When true, regenerates the PDF and fields from the saved HTML content.

html_documentstring

The full edited HTML content of the document.

Update a signer on a sign document

update_signer
Full Description

Update an existing signer role on a sign document with a person's name, email, and optional signing order. Use this to fill in signer details (e.g. after assignFieldsToSigners created the signer roles), or to re-target a signer role to a different person before (re-)sending: update the role's name and email here, then call sendForSignature again to send a new independent copy to that person. A document keeps the same signer roles across sends, so repeating updateSigner + sendForSignature lets you send copies to any number of different people even when there is only one signer role. Get valid participant IDs from getSigners. Call this tool once per signer role that needs updating.

Parameters (4 required, 1 optional)
Required
document_idstring

The ID of the sign document. A sign form ID (as seen in the /sign/{id} builder URL) is also accepted and resolved to the form's draft document.

emailstring

Email address of the signer.

namestring

Full name of the signer.

participant_idstring

The participant ID of the signer to update (from getSigners).

Optional
signing_orderinteger

Optional signing order (1-based). When set, signers receive the document sequentially.