n8n-mcp-community 0.3.0 → 0.3.1

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
@@ -6,6 +6,30 @@ All notable changes to this project will be documented here. The format follows
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.3.1] - Frozen release candidate
10
+
11
+ Version 0.3.1 is a frozen release candidate. Availability is established only
12
+ by matching npm provenance, GitHub Release assets and signatures, and MCP
13
+ Registry readbacks; this immutable entry is not rewritten after publication.
14
+
15
+ ### Security
16
+
17
+ - The reviewed runtime lock graph now resolves patched `fast-uri`, `hono`,
18
+ `ip-address`, and `qs` releases, clearing the complete npm production audit
19
+ instead of applying the incomplete package-by-package Dependabot proposals.
20
+ - CodeQL initialization and analysis now use the same immutable v4.38.2 commit,
21
+ avoiding mixed-version workflow failures.
22
+ - The release toolchain no longer loads the vulnerable, unfixed `node-forge`
23
+ dependency pulled by the upstream MCPB CLI. It validates the pinned official
24
+ v0.4 schema, creates and extracts bounded canonical ZIPs locally, and keeps
25
+ CMS signing and verification on OpenSSL.
26
+
27
+ ### Changed
28
+
29
+ - Current compatible development releases of `@types/node`, ESLint, `globals`,
30
+ Prettier, `typescript-eslint`, and `yaml` keep the verification toolchain
31
+ current without changing the public 44-tool MCP contract.
32
+
9
33
  ## [0.3.0] - Frozen release candidate
10
34
 
11
35
  Version 0.3.0 is a frozen release candidate. Availability is established only
@@ -343,6 +367,7 @@ Registry readbacks; this immutable entry is not rewritten after publication.
343
367
  publishable history; authenticated public release receipts remain supported.
344
368
 
345
369
  [Unreleased]: #unreleased
370
+ [0.3.1]: #031---frozen-release-candidate
346
371
  [0.3.0]: #030---frozen-release-candidate
347
372
  [0.2.1]: #021---frozen-release-candidate
348
373
  [0.2.0]: #020---frozen-release-candidate
package/README.md CHANGED
@@ -104,7 +104,7 @@ how to check the download.
104
104
  The current source candidate has been verified with:
105
105
 
106
106
  - exactly **44 tools**, **5 resources**, and **4 prompts** over real stdio;
107
- - **313 passing tests** locally on Node.js 24.19.0; CI and release gates require
107
+ - **319 passing tests** locally on Node.js 24.21.0; CI and release gates require
108
108
  the pinned Node.js 22.23.1 and 24.18.0 matrix;
109
109
  - zero findings from Gitleaks, Semgrep, Trivy, and both project-root
110
110
  production/full `npm audit` runs; all three source scanners are reproduced in
@@ -112,7 +112,7 @@ The current source candidate has been verified with:
112
112
  - a separate no-override consumer install that resolves the patched
113
113
  `@hono/node-server` 2.x line, requires a zero-finding production audit, and
114
114
  proves the stdio runtime and exact 44/5/4 inventory;
115
- - a reproducible dependency-license gate covering 224 installed package paths;
115
+ - a reproducible dependency-license gate covering 186 installed package paths;
116
116
  - bounded same-origin HTTP contracts and zero-request policy-denial tests;
117
117
  - all 44 compiled tool lifecycles on disposable n8n Community 2.30.5 and 2.30.7
118
118
  instances with egress isolation, revoked keys, cleanup, and zero residue; and
@@ -291,7 +291,7 @@ API. The project does not redistribute the `n8n-nodes-base` catalog and does not
291
291
  use browser cookies, interactive session routes, or runtime package downloads to
292
292
  construct one.
293
293
 
294
- The v0.3.0 candidate surface intentionally excludes arbitrary workflow execution,
294
+ The v0.3.x surface intentionally excludes arbitrary workflow execution,
295
295
  credential/workflow transfer, folders, data tables, beta evaluation endpoints,
296
296
  and execution annotations. See the [roadmap](ROADMAP.md) for the annotation
297
297
  proposal retained outside the release target.
package/ROADMAP.md CHANGED
@@ -18,7 +18,7 @@ maintainer approval.
18
18
 
19
19
  ## Accepted backlog proposal
20
20
 
21
- Execution annotations remain a coherent two-tool proposal outside v0.3.0:
21
+ Execution annotations remain a coherent two-tool proposal outside v0.3.x:
22
22
 
23
23
  - `n8n_executions_get_tags`
24
24
  - `n8n_executions_update_tags`
