Skip to content

ci: auto-publish MCP server on version bump (+ auto-tag)#207

Merged
mkreyman merged 1 commit into
masterfrom
ci-mcp-autopublish
Jun 29, 2026
Merged

ci: auto-publish MCP server on version bump (+ auto-tag)#207
mkreyman merged 1 commit into
masterfrom
ci-mcp-autopublish

Conversation

@mkreyman

Copy link
Copy Markdown
Owner

Why

The MCP publish was tag-triggered only. Twenty version bumps (2.3 → 2.22) were committed without anyone pushing a matching mcp-v* tag, so npm sat 20 versions behind the repo and agents couldn't see new tools. We just hit and fixed that manually (published 2.22.0); this prevents it from ever happening again.

What

  • New mcp-autopublish.yml — on any master push that changes mcp-server/package.json, if that version isn't already on npm, publish it (--provenance) and create + push the mcp-v<version> record tag automatically. Self-contained (uses NPM_TOKEN), and guards on already-published so it's a no-op when the version is unchanged. (Auto-tag included, per request.)
  • npm-publish.yml (the manual tag escape hatch) gains the same already-published guard, so re-tagging an existing release is a no-op instead of a hard failure — and the two workflows can never double-fail on a race.

Verification

Both workflows YAML-validated. The behavior is verifiable on the next mcp-server/package.json bump (next P3 / MCP change) — it should publish + tag with no manual step.

The MCP publish was tag-triggered only, and 20 version bumps (2.3 -> 2.22) were
committed without a matching mcp-v* tag ever being pushed -- so npm sat 20
versions behind the repo and agents couldn't see new tools (facets/count/graph/
novelty/etc.). This prevents recurrence.

- New mcp-autopublish.yml: on any master push that changes mcp-server/package.json,
  if that version isn't already on npm, publish it (--provenance) and create +
  push the mcp-v<version> record tag automatically. Self-contained (NPM_TOKEN);
  guards on already-published so it's a no-op when nothing changed.
- npm-publish.yml (manual tag escape hatch) gains the same already-published
  guard, so re-tagging an existing release is a no-op instead of a hard failure,
  and the two workflows can never double-fail on a race.
@mkreyman mkreyman merged commit 916a9b5 into master Jun 29, 2026
9 checks passed
@mkreyman mkreyman deleted the ci-mcp-autopublish branch June 29, 2026 23:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant