get_forms
Retrieve forms from Klaviyo with filtering and pagination options to manage marketing automation data.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "get_forms"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| filter | No | Filter query for forms | |
| page_size | No | Number of forms per page (1-100) | |
| page_cursor | No | Cursor for pagination |
Implementation Reference
- src/tools/forms.js:13-25 (handler)Handler function that executes the get_forms tool: fetches forms from Klaviyo API endpoint '/forms/' with params, returns formatted JSON response or error.
async (params) => { try { const forms = await klaviyoClient.get('/forms/', params); return { content: [{ type: "text", text: JSON.stringify(forms, null, 2) }] }; } catch (error) { return { content: [{ type: "text", text: `Error retrieving forms: ${error.message}` }], isError: true }; } }, - src/tools/forms.js:8-12 (schema)Input schema using Zod for get_forms tool parameters: filter, page_size, page_cursor.
{ filter: z.string().optional().describe("Filter query for forms"), page_size: z.number().min(1).max(100).optional().describe("Number of forms per page (1-100)"), page_cursor: z.string().optional().describe("Cursor for pagination") }, - src/tools/forms.js:7-27 (registration)Primary registration of the get_forms MCP tool via server.tool call, including schema, handler, and description.
"get_forms", { filter: z.string().optional().describe("Filter query for forms"), page_size: z.number().min(1).max(100).optional().describe("Number of forms per page (1-100)"), page_cursor: z.string().optional().describe("Cursor for pagination") }, async (params) => { try { const forms = await klaviyoClient.get('/forms/', params); return { content: [{ type: "text", text: JSON.stringify(forms, null, 2) }] }; } catch (error) { return { content: [{ type: "text", text: `Error retrieving forms: ${error.message}` }], isError: true }; } }, { description: "Get forms from Klaviyo" } ); - src/server.js:46-46 (registration)Top-level call to registerFormTools which includes the get_forms tool.
registerFormTools(server);