From 579dbd98479ae409c037012766bdd8015093e4e2 Mon Sep 17 00:00:00 2001 From: Greg Methvin Date: Tue, 25 Nov 2025 11:26:06 -0800 Subject: [PATCH] update api client to 0.5.0 --- package.json | 4 ++-- pnpm-lock.yaml | 12 ++++++------ src/tools/snippets.ts | 16 +++++----------- src/tools/templates.ts | 4 ++-- 4 files changed, 15 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index d967389..cbddf60 100644 --- a/package.json +++ b/package.json @@ -71,9 +71,9 @@ }, "dependencies": { "@alcyone-labs/zod-to-json-schema": "4.0.10", - "@iterable/api": "0.4.0", + "@iterable/api": "0.5.0", "@modelcontextprotocol/sdk": "1.18.1", - "@primno/dpapi": "^2.0.1", + "@primno/dpapi": "2.0.1", "@types/json-schema": "7.0.15", "boxen": "8.0.1", "chalk": "5.6.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 31f3507..66cd0ef 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,13 +12,13 @@ importers: specifier: 4.0.10 version: 4.0.10(zod@4.1.11) '@iterable/api': - specifier: 0.4.0 - version: 0.4.0(typescript@5.9.3) + specifier: 0.5.0 + version: 0.5.0(typescript@5.9.3) '@modelcontextprotocol/sdk': specifier: 1.18.1 version: 1.18.1 '@primno/dpapi': - specifier: ^2.0.1 + specifier: 2.0.1 version: 2.0.1 '@types/json-schema': specifier: 7.0.15 @@ -654,8 +654,8 @@ packages: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} - '@iterable/api@0.4.0': - resolution: {integrity: sha512-NwRWqLdqFx0NMeCYAiEl67SVocUiPQB4nNY/WBeTO536S5VzW/Lji7oMg3MHh4nMtOXFY3s1opb0OW9VmaZkPw==} + '@iterable/api@0.5.0': + resolution: {integrity: sha512-cxFhTzirG6kxr7DdgvRvBxZWoYX7NUPrebpxQsqfRFOwsnXdAA8nQVo5lnCtWmsmQHIp21hsXtL2A5kDIO6jzA==} engines: {node: '>=18.0.0'} '@jest/console@30.2.0': @@ -3226,7 +3226,7 @@ snapshots: '@istanbuljs/schema@0.1.3': {} - '@iterable/api@0.4.0(typescript@5.9.3)': + '@iterable/api@0.5.0(typescript@5.9.3)': dependencies: '@t3-oss/env-core': 0.13.8(typescript@5.9.3)(zod@4.1.11) axios: 1.13.2 diff --git a/src/tools/snippets.ts b/src/tools/snippets.ts index 3905420..abcc287 100644 --- a/src/tools/snippets.ts +++ b/src/tools/snippets.ts @@ -4,10 +4,10 @@ import type { IterableClient } from "@iterable/api"; import { - CreateSnippetRequestSchema, + CreateSnippetParamsSchema, DeleteSnippetParamsSchema, GetSnippetParamsSchema, - UpdateSnippetRequestSchema, + UpdateSnippetParamsSchema, } from "@iterable/api"; import type { Tool } from "@modelcontextprotocol/sdk/types.js"; import { z } from "zod"; @@ -26,7 +26,7 @@ export function createSnippetTools(client: IterableClient): Tool[] { createTool({ name: "create_snippet", description: "Create a new snippet with Handlebars templating support", - schema: CreateSnippetRequestSchema, + schema: CreateSnippetParamsSchema, execute: (params) => client.createSnippet(params), }), @@ -40,14 +40,8 @@ export function createSnippetTools(client: IterableClient): Tool[] { createTool({ name: "update_snippet", description: "Update a snippet by ID (numeric) or name (string)", - schema: z.object({ - identifier: z - .union([z.string(), z.number()]) - .describe("Snippet ID (numeric) or name (string)"), - body: UpdateSnippetRequestSchema.describe("Snippet update data"), - }), - execute: (params) => - client.updateSnippet({ identifier: params.identifier }, params.body), + schema: UpdateSnippetParamsSchema, + execute: (params) => client.updateSnippet(params), }), createTool({ diff --git a/src/tools/templates.ts b/src/tools/templates.ts index a0dbdf2..97b029b 100644 --- a/src/tools/templates.ts +++ b/src/tools/templates.ts @@ -9,7 +9,7 @@ import { GetTemplateParamsSchema, GetTemplatesParamsSchema, PreviewTemplateParamsSchema, - TemplateProofRequestSchema, + SendTemplateProofParamsSchema, UpdateEmailTemplateParamsSchema, UpdateInAppTemplateParamsSchema, UpdatePushTemplateParamsSchema, @@ -116,7 +116,7 @@ function createTemplateToolsForType( createTool({ name: `send_${config.type}_template_proof`, description: `Send a proof of a ${config.displayName} template to a specific user`, - schema: TemplateProofRequestSchema, + schema: SendTemplateProofParamsSchema, execute: (params) => (client as any)[config.proofMethodName](params), }), ];