diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c7205bf..9301284 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -37,8 +37,10 @@ jobs: node-version: 22 cache: "pnpm" - - name: Update npm for OIDC support - run: npm install -g npm@latest # Needs 11.5.1+ for npm trusted publishing + - name: Install npm 11+ for OIDC provenance publishing + run: corepack enable npm && corepack install -g npm@latest + env: + COREPACK_ENABLE_STRICT: 0 - name: Install dependencies run: pnpm install --frozen-lockfile @@ -59,12 +61,14 @@ jobs: if: github.event_name == 'workflow_dispatch' id: version run: | - npm version ${{ github.event.inputs.version_type }} + pnpm version ${{ github.event.inputs.version_type }} echo "new_version=$(node -p "require('./package.json').version")" >> $GITHUB_OUTPUT git push --follow-tags - name: Publish to npm run: npm publish --provenance + env: + COREPACK_ENABLE_STRICT: 0 - name: Create GitHub release (manual trigger only) if: github.event_name == 'workflow_dispatch' diff --git a/TOOLS.md b/TOOLS.md index a0e7343..83ea0cc 100644 --- a/TOOLS.md +++ b/TOOLS.md @@ -15,7 +15,7 @@ - **create_triggered_campaign** ✏️: Create a new triggered campaign from an existing template. The campaign is created in Ready state and must be activated before it can send. - **deactivate_triggered_campaign** ✏️: Deactivate a triggered campaign (requires API triggered campaign deactivation enabled) - **get_campaign**: Get detailed information about a specific campaign -- **get_campaign_metrics**: Get campaign performance metrics +- **get_campaign_metrics**: Get campaign performance metrics. Requires a date range. Always use the narrowest window possible for performance. - **get_campaigns**: Retrieve campaigns - **get_child_campaigns**: Get child campaigns generated by a recurring campaign - **schedule_campaign** ✏️✉️: Schedule an existing campaign to be sent at a specific time diff --git a/package.json b/package.json index 2e7934b..5b1c1c3 100644 --- a/package.json +++ b/package.json @@ -76,7 +76,7 @@ }, "dependencies": { "@alcyone-labs/zod-to-json-schema": "4.0.10", - "@iterable/api": "0.10.0", + "@iterable/api": "0.10.3", "@modelcontextprotocol/sdk": "1.18.1", "@primno/dpapi": "2.0.1", "@types/json-schema": "7.0.15", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 718812b..e469211 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,8 +12,8 @@ importers: specifier: 4.0.10 version: 4.0.10(zod@4.3.6) '@iterable/api': - specifier: 0.10.0 - version: 0.10.0(typescript@6.0.2) + specifier: 0.10.3 + version: 0.10.3(typescript@6.0.2) '@modelcontextprotocol/sdk': specifier: 1.18.1 version: 1.18.1 @@ -654,8 +654,8 @@ packages: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} - '@iterable/api@0.10.0': - resolution: {integrity: sha512-gqZvvz4quzLk1UyaxZqPAFJXpDMBzo33dgg7eUvcbnJTVxz9ro3g6y/zvW9blDGtprEkXib77skF1vNMMUa8lQ==} + '@iterable/api@0.10.3': + resolution: {integrity: sha512-3h1sMWYDd7yj/NSAvCQl3/ZTItEwwrAKje0vJkNft2ZdMuL+nqWClm0sURWL5eVU7SUXAWptYmyFN8aKK2oFZQ==} engines: {node: '>=18.0.0'} '@jest/console@30.2.0': @@ -3260,7 +3260,7 @@ snapshots: '@istanbuljs/schema@0.1.3': {} - '@iterable/api@0.10.0(typescript@6.0.2)': + '@iterable/api@0.10.3(typescript@6.0.2)': dependencies: '@t3-oss/env-core': 0.13.11(typescript@6.0.2)(zod@4.3.6) axios: 1.13.6 diff --git a/src/tools/campaigns.ts b/src/tools/campaigns.ts index e670384..b78f633 100644 --- a/src/tools/campaigns.ts +++ b/src/tools/campaigns.ts @@ -41,7 +41,8 @@ export function createCampaignTools(client: IterableClient): Tool[] { createTool({ name: "get_campaign_metrics", - description: "Get campaign performance metrics", + description: + "Get campaign performance metrics. Requires a date range. Always use the narrowest window possible for performance.", schema: GetCampaignMetricsParamsSchema, execute: (params) => client.getCampaignMetrics(params), }),