Skip to content

Commit e28901c

Browse files
committed
feat: add publish job to version-release workflow for automated MCP publishing
1 parent 9560947 commit e28901c

File tree

2 files changed

+48
-52
lines changed

2 files changed

+48
-52
lines changed

.github/workflows/publish-mcp.yml

Lines changed: 0 additions & 52 deletions
This file was deleted.

.github/workflows/version-release.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ permissions:
1212
jobs:
1313
version:
1414
runs-on: ubuntu-latest
15+
outputs:
16+
changed: ${{ steps.changed.outputs.changed }}
17+
version: ${{ steps.version.outputs.version }}
1518

1619
steps:
1720
- name: Checkout code
@@ -85,3 +88,48 @@ jobs:
8588
--notes "## Changes
8689
8790
$COMMITS"
91+
92+
publish:
93+
runs-on: ubuntu-latest
94+
needs: version
95+
if: needs.version.outputs.changed == 'true'
96+
97+
steps:
98+
- name: Checkout code
99+
uses: actions/checkout@v5
100+
with:
101+
ref: v${{ needs.version.outputs.version }}
102+
103+
- name: Setup Node.js
104+
uses: actions/setup-node@v5
105+
with:
106+
node-version: 'lts/*'
107+
108+
- name: Install dependencies
109+
run: npm ci
110+
111+
- name: Run lint
112+
run: npm run lint
113+
114+
- name: Run type check
115+
run: npm run type-check
116+
117+
- name: Install MCP Publisher
118+
run: |
119+
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
120+
ARCH=$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/')
121+
122+
RELEASE_TAG=$(curl -s https://api.github.com/repos/modelcontextprotocol/registry/releases | \
123+
jq -r '.[] | select(.assets | map(.name) | any(test("mcp-publisher_"))) | .tag_name' | head -1)
124+
125+
echo "Downloading mcp-publisher ${RELEASE_TAG} for ${OS}_${ARCH}"
126+
curl -fL "https://github.com/modelcontextprotocol/registry/releases/download/${RELEASE_TAG}/mcp-publisher_${OS}_${ARCH}.tar.gz" | tar xz
127+
chmod +x mcp-publisher
128+
129+
- name: Login to MCP Registry
130+
env:
131+
MCP_PRIVATE_KEY: ${{ secrets.MCP_PRIVATE_KEY }}
132+
run: ./mcp-publisher login dns --domain docusign-navigator.thisdot.co --private-key "$MCP_PRIVATE_KEY"
133+
134+
- name: Publish to MCP Registry
135+
run: ./mcp-publisher publish

0 commit comments

Comments
 (0)