@@ -5,20 +5,18 @@ licenses; `package-lock.json` is the exact dependency record and
5
5
  `npm run licenses:check` validates every installed package path.
6
6
 
7
7
  The npm runtime tarball does not bundle dependencies. The following packages
8
- are development-only transitive dependencies of ESLint or the MCPB build CLI.
8
+ are development-only transitive dependencies of ESLint.
9
9
  Their published npm tarballs declare an SPDX license but omit a top-level
10
10
  LICENSE or NOTICE file. They are exact-pinned in the lockfile, are not present
11
11
  in the runtime package or MCPB, and are accepted only at the listed version,
12
12
  license, repository, and integrity hash:
13
13
 
14
- | Package | License | Source or immutable package record |
15
- | ----------------------- | ------------ | ----------------------------------------------------------------------------------------------- |
16
- | `@humanfs/types@0.15.0` | Apache-2.0 | [humanwhocodes/humanfs](https://github.com/humanwhocodes/humanfs) |
17
- | `esrecurse@4.3.0` | BSD-2-Clause | [estools/esrecurse](https://github.com/estools/esrecurse) |
18
- | `flora-colossus@2.0.0` | MIT | [MarshallOfSound/flora-colossus](https://github.com/MarshallOfSound/flora-colossus/tree/v2.0.0) |
19
- | `imurmurhash@0.1.4` | MIT | [jensyt/imurmurhash-js](https://github.com/jensyt/imurmurhash-js) |
20
- | `keyv@4.5.4` | MIT | [npm registry record](https://registry.npmjs.org/keyv/4.5.4) |
21
- | `natural-compare@1.4.0` | MIT | [litejs/natural-compare-lite](https://github.com/litejs/natural-compare-lite) |
14
+ | Package | License | Source or immutable package record |
15
+ | ----------------------- | ------------ | ----------------------------------------------------------------------------- |
16
+ | `@humanfs/types@0.15.0` | Apache-2.0 | [humanwhocodes/humanfs](https://github.com/humanwhocodes/humanfs) |
17
+ | `esrecurse@4.3.0` | BSD-2-Clause | [estools/esrecurse](https://github.com/estools/esrecurse) |
18
+ | `imurmurhash@0.1.4` | MIT | [jensyt/imurmurhash-js](https://github.com/jensyt/imurmurhash-js) |
19
+ | `natural-compare@1.4.0` | MIT | [litejs/natural-compare-lite](https://github.com/litejs/natural-compare-lite) |
22
20
 
23
21
  Their exact SHA-512 integrity values are enforced in
24
22
  `scripts/verify-dependency-licenses.mjs`. Any version, license, integrity, role,
@@ -37,13 +35,14 @@ the license file; the official license text and required notice link are
37
35
  <https://blueoakcouncil.org/license/1.0.0>. It is not bundled in the npm runtime
38
36
  tarball.
39
37
 
40
- Two development-only MCPB build dependencies offer alternative licenses. This
41
- project selects the permissive alternative shown below. The gate pins the exact
42
- version, declared expression, selected license, repository, and integrity hash;
43
- both installed packages include the selected license text and neither is bundled
44
- in the npm runtime tarball or MCPB.
45
-
46
- | Package | Declared expression | Selected license |
47
- | ------------------ | ------------------------- | ---------------- |
48
- | `node-forge@1.4.0` | `BSD-3-Clause OR GPL-2.0` | BSD-3-Clause |
49
- | `type-fest@0.21.3` | `MIT OR CC0-1.0` | MIT |
38
+ The pinned `mcpb/mcpb-manifest-v0.4.schema.json` file comes from the official
39
+ `@anthropic-ai/mcpb@2.1.2` source at immutable tag `v2.1.2` in
40
+ [modelcontextprotocol/mcpb](https://github.com/modelcontextprotocol/mcpb/tree/v2.1.2).
41
+ Copyright 2025 Anthropic, PBC. It is used under the MIT License reproduced in
42
+ `mcpb/OFFICIAL_SCHEMA_LICENSE`. The immutable upstream schema has SHA-256
43
+ `068557824c651d6d49b86ad132adeafe62ca788d918b3e1e2b224bf0f91320fd`.
44
+ The checked-in JSON is semantically identical but formatted with the repository's
45
+ Prettier policy; its SHA-256 is
46
+ `dae6c4a11da73fcce9adda27dface6049a90b31765623e0a445e485b321e4d46`.
47
+ The schema is a development-time validator and is not included in the npm
48
+ runtime tarball or the MCPB artifact.
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export const PACKAGE_VERSION = "0.3.0";
1
+ export const PACKAGE_VERSION = "0.3.1";
@@ -9,7 +9,7 @@ release evidence from the client-matrix gates that remain open.
9
9
  | ---------------------- | ------------------------------------------------------------- |
10
10
  | Node.js 22.23.1 | Pinned CI/release target; exact candidate proof comes from CI |
11
11
  | Node.js 24.18.0 | Pinned CI/release target; exact candidate proof comes from CI |
12
- | Node.js 24.19.0 | Current complete local candidate gate |
12
+ | Node.js 24.21.0 | Current complete local candidate gate |
13
13
  | MCP transport | stdio inventory verified as 44 tools, 5 resources, 4 prompts |
14
14
  | macOS on Apple silicon | Development and local verification environment |
15
15
  | Linux and Windows | No public release claim yet |
@@ -18,7 +18,7 @@ release evidence from the client-matrix gates that remain open.
18
18
 
19
19
  The package declares Node.js `>=22.0.0`. That engine range is an acceptance
20
20
  floor, not evidence that every later major has completed the release matrix.
21
- The supported release lines for v0.3.0 are Node.js 22 and 24.
21
+ The supported release lines for v0.3.x are Node.js 22 and 24.
22
22
 
23
23
  ## Upgrading to 0.3.0
24
24
 
@@ -48,7 +48,7 @@ names. MCP clients receive these constraints when they reconnect.
48
48
  The connection values are unchanged. Global npm users keep the same client
49
49
  entry. Users who followed the 0.1.x npx guide must replace the pinned
50
50
  `n8n-mcp-community@0.1.4` argument with `n8n-mcp-community@latest` or
51
- `n8n-mcp-community@0.3.0`. After updating, restart the MCP client and confirm the
51
+ `n8n-mcp-community@0.3.1`. After updating, restart the MCP client and confirm the
52
52
  version and 44/5/4 inventory.
53
53
 
54
54
  Since 0.2.0, the 14 unsafe tools no longer publish or require a `confirmation` field;
@@ -59,7 +59,7 @@ update and rollback steps.
59
59
 
60
60
  ## n8n Community Edition
61
61
 
62
- The v0.3.0 floor candidate is n8n Community Edition 2.30.5, with 2.30.7 as the
62
+ The v0.3.x floor candidate is n8n Community Edition 2.30.5, with 2.30.7 as the
63
63
  current comparison target. The compiled public 44-tool candidate passed fresh,
64
64
  disposable lifecycles on both versions with synthetic fixtures, API-key
65
65
  revocation, resource cleanup, enforced candidate-process egress isolation, and
@@ -71,7 +71,7 @@ browser cookies, interactive `/rest` routes, paid project transfers, arbitrary
71
71
  workflow execution, or runtime node-catalog downloads.
72
72
 
73
73
  `n8n_credentials_list` is supported only from n8n 2.30.5 onward. Project
74
- selectors are intentionally absent because v0.3.0 does not present paid project
74
+ selectors are intentionally absent because v0.3.x does not present paid project
75
75
  capabilities as Community features. Other tools may also depend on endpoint
76
76
  availability and the permissions assigned to the API key; an HTTP 403 does not
77
77
  by itself mean the endpoint is absent.
@@ -110,7 +110,7 @@ surface.
110
110
 
111
111
  ## Deliberate exclusions
112
112
 
113
- v0.3.0 does not include:
113
+ v0.3.x does not include:
114
114
 
115
115
  - folders or data tables;
116
116
  - beta evaluation endpoints;
@@ -92,7 +92,7 @@ unsafe tools.
92
92
 
93
93
  Global npm users do not edit the client entry. If you followed the 0.1.x npx
94
94
  guide, your client is pinned to `n8n-mcp-community@0.1.4`: replace that argument
95
- with `n8n-mcp-community@latest` or `n8n-mcp-community@0.3.0`. Restart the client,
95
+ with `n8n-mcp-community@latest` or `n8n-mcp-community@0.3.1`. Restart the client,
96
96
  run the npx version check below, and confirm the 44/5/4 inventory.
97
97
 
98
98
  If custom code sends raw tool-call JSON, remove the former `confirmation` field
@@ -53,15 +53,14 @@ fails on:
53
53
  - missing license metadata;
54
54
  - a package that declares a license or notice file but omits it.
55
55
 
56
- The current source candidate covers 224 installed package paths representing
57
- 222 unique components: 93 runtime paths and 131 development paths. After two
58
- explicit permissive-alternative selections, the effective licenses are 184 MIT,
59
- 15 ISC, 13 Apache-2.0, 7 BSD-2-Clause, 4 BSD-3-Clause, and 1
60
- BlueOak-1.0.0, with no missing integrity, license, or documented notice. Six
61
- exact-pinned development-only packages use the reviewed missing-file exception,
62
- and two development-only packages use exact-pinned alternative-license
63
- selections described in [third-party notices](../THIRD_PARTY_NOTICES.md). These
64
- counts must be regenerated after any lockfile change.
56
+ The current source candidate covers 186 installed package paths representing
57
+ 185 unique components: 93 runtime paths and 93 development paths. The effective
58
+ licenses are 151 MIT, 11 ISC, 13 Apache-2.0, 7 BSD-2-Clause, 3 BSD-3-Clause,
59
+ and 1 BlueOak-1.0.0, with no missing integrity, license, or documented notice.
60
+ Four exact-pinned development-only packages use the reviewed missing-file
61
+ exception described in [third-party notices](../THIRD_PARTY_NOTICES.md). No
62
+ package currently needs an alternative-license selection. These counts must be
63
+ regenerated after any lockfile change.
65
64
 
66
65
  PyYAML 6.0.3 was used as local audit tooling to parse official OpenAPI material
67
66
  and compare endpoint schemas. It is not imported by the TypeScript runtime or
@@ -83,9 +82,9 @@ Generate the release runtime CycloneDX SBOM from the committed lockfile with:
83
82
  npm run sbom > sbom.cdx.json
84
83
  ```
85
84
 
86
- This runtime-only SBOM contains 75 unique production components for the shared
85
+ This runtime-only SBOM contains 78 unique production components for the shared
87
86
  npm/MCPB runtime graph. Maintainers may separately generate the complete
88
- 222-component development graph with `npm run sbom:full`; it is audit evidence,
87
+ 185-component graph with `npm run sbom:full`; it is audit evidence,
89
88
  not the release artifact SBOM. Every release candidate must carry a runtime
90
89
  SBOM for the npm package and MCPB, plus SHA-256 checksums and signatures tied to
91
90
  the exact Git revision; availability is established only by the corresponding
@@ -1,6 +1,6 @@
1
1
  # Security model
2
2
 
3
- This document describes the controls and residual risks of the v0.3.0 source
3
+ This document describes the controls and residual risks of the v0.3.1 source
4
4
  candidate. It is a threat model, not a claim that the software or the connected
5
5
  n8n instance is invulnerable.
6
6
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n8n-mcp-community",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "A security-focused MCP server for self-hosted n8n Community Edition.",
5
5
  "private": false,
6
6
  "releaseState": "candidate",
@@ -62,9 +62,6 @@
62
62
  "engines": {
63
63
  "node": ">=22.0.0"
64
64
  },
65
- "overrides": {
66
- "tmp": "0.2.7"
67
- },
68
65
  "allowScripts": {},
69
66
  "scripts": {
70
67
  "audit:full": "node scripts/run-npm-audit.mjs full",
@@ -118,17 +115,16 @@
118
115
  "zod": "3.25.76"
119
116
  },
120
117
  "devDependencies": {
121
- "@anthropic-ai/mcpb": "2.1.2",
122
118
  "@eslint/js": "10.0.1",
123
- "@types/node": "22.20.1",
119
+ "@types/node": "22.20.5",
124
120
  "ajv": "8.20.0",
125
121
  "ajv-formats": "3.0.1",
126
- "eslint": "10.8.0",
122
+ "eslint": "10.12.0",
127
123
  "fflate": "0.8.3",
128
- "globals": "17.9.0",
129
- "prettier": "3.9.6",
124
+ "globals": "17.13.0",
125
+ "prettier": "3.9.9",
130
126
  "typescript": "5.9.3",
131
- "typescript-eslint": "8.65.0",
132
- "yaml": "2.9.0"
127
+ "typescript-eslint": "8.71.0",
128
+ "yaml": "2.9.1"
133
129
  }
134
130
  }
package/server.json CHANGED
@@ -8,13 +8,13 @@
8
8
  "url": "https://github.com/drzamarian/n8n-mcp-community",
9
9
  "source": "github"
10
10
  },
11
- "version": "0.3.0",
11
+ "version": "0.3.1",
12
12
  "packages": [
13
13
  {
14
14
  "registryType": "npm",
15
15
  "registryBaseUrl": "https://registry.npmjs.org",
16
16
  "identifier": "n8n-mcp-community",
17
- "version": "0.3.0",
17
+ "version": "0.3.1",
18
18
  "transport": {
19
19
  "type": "stdio"
20
20
  },