mirror of
https://github.com/morluto/rea.git
synced 2026-10-31 03:45:39 +00:00
Validate original exact-source qualification, release tag, retained package provenance and npm integrity before the corrected public-package canary. Publish only the existing release's MCP metadata through a shared idempotent publisher; never recreate tags or npm versions.
42 lines
1.6 KiB
YAML
42 lines
1.6 KiB
YAML
name: Publish MCP Registry metadata
|
|
description: Validate and publish one released server.json, preserving an identical existing version
|
|
inputs:
|
|
directory:
|
|
description: Directory containing the released server.json
|
|
default: .
|
|
runs:
|
|
using: composite
|
|
steps:
|
|
- name: Install MCP Registry publisher
|
|
shell: bash
|
|
working-directory: ${{ inputs.directory }}
|
|
env:
|
|
MCP_PUBLISHER_VERSION: v1.8.0
|
|
MCP_PUBLISHER_SHA256_LINUX_AMD64: 1370446bbe74d562608e8005a6ccce02d146a661fbd78674e11cc70b9618d6cf
|
|
run: |
|
|
archive="mcp-publisher_linux_amd64.tar.gz"
|
|
curl -fsSLo "${archive}" \
|
|
"https://github.com/modelcontextprotocol/registry/releases/download/${MCP_PUBLISHER_VERSION}/${archive}"
|
|
echo "${MCP_PUBLISHER_SHA256_LINUX_AMD64} ${archive}" | sha256sum --check --strict
|
|
tar xzf "${archive}" mcp-publisher
|
|
chmod +x mcp-publisher
|
|
- name: Validate MCP Registry metadata
|
|
shell: bash
|
|
working-directory: ${{ inputs.directory }}
|
|
run: ./mcp-publisher validate
|
|
- name: Check existing registry version
|
|
id: registry
|
|
shell: bash
|
|
working-directory: ${{ inputs.directory }}
|
|
run: node "${GITHUB_ACTION_PATH}/registry-state.mjs"
|
|
- name: Authenticate to MCP Registry
|
|
if: steps.registry.outputs.exists != 'true'
|
|
shell: bash
|
|
working-directory: ${{ inputs.directory }}
|
|
run: ./mcp-publisher login github-oidc
|
|
- name: Publish MCP Registry metadata
|
|
if: steps.registry.outputs.exists != 'true'
|
|
shell: bash
|
|
working-directory: ${{ inputs.directory }}
|
|
run: ./mcp-publisher publish
|