get_forms
Retrieve forms from Klaviyo with filtering and pagination options to manage marketing automation data.
Input Schema
TableJSON 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);