ci: 🚀 build and attach .mcpb extension on tagged release #122
No reviewers
Labels
No labels
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/OpenSpec
Kind/Security
Kind/Testing
Priority/Critical
Priority/High
Priority/Low
Priority/Medium
RFC - Request For Comments
Reviewed/Confirmed
Reviewed/Duplicate
Reviewed/Invalid
Reviewed/Won't Fix
Status/Abandoned
Status/Blocked
Status/Need More Info
hermes-attempted
hermes-needs-clarification
hermes-ready
hermes-review
hermes-wip
human-required
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
agentic-forges/forgejo-mcp!122
Loading…
Reference in a new issue
No description provided.
Delete branch "refs/pull/122/head"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Wires the Claude Desktop Extension (
.mcpb) into the release workflow so each tagged release publishes per-platform.mcpbartifacts alongside the existingtar.gzbinaries.For each
{linux, darwin} × {amd64, arm64}:dist/.extension/manifest.json(jqsubstitution — no more hardcoded2.20.0).npx @anthropic-ai/mcpb pack.Closes #121.
⚠️ Depends on #118
This PR must not be merged before #118. The release step references
extension/manifest.jsonand theextension/scaffolding introduced in #118; without that PR merged first, this workflow will fail at the manifest copy step.Suggested merge order:
main.forgejo-mcp_<version>_<os>_<arch>.mcpbper platform.Test plan
main.mainand re-pushed.v2.20.1-test) and confirmed the workflow attaches four.mcpbfiles to the release.darwin-arm64.mcpb, opened it in Claude Desktop, and verified the extension installs and tools surface in chat.linux-amd64.mcpband rannpx @anthropic-ai/mcpb info <file>to confirm metadata + binary presence.versioninside the packed.mcpbmatches the release tag (no hardcoded2.20.0).Notes
findglob for goreleaser'sdist/layout handles both the_v1amd64 variant directory and the plain arm64 directory. If goreleaser configuration changes the variant scheme, the matcher will need updating.secrets.RELEASE_TOKEN(already used by the goreleaser step). No new secret required.traprestores the original manifest on exit so the workflow's working tree stays clean if any subsequent step is added later.