Typeform MCP Server for Cloudflare Workers
30 tools available in the Typeform MCP server. Each tool can be called by AI assistants to perform specific actions.
typeform_create_workspaceCreate a new workspace.
Args:
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Workspace name"
}
}
}typeform_get_themeGet a single theme by ID.
Args:
{
"type": "object",
"required": [
"themeId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"themeId": {
"type": "string",
"description": "Theme ID"
}
}
}typeform_test_connectionTest the connection to Typeform API.
Returns connection status and user information if successful.
{
"type": "object",
"properties": {}
}typeform_get_meGet the current user's information.
Returns the user's alias, email, and language setting.
{
"type": "object",
"properties": {}
}typeform_list_formsList forms from your Typeform account.
Returns a paginated list of forms with basic information.
Args:
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"search": {
"type": "string",
"description": "Filter results containing this string"
},
"sortBy": {
"enum": [
"created_at",
"last_updated_at"
],
"type": "string",
"description": "Sort field"
},
"orderBy": {
"enum": [
"asc",
"desc"
],
"type": "string",
"description": "Sort order"
},
"pageSize": {
"type": "integer",
"default": 10,
"maximum": 200,
"minimum": 1,
"description": "Results per page"
},
"workspaceId": {
"type": "string",
"description": "Filter forms in a specific workspace"
}
}
}typeform_get_formGet a single form by its ID.
Returns the complete form configuration including fields, settings, and logic.
Args:
{
"type": "object",
"required": [
"formId"
],
"properties": {
"formId": {
"type": "string",
"description": "Form ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}typeform_create_themeCreate a new theme.
Args:
{
"type": "object",
"required": [
"colors"
],
"properties": {
"font": {
"type": "string",
"description": "Font name"
},
"name": {
"type": "string",
"description": "Theme name"
},
"colors": {
"type": "string",
"description": "JSON object with colors { answer, background, button, question }"
},
"roundedCorners": {
"enum": [
"none",
"small",
"medium",
"large"
],
"type": "string"
},
"hasTransparentButton": {
"type": "boolean"
}
}
}typeform_create_formCreate a new form in Typeform.
Args:
Returns the created form with its ID.
{
"type": "object",
"required": [
"title"
],
"properties": {
"type": {
"enum": [
"form",
"quiz"
],
"type": "string",
"description": "Form type"
},
"title": {
"type": "string",
"description": "Form title"
},
"fields": {
"type": "string",
"description": "JSON array of field definitions"
},
"settings": {
"type": "string",
"description": "JSON object with form settings"
},
"themeHref": {
"type": "string",
"description": "Theme URL"
},
"workspaceHref": {
"type": "string",
"description": "Workspace URL"
}
}
}typeform_update_formUpdate an existing form (full replacement).
WARNING: This overwrites the entire form. Include all existing fields with their IDs to preserve them.
Args:
Returns the updated form.
{
"type": "object",
"required": [
"formId",
"title"
],
"properties": {
"title": {
"type": "string",
"description": "Form title"
},
"fields": {
"type": "string",
"description": "JSON array of all field definitions"
},
"formId": {
"type": "string",
"description": "Form ID to update"
},
"settings": {
"type": "string",
"description": "JSON object with form settings"
}
}
}typeform_patch_formPartially update a form (specific properties only).
Args:
Common paths: /title, /settings/is_public, /workspace/href, /theme/href
{
"type": "object",
"required": [
"formId",
"operations"
],
"properties": {
"formId": {
"type": "string",
"description": "Form ID to update"
},
"operations": {
"type": "string",
"description": "JSON array of patch operations"
}
}
}typeform_delete_formDelete a form and all its responses.
WARNING: This permanently deletes the form and all collected responses.
Args:
{
"type": "object",
"required": [
"formId"
],
"properties": {
"formId": {
"type": "string",
"description": "Form ID to delete"
}
}
}typeform_get_form_messagesGet custom messages for a form.
Returns the customizable UI messages (button labels, error messages, etc.) for the form.
Args:
{
"type": "object",
"required": [
"formId"
],
"properties": {
"formId": {
"type": "string",
"description": "Form ID"
}
}
}typeform_update_form_messagesUpdate custom messages for a form.
Args:
{
"type": "object",
"required": [
"formId",
"messages"
],
"properties": {
"formId": {
"type": "string",
"description": "Form ID"
},
"messages": {
"type": "string",
"description": "JSON object with message key-value pairs"
}
}
}typeform_list_responsesGet responses for a form.
Note: Very recent responses (within ~30 minutes) may not be returned.
Args:
{
"type": "object",
"required": [
"formId"
],
"properties": {
"after": {
"type": "string",
"description": "Pagination token for next page"
},
"query": {
"type": "string",
"description": "Search across all fields"
},
"since": {
"type": "string",
"description": "Filter responses after this date (ISO 8601)"
},
"until": {
"type": "string",
"description": "Filter responses before this date (ISO 8601)"
},
"before": {
"type": "string",
"description": "Pagination token for previous page"
},
"formId": {
"type": "string",
"description": "Form ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pageSize": {
"type": "integer",
"default": 25,
"maximum": 1000,
"minimum": 1,
"description": "Results per page"
},
"completed": {
"type": "boolean",
"description": "Filter by completion status"
}
}
}typeform_delete_responsesDelete specific responses from a form.
Args:
{
"type": "object",
"required": [
"formId",
"responseIds"
],
"properties": {
"formId": {
"type": "string",
"description": "Form ID"
},
"responseIds": {
"type": "string",
"description": "Comma-separated list of response IDs"
}
}
}typeform_list_workspacesList workspaces in your Typeform account.
Args:
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"search": {
"type": "string"
},
"pageSize": {
"type": "integer",
"default": 10,
"maximum": 200,
"minimum": 1
}
}
}typeform_get_workspaceGet a single workspace by ID.
Args:
{
"type": "object",
"required": [
"workspaceId"
],
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"workspaceId": {
"type": "string",
"description": "Workspace ID"
}
}
}typeform_update_workspaceUpdate a workspace (rename or manage members).
Args:
Examples: Rename: [{ "op": "replace", "path": "/name", "value": "New Name" }] Add member: [{ "op": "add", "path": "/members", "value": { "email": "user@example.com", "role": "member" } }] Remove member: [{ "op": "remove", "path": "/members", "value": { "email": "user@example.com" } }]
{
"type": "object",
"required": [
"workspaceId",
"operations"
],
"properties": {
"operations": {
"type": "string",
"description": "JSON array of patch operations"
},
"workspaceId": {
"type": "string",
"description": "Workspace ID"
}
}
}typeform_delete_workspaceDelete a workspace.
Args:
{
"type": "object",
"required": [
"workspaceId"
],
"properties": {
"workspaceId": {
"type": "string",
"description": "Workspace ID to delete"
}
}
}typeform_list_themesList themes in your Typeform account.
Args:
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pageSize": {
"type": "integer",
"default": 10,
"maximum": 200,
"minimum": 1
}
}
}typeform_update_themeUpdate an existing theme.
Args:
{
"type": "object",
"required": [
"themeId"
],
"properties": {
"font": {
"type": "string"
},
"name": {
"type": "string"
},
"colors": {
"type": "string",
"description": "JSON object with colors"
},
"themeId": {
"type": "string",
"description": "Theme ID to update"
}
}
}typeform_delete_themeDelete a theme.
Args:
{
"type": "object",
"required": [
"themeId"
],
"properties": {
"themeId": {
"type": "string",
"description": "Theme ID to delete"
}
}
}typeform_list_imagesList images in your Typeform account.
Returns all images stored in your account.
{
"type": "object",
"properties": {
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}typeform_get_imageGet image metadata by ID.
Args:
{
"type": "object",
"required": [
"imageId"
],
"properties": {
"imageId": {
"type": "string",
"description": "Image ID"
}
}
}typeform_create_imageUpload a new image.
Provide either a base64-encoded image OR a URL, not both.
Args:
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "URL to import image from"
},
"image": {
"type": "string",
"description": "Base64-encoded image data"
},
"fileName": {
"type": "string",
"description": "Image filename"
}
}
}typeform_delete_imageDelete an image.
Args:
{
"type": "object",
"required": [
"imageId"
],
"properties": {
"imageId": {
"type": "string",
"description": "Image ID to delete"
}
}
}typeform_list_webhooksList webhooks for a form.
Args:
{
"type": "object",
"required": [
"formId"
],
"properties": {
"formId": {
"type": "string",
"description": "Form ID"
}
}
}typeform_get_webhookGet a single webhook by tag.
Args:
{
"type": "object",
"required": [
"formId",
"tag"
],
"properties": {
"tag": {
"type": "string",
"description": "Webhook tag"
},
"formId": {
"type": "string",
"description": "Form ID"
}
}
}typeform_create_webhookCreate or update a webhook for a form.
Args:
{
"type": "object",
"required": [
"formId",
"tag",
"url"
],
"properties": {
"tag": {
"type": "string",
"description": "Unique webhook tag"
},
"url": {
"type": "string",
"description": "Destination URL"
},
"formId": {
"type": "string",
"description": "Form ID"
},
"secret": {
"type": "string",
"description": "HMAC signing key"
},
"enabled": {
"type": "boolean",
"default": true
},
"verifySsl": {
"type": "boolean"
},
"formResponse": {
"type": "boolean",
"description": "Trigger on form submission"
},
"formResponsePartial": {
"type": "boolean",
"description": "Trigger on partial responses"
}
}
}typeform_delete_webhookDelete a webhook.
Args:
{
"type": "object",
"required": [
"formId",
"tag"
],
"properties": {
"tag": {
"type": "string",
"description": "Webhook tag to delete"
},
"formId": {
"type": "string",
"description": "Form ID"
}
}
}