Skip to content

Commit 07eb4d1

Browse files
committed
feat: register DevLens MCP in the official registry (server.json + mcpName + OIDC publish)
1 parent 9c00877 commit 07eb4d1

9 files changed

Lines changed: 64 additions & 12 deletions

File tree

.github/workflows/release.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,16 @@ jobs:
6363
uses: softprops/action-gh-release@v2
6464
with:
6565
files: dist/bin/*
66+
67+
# Publish server metadata to the official MCP Registry (tokenless via GitHub OIDC).
68+
# Last, so a registry hiccup (e.g. npm propagation lag) can't block the npm/GitHub
69+
# release. set-version.mjs already synced server.json to this release's version.
70+
- name: Install mcp-publisher
71+
run: |
72+
curl -L "https://github.com/modelcontextprotocol/registry/releases/latest/download/mcp-publisher_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar xz mcp-publisher
73+
74+
- name: Authenticate to MCP Registry (OIDC)
75+
run: ./mcp-publisher login github-oidc
76+
77+
- name: Publish server to MCP Registry
78+
run: ./mcp-publisher publish

npm/darwin-arm64/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@devlensio/cli-darwin-arm64",
3-
"version": "0.2.3",
3+
"version": "0.2.4",
44
"description": "Prebuilt DevLens CLI binary for macOS arm64 (Apple Silicon)",
55
"license": "AGPL-3.0",
66
"repository": {

npm/darwin-x64/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@devlensio/cli-darwin-x64",
3-
"version": "0.2.3",
3+
"version": "0.2.4",
44
"description": "Prebuilt DevLens CLI binary for macOS x64 (Intel)",
55
"license": "AGPL-3.0",
66
"repository": {

npm/linux-arm64/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@devlensio/cli-linux-arm64",
3-
"version": "0.2.3",
3+
"version": "0.2.4",
44
"description": "Prebuilt DevLens CLI binary for Linux arm64",
55
"license": "AGPL-3.0",
66
"repository": {

npm/linux-x64/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@devlensio/cli-linux-x64",
3-
"version": "0.2.3",
3+
"version": "0.2.4",
44
"description": "Prebuilt DevLens CLI binary for Linux x64",
55
"license": "AGPL-3.0",
66
"repository": {

npm/windows-x64/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@devlensio/cli-windows-x64",
3-
"version": "0.2.3",
3+
"version": "0.2.4",
44
"description": "Prebuilt DevLens CLI binary for Windows x64",
55
"license": "AGPL-3.0",
66
"repository": {

package.json

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"name": "@devlensio/cli",
3-
"version": "0.2.3",
3+
"version": "0.2.4",
4+
"mcpName": "io.github.devlensio/devlens",
45
"type": "module",
56
"publishConfig": {
67
"access": "public"
@@ -26,11 +27,11 @@
2627
"stage:binaries": "node scripts/stage-binaries.mjs"
2728
},
2829
"optionalDependencies": {
29-
"@devlensio/cli-darwin-arm64": "0.2.3",
30-
"@devlensio/cli-darwin-x64": "0.2.3",
31-
"@devlensio/cli-linux-x64": "0.2.3",
32-
"@devlensio/cli-linux-arm64": "0.2.3",
33-
"@devlensio/cli-windows-x64": "0.2.3"
30+
"@devlensio/cli-darwin-arm64": "0.2.4",
31+
"@devlensio/cli-darwin-x64": "0.2.4",
32+
"@devlensio/cli-linux-x64": "0.2.4",
33+
"@devlensio/cli-linux-arm64": "0.2.4",
34+
"@devlensio/cli-windows-x64": "0.2.4"
3435
},
3536
"devDependencies": {
3637
"@modelcontextprotocol/sdk": "^1.29.0",

scripts/set-version.mjs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,13 @@ main.optionalDependencies = main.optionalDependencies ?? {};
3434
for (const p of PLATFORMS) main.optionalDependencies[`@devlensio/cli-${p}`] = version; // exact pin
3535
writeJson(mainFile, main);
3636

37-
console.log(`Set version ${version} across main + ${PLATFORMS.length} platform packages.`);
37+
// MCP registry manifest — keep its server + npm-package version in lockstep too.
38+
const serverFile = path.join(root, "server.json");
39+
if (fs.existsSync(serverFile)) {
40+
const srv = JSON.parse(fs.readFileSync(serverFile, "utf8"));
41+
srv.version = version;
42+
for (const pkg of srv.packages ?? []) pkg.version = version;
43+
writeJson(serverFile, srv);
44+
}
45+
46+
console.log(`Set version ${version} across main + ${PLATFORMS.length} platform packages + server.json.`);

server.json

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3+
"name": "io.github.devlensio/devlens",
4+
"description": "MCP access to a precomputed code graph (nodes, typed edges, summaries) for TS/JS/React/Next.js/Node repos.",
5+
"title": "DevLens",
6+
"repository": {
7+
"url": "https://github.com/devlensio/devlensOSS",
8+
"source": "github"
9+
},
10+
"version": "0.2.4",
11+
"packages": [
12+
{
13+
"registryType": "npm",
14+
"registryBaseUrl": "https://registry.npmjs.org",
15+
"identifier": "@devlensio/cli",
16+
"version": "0.2.4",
17+
"runtimeHint": "npx",
18+
"transport": {
19+
"type": "stdio"
20+
},
21+
"packageArguments": [
22+
{
23+
"type": "positional",
24+
"value": "mcp"
25+
}
26+
]
27+
}
28+
]
29+
}

0 commit comments

Comments
 (0)