n8n-nodes-datamcp 0.1.0 → 0.1.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/README.md +29 -47
- package/dist/package.json +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -9,12 +9,13 @@ the tunnel is a routing choice in DataMCP, not a second n8n node.
|
|
|
9
9
|
|
|
10
10
|
## Installation
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
On self-hosted n8n, open **Settings → Community Nodes**, select **Install a
|
|
13
|
+
community node**, and enter `n8n-nodes-datamcp`. Restart n8n if the node does
|
|
14
|
+
not appear immediately. n8n Cloud availability depends on n8n's verification
|
|
15
|
+
and rollout of the package. Do not use an `npx install` command; n8n does not
|
|
16
|
+
provide one.
|
|
15
17
|
|
|
16
|
-
|
|
17
|
-
preview:
|
|
18
|
+
To develop the node from source, run:
|
|
18
19
|
|
|
19
20
|
```bash
|
|
20
21
|
cd n8n-nodes-datamcp
|
|
@@ -24,33 +25,14 @@ npm test
|
|
|
24
25
|
npm run dev
|
|
25
26
|
```
|
|
26
27
|
|
|
27
|
-
The final command opens a local n8n editor with the DataMCP node installed.
|
|
28
|
-
package has been loaded with n8n 2.44.6.
|
|
29
|
-
|
|
30
|
-
For a self-hosted n8n instance, build a supplied archive and install it into
|
|
31
|
-
the n8n user folder:
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
# In this package directory
|
|
35
|
-
npm install
|
|
36
|
-
npm run build
|
|
37
|
-
npm pack --silent
|
|
38
|
-
|
|
39
|
-
# On the self-hosted n8n machine
|
|
40
|
-
mkdir -p ~/.n8n/nodes
|
|
41
|
-
cd ~/.n8n/nodes
|
|
42
|
-
npm install /absolute/path/to/the-copied-package.tgz
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
Copy the archive whose filename `npm pack` prints to the n8n machine, then
|
|
46
|
-
replace the example path. Restart n8n after installation. n8n Cloud cannot
|
|
47
|
-
load this unpublished local package.
|
|
28
|
+
The final command opens a local n8n editor with the DataMCP node installed.
|
|
29
|
+
The published package has also been loaded with n8n 2.44.6.
|
|
48
30
|
|
|
49
31
|
## Credential setup
|
|
50
32
|
|
|
51
33
|
1. Create the database source in DataMCP.
|
|
52
|
-
2. Open **API Keys → Integration
|
|
53
|
-
3. Create a read
|
|
34
|
+
2. Open **API Keys → Integration keys** in the DataMCP dashboard.
|
|
35
|
+
3. Create a read-only key limited to only the source(s) the workflow needs.
|
|
54
36
|
4. Copy the `dm_int_` secret immediately; it is shown once.
|
|
55
37
|
5. In n8n, create **DataMCP Integration API**, choose QA or Production, and
|
|
56
38
|
paste the secret.
|
|
@@ -68,10 +50,9 @@ credential reference, or database address embedded in it.
|
|
|
68
50
|
|
|
69
51
|
### Read Query
|
|
70
52
|
|
|
71
|
-
Read Query is available in QA
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
so on for PostgreSQL, or `?` for MySQL. Values are sent separately from SQL.
|
|
53
|
+
Read Query is available in QA and production. The operation accepts read-only
|
|
54
|
+
SQL and an optional JSON array of bound values. Use `$1`, `$2`, and so on for
|
|
55
|
+
PostgreSQL, or `?` for MySQL. Values are sent separately from SQL.
|
|
75
56
|
|
|
76
57
|
Reads return at most 100 rows and 512 KiB. Each result row becomes one n8n item
|
|
77
58
|
with `row`, `columns`, `values`, `rowCount`, `truncated`, and `sourceId`. An
|
|
@@ -91,8 +72,9 @@ row larger than 512 KiB is rejected rather than silently cut in half.
|
|
|
91
72
|
|
|
92
73
|
### Create Row, Update Row, and Delete Row
|
|
93
74
|
|
|
94
|
-
Row mutations
|
|
95
|
-
|
|
75
|
+
Row mutations are currently enabled in QA but disabled in production. They
|
|
76
|
+
require integration writes to be enabled in your DataMCP environment. Choose
|
|
77
|
+
up to 20 schema-qualified tables in one source, then grant
|
|
96
78
|
only the Create, Update, and Delete actions the workflow needs. A write
|
|
97
79
|
credential may also allow Read Query. Read Query can reach any table covered
|
|
98
80
|
by the database user's SELECT grants in that source; selecting write tables
|
|
@@ -125,22 +107,22 @@ successful read after the entitlement cache expired. A QA rate-limit burst
|
|
|
125
107
|
returned HTTP 429, which a running n8n workflow displayed as a safe rate-limit
|
|
126
108
|
error. The packed archive was checked separately from the source checkout.
|
|
127
109
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
110
|
+
Production Read Query was verified with a source-scoped key and `SELECT 1`;
|
|
111
|
+
the key was revoked after the test. Production row mutations have not yet been
|
|
112
|
+
enabled or verified. Version 0.1.0 was published manually, but did not include
|
|
113
|
+
provenance and therefore did not pass the n8n community-package scanner.
|
|
132
114
|
|
|
133
115
|
The QA credentials and disposable databases used during development are test
|
|
134
116
|
fixtures and must never be included in this package.
|
|
135
117
|
|
|
136
118
|
## Publishing checklist
|
|
137
119
|
|
|
138
|
-
The
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
`@n8n/scan-community-package`
|
|
145
|
-
|
|
146
|
-
cannot validate an unpublished local directory.
|
|
120
|
+
The `v*.*.*` tag runs CI and stages the package from GitHub Actions with
|
|
121
|
+
provenance. Configure npm trusted publishing with stage-only permission for the
|
|
122
|
+
public `datamcpapp/n8n-nodes-datamcp` repository and `publish.yml` workflow
|
|
123
|
+
before tagging a new version. Do not tag until the matching version is merged
|
|
124
|
+
to main and CI passes. A maintainer must review and approve the staged package
|
|
125
|
+
with 2FA before it becomes public. After approval, run n8n's
|
|
126
|
+
`@n8n/scan-community-package` against the published version and submit through
|
|
127
|
+
the n8n Creator Portal only after it passes. The scanner resolves npm packages;
|
|
128
|
+
it cannot validate an unpublished local directory.
|
package/dist/package.json
CHANGED