ssh-mcp-pro 1.4.2 → 1.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.4.3](https://github.com/oaslananka/ssh-mcp-pro/compare/ssh-mcp-pro-v1.4.2...ssh-mcp-pro-v1.4.3) (2026-11-10)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **release:** tolerate npm registry post-publish processing ([#200](https://github.com/oaslananka/ssh-mcp-pro/issues/200)) ([6a8b4eb](https://github.com/oaslananka/ssh-mcp-pro/commit/6a8b4ebc976f902cd96a96dec89156947151f205))
14
+
8
15
  ## [1.4.2](https://github.com/oaslananka/ssh-mcp-pro/compare/ssh-mcp-pro-v1.4.1...ssh-mcp-pro-v1.4.2) (2026-11-10)
9
16
 
10
17
 
package/dist/mcp.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { McpServer } from "@modelcontextprotocol/server";
2
2
  import type { Transport } from "@modelcontextprotocol/server";
3
3
  import type { AppContainer } from "./container.js";
4
- export declare const SERVER_VERSION = "1.4.2";
4
+ export declare const SERVER_VERSION = "1.4.3";
5
5
  export declare const SERVER_NAME = "io.github.oaslananka/ssh-mcp-pro";
6
6
  export declare class SSHMCPServer {
7
7
  private readonly container;
package/dist/mcp.js CHANGED
@@ -5,7 +5,7 @@ import { listResources, readResource } from "./resources.js";
5
5
  import { getMCPPrompt, listMCPPrompts } from "./prompts.js";
6
6
  import { withSpan } from "./telemetry.js";
7
7
  import { createToolRegistry } from "./tools/index.js";
8
- export const SERVER_VERSION = "1.4.2"; // x-release-please-version
8
+ export const SERVER_VERSION = "1.4.3"; // x-release-please-version
9
9
  export const SERVER_NAME = "io.github.oaslananka/ssh-mcp-pro";
10
10
  function getSessionIdFromArgs(args) {
11
11
  if (typeof args !== "object" || args === null || Array.isArray(args)) {
@@ -6,11 +6,11 @@ Release Please v5 prepares Conventional Commit-driven version updates on `main`.
6
6
 
7
7
  When an unreleased version reaches `main`, the `Release` workflow preflights the **frozen dependency installation, full quality check, dependency freshness, package build, SBOM, checksums and GitHub artifact attestations** before Release Please creates the tag. It then attaches that exact prebuilt package and SBOM to the GitHub Release and dispatches an immutable-tag GHCR build. Ordinary main pushes without a new version do not repeat the heavy preflight.
8
8
 
9
- ## One-click npm publication
9
+ ## Automatic npm publication
10
10
 
11
- **Actions → Release → Run workflow → main → Run workflow** is the **manual npm publish button**. No extra version input, stage job or automatic npm publish on release PR merge is involved.
11
+ **Merge the Release Please PR** to publish the new version automatically. After preflight checks, Release Please creates the immutable GitHub Release, attaches the verified assets, and the dependent `publish-npm` job publishes that exact artifact. No separate manual workflow or npm approval step is part of the normal path. `Actions → Release → Run workflow → main` remains available as an idempotent recovery action for a release that has already been created.
12
12
 
13
- The `Publish current GitHub Release to npm` job identifies the `package.json` version on `main`, locates its immutable GitHub Release, downloads the already-built `.tgz` and checksum, verifies the tag's source/version, checks SHA-256, package metadata and the GitHub attestation, then calls **`npm publish` directly with GitHub-hosted Actions OIDC**. A version already public on npm is not published twice. After confirming that exact npm version is public, it dispatches the matching MCP Registry publication job. npm Trusted Publisher must authorize `.github/workflows/release.yml` and permit **direct publication**, not stage-only. This is a provider-side prerequisite, not a second GitHub workflow.
13
+ The `Publish verified GitHub Release to npm` job identifies the `package.json` version on `main`, locates its immutable GitHub Release, downloads the already-built `.tgz` and checksum, verifies the tag's source/version, checks SHA-256, package metadata and the GitHub attestation, then calls **`npm publish` directly with GitHub-hosted Actions OIDC**. A version already public on npm is not published twice. Newly accepted npm packages can remain invisible while registry processing finishes; the publishing job retries public visibility for up to 10 minutes without prompting for manual approval. After confirming that exact npm version is public, it dispatches the matching MCP Registry publication job. npm Trusted Publisher must authorize `.github/workflows/release.yml` and permit **direct publication**, not stage-only. This is a provider-side prerequisite, not a second GitHub workflow.
14
14
 
15
15
  GitHub does not override npm account/package security settings. If the npm publisher is configured for stage-only access or another mandatory owner restriction, the direct publish job fails clearly instead of silently staging or bypassing security. Avoid publishing historical versions to work around an npm account restriction; repair the publisher configuration through authorized account settings.
16
16
 
@@ -18,12 +18,12 @@ GitHub does not override npm account/package security settings. If the npm publi
18
18
 
19
19
  The release workflow triggers `.github/workflows/docker.yml` with the immutable `ssh-mcp-pro-vX.Y.Z` tag. GHCR must grant this repository's GitHub Actions **Write** access to the existing `ghcr.io/oaslananka/ssh-mcp-pro` package. Package access is managed through **GitHub Packages → Package settings → Manage Actions access**. Docker publishing verifies the release tag and package version before pushing both platform tags.
20
20
 
21
- The MCP Registry job requires an existing GitHub Release and the *same publicly visible npm version*. It skips versions already registered and uses GitHub OIDC. There is no daily staged-publication reconciliation job. The manual npm publish workflow dispatches the MCP Registry publication only after npm confirms the version is public.
21
+ The MCP Registry job requires an existing GitHub Release and the *same publicly visible npm version*. It skips versions already registered and uses GitHub OIDC. There is no daily staged-publication reconciliation job. The automatic npm publish job dispatches MCP Registry publication only after npm confirms the matching version is public; manual recovery uses the same checks.
22
22
 
23
23
  ## Verify and troubleshoot
24
24
 
25
25
  - `gh release view ssh-mcp-pro-vX.Y.Z --json assets` — the prepared GitHub Release.
26
- - `gh run list --workflow release.yml` — release preparation and manual npm publication status.
26
+ - `gh run list --workflow release.yml` — release preparation, automatic npm publication and optional manual recovery status.
27
27
  - `npm view ssh-mcp-pro@X.Y.Z version` — independently verify actual npm publication.
28
28
  - `gh run list --workflow docker.yml` and `gh api users/oaslananka/packages/container/ssh-mcp-pro` — GHCR status.
29
29
  - `gh run list --workflow publish-mcp-registry.yml` — MCP Registry publication.
package/mcp.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "ssh-mcp-pro",
3
3
  "display_name": "ssh-mcp-pro",
4
4
  "description": "Secure MCP SSH automation server with policy controls, resources, prompts, stdio, and HTTP.",
5
- "version": "1.4.2",
5
+ "version": "1.4.3",
6
6
  "author": "Osman Aslan",
7
7
  "license": "MIT",
8
8
  "runtime": "node",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ssh-mcp-pro",
3
- "version": "1.4.2",
3
+ "version": "1.4.3",
4
4
  "mcpName": "io.github.oaslananka/ssh-mcp-pro",
5
5
  "description": "Model Context Protocol (MCP) SSH client server for remote automation",
6
6
  "type": "module",
@@ -2,7 +2,7 @@
2
2
  "name": "ssh-mcp-pro",
3
3
  "display_name": "ssh-mcp-pro",
4
4
  "description": "Secure MCP SSH automation server with policy controls, resources, prompts, stdio, and HTTP.",
5
- "version": "1.4.2",
5
+ "version": "1.4.3",
6
6
  "author": "Osman Aslan",
7
7
  "license": "MIT",
8
8
  "runtime": "node",
package/server.json CHANGED
@@ -7,13 +7,13 @@
7
7
  "url": "https://github.com/oaslananka/ssh-mcp-pro",
8
8
  "source": "github"
9
9
  },
10
- "version": "1.4.2",
10
+ "version": "1.4.3",
11
11
  "packages": [
12
12
  {
13
13
  "registryType": "npm",
14
14
  "registryBaseUrl": "https://registry.npmjs.org",
15
15
  "identifier": "ssh-mcp-pro",
16
- "version": "1.4.2",
16
+ "version": "1.4.3",
17
17
  "transport": {
18
18
  "type": "stdio"
19
19
  }
@@ -22,7 +22,7 @@
22
22
  "registryType": "npm",
23
23
  "registryBaseUrl": "https://registry.npmjs.org",
24
24
  "identifier": "ssh-mcp-pro",
25
- "version": "1.4.2",
25
+ "version": "1.4.3",
26
26
  "runtimeHint": "npx",
27
27
  "transport": {
28
28
  "type": "streamable-http",