From b9f5ff82a6b8e3a0495fa6bf91133adf48b4efd8 Mon Sep 17 00:00:00 2001 From: Oscar Perez Date: Mon, 20 Jul 2026 18:26:05 +0200 Subject: [PATCH] ci: notify zernio-mcp after SDK publication Both publish pipelines now send a repository_dispatch to zernio-dev/zernio-mcp once the PyPI uploads complete, so the MCP package can sync against the released SDK version instead of going stale until someone notices. Uses the same curl dispatch pattern as the Node SDK trigger in the API repo. The event type and payload match what zernio-mcp's sync-sdk.yml consumes: `sdk-released` with a `sdk_version` it validates as semver. Each step is gated on the same condition as the publish steps above it, so no notification is sent for a run that published nothing. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/generate.yml | 11 +++++++++++ .github/workflows/release.yml | 11 +++++++++++ 2 files changed, 22 insertions(+) diff --git a/.github/workflows/generate.yml b/.github/workflows/generate.yml index 98970523..6feb199b 100644 --- a/.github/workflows/generate.yml +++ b/.github/workflows/generate.yml @@ -192,3 +192,14 @@ jobs: with: password: ${{ secrets.PYPI_API_TOKEN }} skip-existing: true + + - name: Trigger MCP SDK Sync + if: steps.changes.outputs.has_changes == 'true' + continue-on-error: true + run: | + curl -fsS -L -X POST \ + -H "Accept: application/vnd.github.v3+json" \ + -H "Authorization: token ${{ secrets.MCP_DISPATCH_TOKEN }}" \ + https://api.github.com/repos/zernio-dev/zernio-mcp/dispatches \ + -d '{"event_type":"sdk-released","client_payload":{"sdk_version":"${{ steps.version.outputs.new_version }}","ref":"${{ github.sha }}"}}' + echo "✓ Triggered MCP sync for ${{ steps.version.outputs.new_version }}" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2b7415bf..21235142 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -144,6 +144,17 @@ jobs: with: password: ${{ secrets.PYPI_API_TOKEN }} + - name: Trigger MCP SDK Sync + if: steps.check_tag.outputs.exists == 'false' + continue-on-error: true + run: | + curl -fsS -L -X POST \ + -H "Accept: application/vnd.github.v3+json" \ + -H "Authorization: token ${{ secrets.MCP_DISPATCH_TOKEN }}" \ + https://api.github.com/repos/zernio-dev/zernio-mcp/dispatches \ + -d '{"event_type":"sdk-released","client_payload":{"sdk_version":"${{ steps.version.outputs.version }}","ref":"${{ github.sha }}"}}' + echo "✓ Triggered MCP sync for ${{ steps.version.outputs.version }}" + - name: Post-release Summary if: steps.check_tag.outputs.exists == 'false' run: |