@ductape/mcp 0.2.25 → 0.2.26

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.
Files changed (2) hide show
  1. package/dist/index.js +18 -9
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -6146,24 +6146,33 @@ async function main() {
6146
6146
  ' - Atlas (MongoDB Atlas) import flow — service identifier is "atlas-cluster" (required, not optional):\n' +
6147
6147
  ' IMPORTANT: dbName is mandatory for every MongoDB env — see "MONGODB CLOUD CONNECTION RULE" in the\n' +
6148
6148
  ' databases module above. The SDK enforces this at create time; omitting it throws a validation error.\n' +
6149
+ ' An existing Atlas cluster is NEVER a blocker. Atlas has no concept of provisioning a new cluster\n' +
6150
+ ' per database — a MongoDB "database" is just a named namespace inside a cluster, created on first\n' +
6151
+ ' write. Any number of database components may point at the SAME cluster (same cloud connection,\n' +
6152
+ ' same resource/cluster name) as long as each uses a DIFFERENT dbName. Needing a new database on a\n' +
6153
+ ' cluster that already has one imported is the normal path, not a conflict — do not stop or ask\n' +
6154
+ ' the user to provision a new cluster; just import again with a different dbName.\n' +
6149
6155
  ' Step 1 — discover the cluster name:\n' +
6150
6156
  ' ductape_cli("cloud resources list -f /tmp/atlas-list.json --json")\n' +
6151
6157
  ' File: {"cloud": "<atlas-connection-tag>", "service": "atlas-cluster"}\n' +
6152
6158
  ' Returns a list of clusters; note the "name" field (this is your resource identifier).\n' +
6153
- ' Step 2 — check if the database component already exists:\n' +
6159
+ ' Step 2 — decide new database vs. repoint an existing one:\n' +
6154
6160
  ' ductape_cli("resources databases list <product_tag> --json")\n' +
6155
- ' If a component already uses the same Atlas cluster, do NOT re-import instead update it:\n' +
6156
- ' use ductape_cli resource update when supported; otherwise update it in Workbench\n' +
6157
- ' Add or change the dbName in the env\'s connection_url to switch databases on the same cluster.\n' +
6158
- ' Step 3 import (only if no existing component uses this cluster):\n' +
6161
+ ' Only skip importing when you want an EXISTING component (same product, env, and dbName) to\n' +
6162
+ ' keep pointing at the same database that is a repoint, not a new database, and should go\n' +
6163
+ ' through ductape_cli resource update (or Workbench) instead of a fresh import.\n' +
6164
+ ' Otherwiseincluding "same cluster, different database" proceed to Step 3 with a new\n' +
6165
+ ' component tag and a dbName distinct from every other component already on that cluster.\n' +
6166
+ ' Step 3 — import (one entry per new database; reusing a cluster across components is expected):\n' +
6159
6167
  ' Use import-persist-all with one entry per product env. Required fields per entry:\n' +
6160
6168
  ' cloud (connection tag), service: "atlas-cluster", type: "databases",\n' +
6161
6169
  ' product, component (new tag), env, resource (cluster name from Step 1),\n' +
6162
- ' dbName (the MongoDB database name to connect to — required for Atlas).\n' +
6163
- ' Example: [{"cloud":"atlas-tag","service":"atlas-cluster","type":"databases",\n' +
6164
- ' "product":"my-product","component":"core-db","env":"snd","resource":"Cluster0","dbName":"myapp_snd"},\n' +
6170
+ ' dbName (the MongoDB database name to connect to — must be unique per cluster, not per workspace).\n' +
6171
+ ' Example — a second database ("billing-db") added to the same cluster as an existing "core-db":\n' +
6172
+ ' [{"cloud":"atlas-tag","service":"atlas-cluster","type":"databases",\n' +
6173
+ ' "product":"my-product","component":"billing-db","env":"snd","resource":"Cluster0","dbName":"billing_snd"},\n' +
6165
6174
  ' {"cloud":"atlas-tag","service":"atlas-cluster","type":"databases",\n' +
6166
- ' "product":"my-product","component":"core-db","env":"prd","resource":"Cluster0","dbName":"myapp_prd"}]\n' +
6175
+ ' "product":"my-product","component":"billing-db","env":"prd","resource":"Cluster0","dbName":"billing_prd"}]\n' +
6167
6176
  ' - Message broker / event broker import:\n' +
6168
6177
  ' CLI accepts these aliases for the messageBrokers module: events, event, broker, brokers, message-brokers.\n' +
6169
6178
  ' List existing brokers: ductape_cli("resources events list --json")\n' +
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ductape/mcp",
3
- "version": "0.2.25",
3
+ "version": "0.2.26",
4
4
  "description": "MCP server that exposes Ductape SDK operations via the backend proxy",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",