Skip to content

Commit a84b32e

Browse files
committed
feat: Add MCP registry publishing with GitHub Actions
- Add server.json configuration for MCP registry - Add mcpName field to package.json for npm verification - Update GitHub Actions workflow to publish to MCP registry using OIDC - Validate server.json against official MCP schema
1 parent 15024c3 commit a84b32e

File tree

3 files changed

+70
-2
lines changed

3 files changed

+70
-2
lines changed

.github/workflows/publish.yml

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
1-
name: Publish to npm
1+
name: Publish to npm and MCP Registry
22

33
on:
44
push:
55
tags:
66
- 'v*' # Trigger on version tags like v1.0.0, v1.2.3, etc.
77

8+
permissions:
9+
id-token: write # Required for GitHub OIDC authentication
10+
contents: read
11+
812
jobs:
913
publish:
10-
name: Publish to npm
14+
name: Publish to npm and MCP Registry
1115
runs-on: ubuntu-latest
1216

1317
steps:
@@ -52,6 +56,19 @@ jobs:
5256
env:
5357
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
5458

59+
- name: Install mcp-publisher
60+
run: |
61+
curl -L https://github.com/modelcontextprotocol/registry/releases/latest/download/mcp-publisher-linux-amd64 -o mcp-publisher
62+
chmod +x mcp-publisher
63+
sudo mv mcp-publisher /usr/local/bin/
64+
65+
- name: Publish to MCP Registry
66+
run: |
67+
mcp-publisher login github-oidc
68+
mcp-publisher publish
69+
env:
70+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
71+
5572
- name: Create GitHub Release
5673
uses: softprops/action-gh-release@v2
5774
with:

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "deployhq-mcp-server",
3+
"mcpName": "io.github.deployhq/deployhq-mcp-server",
34
"version": "1.1.0",
45
"description": "Model Context Protocol (MCP) server for DeployHQ API integration",
56
"main": "dist/index.js",

server.json

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
{
2+
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-10-17/server.schema.json",
3+
"name": "io.github.deployhq/deployhq-mcp-server",
4+
"description": "Model Context Protocol (MCP) server for DeployHQ API integration",
5+
"repository": {
6+
"url": "https://github.com/deployhq/deployhq-mcp-server",
7+
"source": "github"
8+
},
9+
"version": "1.1.0",
10+
"packages": [
11+
{
12+
"registryType": "npm",
13+
"identifier": "deployhq-mcp-server",
14+
"version": "1.1.0",
15+
"transport": {
16+
"type": "stdio"
17+
},
18+
"environmentVariables": [
19+
{
20+
"description": "Your DeployHQ login email address",
21+
"isRequired": true,
22+
"format": "string",
23+
"isSecret": false,
24+
"name": "DEPLOYHQ_EMAIL"
25+
},
26+
{
27+
"description": "Your DeployHQ password or API key",
28+
"isRequired": true,
29+
"format": "string",
30+
"isSecret": true,
31+
"name": "DEPLOYHQ_API_KEY"
32+
},
33+
{
34+
"description": "Your DeployHQ account name (from URL: https://ACCOUNT.deployhq.com)",
35+
"isRequired": true,
36+
"format": "string",
37+
"isSecret": false,
38+
"name": "DEPLOYHQ_ACCOUNT"
39+
},
40+
{
41+
"description": "Log verbosity level (ERROR, INFO, or DEBUG)",
42+
"isRequired": false,
43+
"format": "string",
44+
"isSecret": false,
45+
"name": "LOG_LEVEL"
46+
}
47+
]
48+
}
49+
]
50+
}

0 commit comments

Comments
 (0)