Skip to content

Commit eb0757c

Browse files
authored
Add MCP Registry publish workflow (#1129)
Add registry publisher workflow
1 parent 0ca30ec commit eb0757c

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Publish to MCP Registry
2+
3+
on:
4+
push:
5+
tags: ["v*"] # Triggers on version tags like v1.0.0
6+
workflow_dispatch: # Allow manual triggering
7+
8+
jobs:
9+
publish:
10+
runs-on: ubuntu-latest
11+
permissions:
12+
id-token: write # Required for OIDC authentication
13+
contents: read
14+
15+
steps:
16+
- name: Checkout code
17+
uses: actions/checkout@v5
18+
19+
- name: Install jq
20+
run: sudo apt-get update && sudo apt-get install -y jq
21+
22+
- name: Install MCP Publisher
23+
run: |
24+
curl -L "https://github.com/modelcontextprotocol/registry/releases/download/v1.0.0/mcp-publisher_1.0.0_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar xz mcp-publisher
25+
26+
- name: Update server.json version
27+
run: |
28+
if [[ "${{ github.ref_type }}" == "tag" ]]; then
29+
# Use the tag that triggered the workflow
30+
TAG_VERSION=$(echo "${{ github.ref_name }}" | sed 's/^v//')
31+
echo "Using triggered tag: ${{ github.ref_name }}"
32+
else
33+
# Fallback to latest tag (for manual triggers)
34+
LATEST_TAG=$(git tag --sort=-version:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+(-.*)?$' | head -n 1)
35+
if [ -z "$LATEST_TAG" ]; then
36+
echo "❌ No release tag found. Cannot determine version."
37+
exit 1
38+
fi
39+
TAG_VERSION=$(echo "$LATEST_TAG" | sed 's/^v//')
40+
echo "Using latest tag: $LATEST_TAG"
41+
fi
42+
jq ".version = \"$TAG_VERSION\" | .packages[].version = \"$TAG_VERSION\"" server.json > server.json.tmp && mv server.json.tmp server.json
43+
echo "Updated server.json version to $TAG_VERSION"
44+
45+
- name: Login to MCP Registry
46+
run: ./mcp-publisher login github-oidc
47+
48+
- name: Publish to MCP Registry
49+
run: ./mcp-publisher publish

0 commit comments

Comments
 (0)