mongodb-mcp-server 0.3.1-prerelease.1 → 1.0.0-prerelease.2
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 +137 -63
- package/dist/cjs/common/config.d.ts +3 -0
- package/dist/cjs/common/config.d.ts.map +1 -1
- package/dist/cjs/common/config.js +18 -8
- package/dist/cjs/common/config.js.map +1 -1
- package/dist/cjs/common/exportsManager.d.ts +6 -5
- package/dist/cjs/common/exportsManager.d.ts.map +1 -1
- package/dist/cjs/common/exportsManager.js +22 -25
- package/dist/cjs/common/exportsManager.js.map +1 -1
- package/dist/cjs/common/logger.d.ts +1 -0
- package/dist/cjs/common/logger.d.ts.map +1 -1
- package/dist/cjs/common/logger.js +1 -0
- package/dist/cjs/common/logger.js.map +1 -1
- package/dist/cjs/common/packageInfo.js +1 -1
- package/dist/cjs/elicitation.d.ts +25 -0
- package/dist/cjs/elicitation.d.ts.map +1 -0
- package/dist/cjs/elicitation.js +50 -0
- package/dist/cjs/elicitation.js.map +1 -0
- package/dist/cjs/lib.d.ts +1 -1
- package/dist/cjs/lib.d.ts.map +1 -1
- package/dist/cjs/lib.js +2 -1
- package/dist/cjs/lib.js.map +1 -1
- package/dist/cjs/resources/common/exportedData.d.ts.map +1 -1
- package/dist/cjs/resources/common/exportedData.js +12 -3
- package/dist/cjs/resources/common/exportedData.js.map +1 -1
- package/dist/cjs/server.d.ts +4 -1
- package/dist/cjs/server.d.ts.map +1 -1
- package/dist/cjs/server.js +9 -2
- package/dist/cjs/server.js.map +1 -1
- package/dist/cjs/telemetry/types.d.ts +1 -0
- package/dist/cjs/telemetry/types.d.ts.map +1 -1
- package/dist/cjs/tools/args.d.ts +22 -0
- package/dist/cjs/tools/args.d.ts.map +1 -0
- package/dist/cjs/tools/args.js +50 -0
- package/dist/cjs/tools/args.js.map +1 -0
- package/dist/cjs/tools/atlas/atlasTool.d.ts +1 -2
- package/dist/cjs/tools/atlas/atlasTool.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/atlasTool.js.map +1 -1
- package/dist/cjs/tools/atlas/connect/connectCluster.d.ts +7 -4
- package/dist/cjs/tools/atlas/connect/connectCluster.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/connect/connectCluster.js +8 -6
- package/dist/cjs/tools/atlas/connect/connectCluster.js.map +1 -1
- package/dist/cjs/tools/atlas/create/createAccessList.d.ts +9 -1
- package/dist/cjs/tools/atlas/create/createAccessList.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/create/createAccessList.js +30 -13
- package/dist/cjs/tools/atlas/create/createAccessList.js.map +1 -1
- package/dist/cjs/tools/atlas/create/createDBUser.d.ts +22 -2
- package/dist/cjs/tools/atlas/create/createDBUser.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/create/createDBUser.js +33 -22
- package/dist/cjs/tools/atlas/create/createDBUser.js.map +1 -1
- package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts +4 -5
- package/dist/cjs/tools/atlas/create/createFreeCluster.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/create/createFreeCluster.js +4 -4
- package/dist/cjs/tools/atlas/create/createFreeCluster.js.map +1 -1
- package/dist/cjs/tools/atlas/create/createProject.d.ts +7 -4
- package/dist/cjs/tools/atlas/create/createProject.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/create/createProject.js +7 -4
- package/dist/cjs/tools/atlas/create/createProject.js.map +1 -1
- package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts +5 -3
- package/dist/cjs/tools/atlas/read/inspectAccessList.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/inspectAccessList.js +7 -4
- package/dist/cjs/tools/atlas/read/inspectAccessList.js.map +1 -1
- package/dist/cjs/tools/atlas/read/inspectCluster.d.ts +7 -4
- package/dist/cjs/tools/atlas/read/inspectCluster.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/inspectCluster.js +8 -5
- package/dist/cjs/tools/atlas/read/inspectCluster.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listAlerts.d.ts +5 -3
- package/dist/cjs/tools/atlas/read/listAlerts.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listAlerts.js +7 -4
- package/dist/cjs/tools/atlas/read/listAlerts.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listClusters.d.ts +4 -2
- package/dist/cjs/tools/atlas/read/listClusters.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listClusters.js +13 -10
- package/dist/cjs/tools/atlas/read/listClusters.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listDBUsers.d.ts +4 -2
- package/dist/cjs/tools/atlas/read/listDBUsers.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listDBUsers.js +6 -3
- package/dist/cjs/tools/atlas/read/listDBUsers.js.map +1 -1
- package/dist/cjs/tools/atlas/read/listProjects.d.ts +4 -2
- package/dist/cjs/tools/atlas/read/listProjects.d.ts.map +1 -1
- package/dist/cjs/tools/atlas/read/listProjects.js +6 -3
- package/dist/cjs/tools/atlas/read/listProjects.js.map +1 -1
- package/dist/cjs/tools/mongodb/connect/connect.d.ts +2 -5
- package/dist/cjs/tools/mongodb/connect/connect.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/connect/connect.js +2 -2
- package/dist/cjs/tools/mongodb/connect/connect.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts +1 -0
- package/dist/cjs/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/deleteMany.js +10 -0
- package/dist/cjs/tools/mongodb/delete/deleteMany.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts +1 -0
- package/dist/cjs/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropCollection.js +5 -0
- package/dist/cjs/tools/mongodb/delete/dropCollection.js.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts +1 -0
- package/dist/cjs/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/delete/dropDatabase.js +5 -0
- package/dist/cjs/tools/mongodb/delete/dropDatabase.js.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/logs.d.ts +1 -1
- package/dist/cjs/tools/mongodb/metadata/logs.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/metadata/logs.js +9 -11
- package/dist/cjs/tools/mongodb/metadata/logs.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/aggregate.d.ts.map +1 -1
- package/dist/cjs/tools/mongodb/read/aggregate.js +11 -2
- package/dist/cjs/tools/mongodb/read/aggregate.js.map +1 -1
- package/dist/cjs/tools/mongodb/read/export.js +1 -1
- package/dist/cjs/tools/mongodb/read/export.js.map +1 -1
- package/dist/cjs/tools/tool.d.ts +20 -5
- package/dist/cjs/tools/tool.d.ts.map +1 -1
- package/dist/cjs/tools/tool.js +32 -1
- package/dist/cjs/tools/tool.js.map +1 -1
- package/dist/cjs/transports/base.d.ts.map +1 -1
- package/dist/cjs/transports/base.js +3 -0
- package/dist/cjs/transports/base.js.map +1 -1
- package/dist/cjs/transports/streamableHttp.d.ts +1 -0
- package/dist/cjs/transports/streamableHttp.d.ts.map +1 -1
- package/dist/cjs/transports/streamableHttp.js +13 -0
- package/dist/cjs/transports/streamableHttp.js.map +1 -1
- package/dist/esm/common/config.d.ts +3 -0
- package/dist/esm/common/config.d.ts.map +1 -1
- package/dist/esm/common/config.js +15 -5
- package/dist/esm/common/config.js.map +1 -1
- package/dist/esm/common/exportsManager.d.ts +6 -5
- package/dist/esm/common/exportsManager.d.ts.map +1 -1
- package/dist/esm/common/exportsManager.js +21 -24
- package/dist/esm/common/exportsManager.js.map +1 -1
- package/dist/esm/common/logger.d.ts +1 -0
- package/dist/esm/common/logger.d.ts.map +1 -1
- package/dist/esm/common/logger.js +1 -0
- package/dist/esm/common/logger.js.map +1 -1
- package/dist/esm/common/packageInfo.js +1 -1
- package/dist/esm/elicitation.d.ts +25 -0
- package/dist/esm/elicitation.d.ts.map +1 -0
- package/dist/esm/elicitation.js +46 -0
- package/dist/esm/elicitation.js.map +1 -0
- package/dist/esm/lib.d.ts +1 -1
- package/dist/esm/lib.d.ts.map +1 -1
- package/dist/esm/lib.js +1 -1
- package/dist/esm/lib.js.map +1 -1
- package/dist/esm/resources/common/exportedData.d.ts.map +1 -1
- package/dist/esm/resources/common/exportedData.js +12 -3
- package/dist/esm/resources/common/exportedData.js.map +1 -1
- package/dist/esm/server.d.ts +4 -1
- package/dist/esm/server.d.ts.map +1 -1
- package/dist/esm/server.js +9 -2
- package/dist/esm/server.js.map +1 -1
- package/dist/esm/telemetry/types.d.ts +1 -0
- package/dist/esm/telemetry/types.d.ts.map +1 -1
- package/dist/esm/tools/args.d.ts +22 -0
- package/dist/esm/tools/args.d.ts.map +1 -0
- package/dist/esm/tools/args.js +47 -0
- package/dist/esm/tools/args.js.map +1 -0
- package/dist/esm/tools/atlas/atlasTool.d.ts +1 -2
- package/dist/esm/tools/atlas/atlasTool.d.ts.map +1 -1
- package/dist/esm/tools/atlas/atlasTool.js.map +1 -1
- package/dist/esm/tools/atlas/connect/connectCluster.d.ts +7 -4
- package/dist/esm/tools/atlas/connect/connectCluster.d.ts.map +1 -1
- package/dist/esm/tools/atlas/connect/connectCluster.js +7 -5
- package/dist/esm/tools/atlas/connect/connectCluster.js.map +1 -1
- package/dist/esm/tools/atlas/create/createAccessList.d.ts +9 -1
- package/dist/esm/tools/atlas/create/createAccessList.d.ts.map +1 -1
- package/dist/esm/tools/atlas/create/createAccessList.js +29 -12
- package/dist/esm/tools/atlas/create/createAccessList.js.map +1 -1
- package/dist/esm/tools/atlas/create/createDBUser.d.ts +22 -2
- package/dist/esm/tools/atlas/create/createDBUser.d.ts.map +1 -1
- package/dist/esm/tools/atlas/create/createDBUser.js +32 -21
- package/dist/esm/tools/atlas/create/createDBUser.js.map +1 -1
- package/dist/esm/tools/atlas/create/createFreeCluster.d.ts +4 -5
- package/dist/esm/tools/atlas/create/createFreeCluster.d.ts.map +1 -1
- package/dist/esm/tools/atlas/create/createFreeCluster.js +4 -4
- package/dist/esm/tools/atlas/create/createFreeCluster.js.map +1 -1
- package/dist/esm/tools/atlas/create/createProject.d.ts +7 -4
- package/dist/esm/tools/atlas/create/createProject.d.ts.map +1 -1
- package/dist/esm/tools/atlas/create/createProject.js +6 -3
- package/dist/esm/tools/atlas/create/createProject.js.map +1 -1
- package/dist/esm/tools/atlas/read/inspectAccessList.d.ts +5 -3
- package/dist/esm/tools/atlas/read/inspectAccessList.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/inspectAccessList.js +6 -3
- package/dist/esm/tools/atlas/read/inspectAccessList.js.map +1 -1
- package/dist/esm/tools/atlas/read/inspectCluster.d.ts +7 -4
- package/dist/esm/tools/atlas/read/inspectCluster.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/inspectCluster.js +7 -4
- package/dist/esm/tools/atlas/read/inspectCluster.js.map +1 -1
- package/dist/esm/tools/atlas/read/listAlerts.d.ts +5 -3
- package/dist/esm/tools/atlas/read/listAlerts.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listAlerts.js +6 -3
- package/dist/esm/tools/atlas/read/listAlerts.js.map +1 -1
- package/dist/esm/tools/atlas/read/listClusters.d.ts +4 -2
- package/dist/esm/tools/atlas/read/listClusters.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listClusters.js +12 -9
- package/dist/esm/tools/atlas/read/listClusters.js.map +1 -1
- package/dist/esm/tools/atlas/read/listDBUsers.d.ts +4 -2
- package/dist/esm/tools/atlas/read/listDBUsers.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listDBUsers.js +5 -2
- package/dist/esm/tools/atlas/read/listDBUsers.js.map +1 -1
- package/dist/esm/tools/atlas/read/listProjects.d.ts +4 -2
- package/dist/esm/tools/atlas/read/listProjects.d.ts.map +1 -1
- package/dist/esm/tools/atlas/read/listProjects.js +5 -2
- package/dist/esm/tools/atlas/read/listProjects.js.map +1 -1
- package/dist/esm/tools/mongodb/connect/connect.d.ts +2 -5
- package/dist/esm/tools/mongodb/connect/connect.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/connect/connect.js +2 -2
- package/dist/esm/tools/mongodb/connect/connect.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/deleteMany.d.ts +1 -0
- package/dist/esm/tools/mongodb/delete/deleteMany.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/deleteMany.js +10 -0
- package/dist/esm/tools/mongodb/delete/deleteMany.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropCollection.d.ts +1 -0
- package/dist/esm/tools/mongodb/delete/dropCollection.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropCollection.js +5 -0
- package/dist/esm/tools/mongodb/delete/dropCollection.js.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts +1 -0
- package/dist/esm/tools/mongodb/delete/dropDatabase.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/delete/dropDatabase.js +5 -0
- package/dist/esm/tools/mongodb/delete/dropDatabase.js.map +1 -1
- package/dist/esm/tools/mongodb/metadata/logs.d.ts +1 -1
- package/dist/esm/tools/mongodb/metadata/logs.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/metadata/logs.js +9 -11
- package/dist/esm/tools/mongodb/metadata/logs.js.map +1 -1
- package/dist/esm/tools/mongodb/read/aggregate.d.ts.map +1 -1
- package/dist/esm/tools/mongodb/read/aggregate.js +11 -2
- package/dist/esm/tools/mongodb/read/aggregate.js.map +1 -1
- package/dist/esm/tools/mongodb/read/export.js +1 -1
- package/dist/esm/tools/mongodb/read/export.js.map +1 -1
- package/dist/esm/tools/tool.d.ts +20 -5
- package/dist/esm/tools/tool.d.ts.map +1 -1
- package/dist/esm/tools/tool.js +32 -1
- package/dist/esm/tools/tool.js.map +1 -1
- package/dist/esm/transports/base.d.ts.map +1 -1
- package/dist/esm/transports/base.js +3 -0
- package/dist/esm/transports/base.js.map +1 -1
- package/dist/esm/transports/streamableHttp.d.ts +1 -0
- package/dist/esm/transports/streamableHttp.d.ts.map +1 -1
- package/dist/esm/transports/streamableHttp.js +13 -0
- package/dist/esm/transports/streamableHttp.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AtlasArgs = exports.CommonArgs = exports.ALLOWED_PROJECT_NAME_CHARACTERS_ERROR = exports.ALLOWED_CLUSTER_NAME_CHARACTERS_ERROR = exports.ALLOWED_REGION_CHARACTERS_ERROR = exports.ALLOWED_USERNAME_CHARACTERS_ERROR = exports.NO_UNICODE_ERROR = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const NO_UNICODE_REGEX = /^[\x20-\x7E]*$/;
|
|
6
|
+
exports.NO_UNICODE_ERROR = "String cannot contain special characters or Unicode symbols";
|
|
7
|
+
const ALLOWED_USERNAME_CHARACTERS_REGEX = /^[a-zA-Z0-9._-]+$/;
|
|
8
|
+
exports.ALLOWED_USERNAME_CHARACTERS_ERROR = "Username can only contain letters, numbers, dots, hyphens, and underscores";
|
|
9
|
+
const ALLOWED_REGION_CHARACTERS_REGEX = /^[a-zA-Z0-9_-]+$/;
|
|
10
|
+
exports.ALLOWED_REGION_CHARACTERS_ERROR = "Region can only contain letters, numbers, hyphens, and underscores";
|
|
11
|
+
const ALLOWED_CLUSTER_NAME_CHARACTERS_REGEX = /^[a-zA-Z0-9_-]+$/;
|
|
12
|
+
exports.ALLOWED_CLUSTER_NAME_CHARACTERS_ERROR = "Cluster names can only contain ASCII letters, numbers, and hyphens.";
|
|
13
|
+
const ALLOWED_PROJECT_NAME_CHARACTERS_REGEX = /^[a-zA-Z0-9\s()@&+:._',-]+$/;
|
|
14
|
+
exports.ALLOWED_PROJECT_NAME_CHARACTERS_ERROR = "Project names can't be longer than 64 characters and can only contain letters, numbers, spaces, and the following symbols: ( ) @ & + : . _ - ' ,";
|
|
15
|
+
exports.CommonArgs = {
|
|
16
|
+
string: () => zod_1.z.string().regex(NO_UNICODE_REGEX, exports.NO_UNICODE_ERROR),
|
|
17
|
+
objectId: (fieldName) => zod_1.z
|
|
18
|
+
.string()
|
|
19
|
+
.min(1, `${fieldName} is required`)
|
|
20
|
+
.length(24, `${fieldName} must be exactly 24 characters`)
|
|
21
|
+
.regex(/^[0-9a-fA-F]+$/, `${fieldName} must contain only hexadecimal characters`),
|
|
22
|
+
};
|
|
23
|
+
exports.AtlasArgs = {
|
|
24
|
+
projectId: () => exports.CommonArgs.objectId("projectId"),
|
|
25
|
+
organizationId: () => exports.CommonArgs.objectId("organizationId"),
|
|
26
|
+
clusterName: () => zod_1.z
|
|
27
|
+
.string()
|
|
28
|
+
.min(1, "Cluster name is required")
|
|
29
|
+
.max(64, "Cluster name must be 64 characters or less")
|
|
30
|
+
.regex(ALLOWED_CLUSTER_NAME_CHARACTERS_REGEX, exports.ALLOWED_CLUSTER_NAME_CHARACTERS_ERROR),
|
|
31
|
+
projectName: () => zod_1.z
|
|
32
|
+
.string()
|
|
33
|
+
.min(1, "Project name is required")
|
|
34
|
+
.max(64, "Project name must be 64 characters or less")
|
|
35
|
+
.regex(ALLOWED_PROJECT_NAME_CHARACTERS_REGEX, exports.ALLOWED_PROJECT_NAME_CHARACTERS_ERROR),
|
|
36
|
+
username: () => zod_1.z
|
|
37
|
+
.string()
|
|
38
|
+
.min(1, "Username is required")
|
|
39
|
+
.max(100, "Username must be 100 characters or less")
|
|
40
|
+
.regex(ALLOWED_USERNAME_CHARACTERS_REGEX, exports.ALLOWED_USERNAME_CHARACTERS_ERROR),
|
|
41
|
+
ipAddress: () => zod_1.z.string().ip({ version: "v4" }),
|
|
42
|
+
cidrBlock: () => zod_1.z.string().cidr(),
|
|
43
|
+
region: () => zod_1.z
|
|
44
|
+
.string()
|
|
45
|
+
.min(1, "Region is required")
|
|
46
|
+
.max(50, "Region must be 50 characters or less")
|
|
47
|
+
.regex(ALLOWED_REGION_CHARACTERS_REGEX, exports.ALLOWED_REGION_CHARACTERS_ERROR),
|
|
48
|
+
password: () => zod_1.z.string().min(1, "Password is required").max(100, "Password must be 100 characters or less"),
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=args.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../../src/tools/args.ts"],"names":[],"mappings":";;;AAAA,6BAAwC;AAExC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAC7B,QAAA,gBAAgB,GAAG,6DAA6D,CAAC;AAE9F,MAAM,iCAAiC,GAAG,mBAAmB,CAAC;AACjD,QAAA,iCAAiC,GAC1C,4EAA4E,CAAC;AAEjF,MAAM,+BAA+B,GAAG,kBAAkB,CAAC;AAC9C,QAAA,+BAA+B,GAAG,oEAAoE,CAAC;AAEpH,MAAM,qCAAqC,GAAG,kBAAkB,CAAC;AACpD,QAAA,qCAAqC,GAC9C,qEAAqE,CAAC;AAE1E,MAAM,qCAAqC,GAAG,6BAA6B,CAAC;AAC/D,QAAA,qCAAqC,GAC9C,kJAAkJ,CAAC;AAC1I,QAAA,UAAU,GAAG;IACtB,MAAM,EAAE,GAAc,EAAE,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,wBAAgB,CAAC;IAE7E,QAAQ,EAAE,CAAC,SAAiB,EAAe,EAAE,CACzC,OAAC;SACI,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,GAAG,SAAS,cAAc,CAAC;SAClC,MAAM,CAAC,EAAE,EAAE,GAAG,SAAS,gCAAgC,CAAC;SACxD,KAAK,CAAC,gBAAgB,EAAE,GAAG,SAAS,2CAA2C,CAAC;CAC5F,CAAC;AAEW,QAAA,SAAS,GAAG;IACrB,SAAS,EAAE,GAAgB,EAAE,CAAC,kBAAU,CAAC,QAAQ,CAAC,WAAW,CAAC;IAE9D,cAAc,EAAE,GAAgB,EAAE,CAAC,kBAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAExE,WAAW,EAAE,GAAgB,EAAE,CAC3B,OAAC;SACI,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;SAClC,GAAG,CAAC,EAAE,EAAE,4CAA4C,CAAC;SACrD,KAAK,CAAC,qCAAqC,EAAE,6CAAqC,CAAC;IAE5F,WAAW,EAAE,GAAgB,EAAE,CAC3B,OAAC;SACI,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;SAClC,GAAG,CAAC,EAAE,EAAE,4CAA4C,CAAC;SACrD,KAAK,CAAC,qCAAqC,EAAE,6CAAqC,CAAC;IAE5F,QAAQ,EAAE,GAAgB,EAAE,CACxB,OAAC;SACI,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC;SAC9B,GAAG,CAAC,GAAG,EAAE,yCAAyC,CAAC;SACnD,KAAK,CAAC,iCAAiC,EAAE,yCAAiC,CAAC;IAEpF,SAAS,EAAE,GAAgB,EAAE,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAE9D,SAAS,EAAE,GAAgB,EAAE,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAE/C,MAAM,EAAE,GAAgB,EAAE,CACtB,OAAC;SACI,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;SAC5B,GAAG,CAAC,EAAE,EAAE,sCAAsC,CAAC;SAC/C,KAAK,CAAC,+BAA+B,EAAE,uCAA+B,CAAC;IAEhF,QAAQ,EAAE,GAAgB,EAAE,CACxB,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,yCAAyC,CAAC;CACpG,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { ToolCategory, TelemetryToolMetadata, ToolArgs } from "../tool.js";
|
|
2
|
-
import { ToolBase } from "../tool.js";
|
|
3
1
|
import type { ToolCallback } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
|
+
import { ToolBase, type ToolArgs, type ToolCategory, type TelemetryToolMetadata } from "../tool.js";
|
|
4
3
|
import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
|
|
5
4
|
export declare abstract class AtlasToolBase extends ToolBase {
|
|
6
5
|
category: ToolCategory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atlasTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/atlas/atlasTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"atlasTool.d.ts","sourceRoot":"","sources":["../../../../src/tools/atlas/atlasTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,KAAK,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACpG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAKzE,8BAAsB,aAAc,SAAQ,QAAQ;IACzC,QAAQ,EAAE,YAAY,CAAW;IAExC,SAAS,CAAC,aAAa,IAAI,OAAO;IAOlC,SAAS,CAAC,WAAW,CACjB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GACtC,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc;IAyC3C;;;;;;OAMG;IACH,SAAS,CAAC,wBAAwB,CAC9B,GAAG,IAAI,EAAE,UAAU,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,GACzD,qBAAqB;CAgC3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atlasTool.js","sourceRoot":"","sources":["../../../../src/tools/atlas/atlasTool.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"atlasTool.js","sourceRoot":"","sources":["../../../../src/tools/atlas/atlasTool.ts"],"names":[],"mappings":";;;AACA,wCAAoG;AAEpG,sDAA+C;AAC/C,6BAAwB;AACxB,4EAAsE;AAEtE,MAAsB,aAAc,SAAQ,kBAAQ;IAApD;;QACW,aAAQ,GAAiB,OAAO,CAAC;IA8F5C,CAAC;IA5Fa,aAAa;QACnB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC3D,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,KAAK,CAAC,aAAa,EAAE,CAAC;IACjC,CAAC;IAES,WAAW,CACjB,KAAc,EACd,IAAqC;QAErC,IAAI,KAAK,YAAY,kCAAc,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YAEzC,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;gBACrB,OAAO;oBACH,OAAO,EAAE;wBACL;4BACI,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,yDAAyD,KAAK,CAAC,OAAO;;;;6GAIK;yBACpF;qBACJ;oBACD,OAAO,EAAE,IAAI;iBAChB,CAAC;YACN,CAAC;YAED,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;gBACrB,OAAO;oBACH,OAAO,EAAE;wBACL;4BACI,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,mCAAmC,KAAK,CAAC,OAAO;;;;yHAIuC;yBAChG;qBACJ;oBACD,OAAO,EAAE,IAAI;iBAChB,CAAC;YACN,CAAC;QACL,CAAC;QAED,gFAAgF;QAChF,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;OAMG;IACO,wBAAwB,CAC9B,GAAG,IAAqD;QAExD,MAAM,YAAY,GAA0B,EAAE,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,YAAY,CAAC;QACxB,CAAC;QAED,sDAAsD;QACtD,MAAM,SAAS,GAAG,OAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAElD,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;gBACtB,EAAE,EAAE,iBAAK,CAAC,sBAAsB;gBAChC,OAAO,EAAE,MAAM;gBACf,OAAO,EAAE,iCAAiC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE;aACzE,CAAC,CAAC;YACH,OAAO,YAAY,CAAC;QACxB,CAAC;QAED,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;QAE/B,qCAAqC;QACrC,IAAI,WAAW,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC5F,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5C,CAAC;QAED,iCAAiC;QACjC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAChF,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACpC,CAAC;QACD,OAAO,YAAY,CAAC;IACxB,CAAC;CACJ;AA/FD,sCA+FC"}
|
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
1
|
import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
+
import { type OperationType, type ToolArgs } from "../../tool.js";
|
|
3
3
|
import { AtlasToolBase } from "../atlasTool.js";
|
|
4
|
-
|
|
4
|
+
export declare const ConnectClusterArgs: {
|
|
5
|
+
projectId: import("zod").ZodString;
|
|
6
|
+
clusterName: import("zod").ZodString;
|
|
7
|
+
};
|
|
5
8
|
export declare class ConnectClusterTool extends AtlasToolBase {
|
|
6
9
|
name: string;
|
|
7
10
|
protected description: string;
|
|
8
11
|
operationType: OperationType;
|
|
9
12
|
protected argsShape: {
|
|
10
|
-
projectId:
|
|
11
|
-
clusterName:
|
|
13
|
+
projectId: import("zod").ZodString;
|
|
14
|
+
clusterName: import("zod").ZodString;
|
|
12
15
|
};
|
|
13
16
|
private queryConnection;
|
|
14
17
|
private prepareClusterConnection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectCluster.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/connect/connectCluster.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"connectCluster.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/connect/connectCluster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAmBhD,eAAO,MAAM,kBAAkB;;;CAG9B,CAAC;AAEF,qBAAa,kBAAmB,SAAQ,aAAa;IAC1C,IAAI,SAA2B;IACtC,SAAS,CAAC,WAAW,SAAsC;IACpD,aAAa,EAAE,aAAa,CAAa;IAChD,SAAS,CAAC,SAAS;;;MAEjB;IAEF,OAAO,CAAC,eAAe;YAmCT,wBAAwB;YAyDxB,gBAAgB;cA4Ed,OAAO,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAqFhH"}
|
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ConnectClusterTool = void 0;
|
|
4
|
-
const zod_1 = require("zod");
|
|
3
|
+
exports.ConnectClusterTool = exports.ConnectClusterArgs = void 0;
|
|
5
4
|
const atlasTool_js_1 = require("../atlasTool.js");
|
|
6
5
|
const generatePassword_js_1 = require("../../../helpers/generatePassword.js");
|
|
7
6
|
const logger_js_1 = require("../../../common/logger.js");
|
|
8
7
|
const cluster_js_1 = require("../../../common/atlas/cluster.js");
|
|
9
8
|
const accessListUtils_js_1 = require("../../../common/atlas/accessListUtils.js");
|
|
10
9
|
const roles_js_1 = require("../../../common/atlas/roles.js");
|
|
11
|
-
const
|
|
10
|
+
const args_js_1 = require("../../args.js");
|
|
12
11
|
const addedIpAccessListMessage = "Note: Your current IP address has been added to the Atlas project's IP access list to enable secure connection.";
|
|
13
12
|
const createdUserMessage = "Note: A temporary user has been created to enable secure connection to the cluster. For more information, see https://dochub.mongodb.org/core/mongodb-mcp-server-tools-considerations\n\nNote to LLM Agent: it is important to include the following link in your response to the user in case they want to get more information about the temporary user created: https://dochub.mongodb.org/core/mongodb-mcp-server-tools-considerations";
|
|
14
13
|
function sleep(ms) {
|
|
15
14
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
16
15
|
}
|
|
16
|
+
exports.ConnectClusterArgs = {
|
|
17
|
+
projectId: args_js_1.AtlasArgs.projectId().describe("Atlas project ID"),
|
|
18
|
+
clusterName: args_js_1.AtlasArgs.clusterName().describe("Atlas cluster name"),
|
|
19
|
+
};
|
|
17
20
|
class ConnectClusterTool extends atlasTool_js_1.AtlasToolBase {
|
|
18
21
|
constructor() {
|
|
19
22
|
super(...arguments);
|
|
@@ -21,8 +24,7 @@ class ConnectClusterTool extends atlasTool_js_1.AtlasToolBase {
|
|
|
21
24
|
this.description = "Connect to MongoDB Atlas cluster";
|
|
22
25
|
this.operationType = "connect";
|
|
23
26
|
this.argsShape = {
|
|
24
|
-
|
|
25
|
-
clusterName: zod_1.z.string().describe("Atlas cluster name"),
|
|
27
|
+
...exports.ConnectClusterArgs,
|
|
26
28
|
};
|
|
27
29
|
}
|
|
28
30
|
queryConnection(projectId, clusterName) {
|
|
@@ -59,7 +61,7 @@ class ConnectClusterTool extends atlasTool_js_1.AtlasToolBase {
|
|
|
59
61
|
}
|
|
60
62
|
const username = `mcpUser${Math.floor(Math.random() * 100000)}`;
|
|
61
63
|
const password = await (0, generatePassword_js_1.generateSecurePassword)();
|
|
62
|
-
const expiryDate = new Date(Date.now() +
|
|
64
|
+
const expiryDate = new Date(Date.now() + this.config.atlasTemporaryDatabaseUserLifetimeMs);
|
|
63
65
|
const role = (0, roles_js_1.getDefaultRoleFromConfig)(this.config);
|
|
64
66
|
await this.session.apiClient.createDatabaseUser({
|
|
65
67
|
params: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectCluster.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/connect/connectCluster.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"connectCluster.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/connect/connectCluster.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
import { type OperationType, type ToolArgs } from "../../tool.js";
|
|
2
3
|
import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
|
|
3
4
|
import { AtlasToolBase } from "../atlasTool.js";
|
|
4
|
-
|
|
5
|
+
export declare const CreateAccessListArgs: {
|
|
6
|
+
projectId: z.ZodString;
|
|
7
|
+
ipAddresses: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
8
|
+
cidrBlocks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
9
|
+
currentIpAddress: z.ZodDefault<z.ZodBoolean>;
|
|
10
|
+
comment: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
11
|
+
};
|
|
5
12
|
export declare class CreateAccessListTool extends AtlasToolBase {
|
|
6
13
|
name: string;
|
|
7
14
|
protected description: string;
|
|
@@ -14,5 +21,6 @@ export declare class CreateAccessListTool extends AtlasToolBase {
|
|
|
14
21
|
comment: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
15
22
|
};
|
|
16
23
|
protected execute({ projectId, ipAddresses, cidrBlocks, comment, currentIpAddress, }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
|
|
24
|
+
protected getConfirmationMessage({ projectId, ipAddresses, cidrBlocks, comment, currentIpAddress, }: ToolArgs<typeof this.argsShape>): string;
|
|
17
25
|
}
|
|
18
26
|
//# sourceMappingURL=createAccessList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createAccessList.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createAccessList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"createAccessList.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createAccessList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,eAAO,MAAM,oBAAoB;;;;;;CAShC,CAAC;AAEF,qBAAa,oBAAqB,SAAQ,aAAa;IAC5C,IAAI,SAA8B;IACzC,SAAS,CAAC,WAAW,SAAiE;IAC/E,aAAa,EAAE,aAAa,CAAY;IAC/C,SAAS,CAAC,SAAS;;;;;;MAEjB;cAEc,OAAO,CAAC,EACpB,SAAS,EACT,WAAW,EACX,UAAU,EACV,OAAO,EACP,gBAAgB,GACnB,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IA+C5D,SAAS,CAAC,sBAAsB,CAAC,EAC7B,SAAS,EACT,WAAW,EACX,UAAU,EACV,OAAO,EACP,gBAAgB,GACnB,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,MAAM;CAoB9C"}
|
|
@@ -1,9 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CreateAccessListTool = void 0;
|
|
3
|
+
exports.CreateAccessListTool = exports.CreateAccessListArgs = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const atlasTool_js_1 = require("../atlasTool.js");
|
|
6
6
|
const accessListUtils_js_1 = require("../../../common/atlas/accessListUtils.js");
|
|
7
|
+
const args_js_1 = require("../../args.js");
|
|
8
|
+
exports.CreateAccessListArgs = {
|
|
9
|
+
projectId: args_js_1.AtlasArgs.projectId().describe("Atlas project ID"),
|
|
10
|
+
ipAddresses: zod_1.z.array(args_js_1.AtlasArgs.ipAddress()).describe("IP addresses to allow access from").optional(),
|
|
11
|
+
cidrBlocks: zod_1.z.array(args_js_1.AtlasArgs.cidrBlock()).describe("CIDR blocks to allow access from").optional(),
|
|
12
|
+
currentIpAddress: zod_1.z.boolean().describe("Add the current IP address").default(false),
|
|
13
|
+
comment: args_js_1.CommonArgs.string()
|
|
14
|
+
.describe("Comment for the access list entries")
|
|
15
|
+
.default(accessListUtils_js_1.DEFAULT_ACCESS_LIST_COMMENT)
|
|
16
|
+
.optional(),
|
|
17
|
+
};
|
|
7
18
|
class CreateAccessListTool extends atlasTool_js_1.AtlasToolBase {
|
|
8
19
|
constructor() {
|
|
9
20
|
super(...arguments);
|
|
@@ -11,18 +22,7 @@ class CreateAccessListTool extends atlasTool_js_1.AtlasToolBase {
|
|
|
11
22
|
this.description = "Allow Ip/CIDR ranges to access your MongoDB Atlas clusters.";
|
|
12
23
|
this.operationType = "create";
|
|
13
24
|
this.argsShape = {
|
|
14
|
-
|
|
15
|
-
ipAddresses: zod_1.z
|
|
16
|
-
.array(zod_1.z.string().ip({ version: "v4" }))
|
|
17
|
-
.describe("IP addresses to allow access from")
|
|
18
|
-
.optional(),
|
|
19
|
-
cidrBlocks: zod_1.z.array(zod_1.z.string().cidr()).describe("CIDR blocks to allow access from").optional(),
|
|
20
|
-
currentIpAddress: zod_1.z.boolean().describe("Add the current IP address").default(false),
|
|
21
|
-
comment: zod_1.z
|
|
22
|
-
.string()
|
|
23
|
-
.describe("Comment for the access list entries")
|
|
24
|
-
.default(accessListUtils_js_1.DEFAULT_ACCESS_LIST_COMMENT)
|
|
25
|
-
.optional(),
|
|
25
|
+
...exports.CreateAccessListArgs,
|
|
26
26
|
};
|
|
27
27
|
}
|
|
28
28
|
async execute({ projectId, ipAddresses, cidrBlocks, comment, currentIpAddress, }) {
|
|
@@ -61,6 +61,23 @@ class CreateAccessListTool extends atlasTool_js_1.AtlasToolBase {
|
|
|
61
61
|
],
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
|
+
getConfirmationMessage({ projectId, ipAddresses, cidrBlocks, comment, currentIpAddress, }) {
|
|
65
|
+
const accessDescription = [];
|
|
66
|
+
if (ipAddresses?.length) {
|
|
67
|
+
accessDescription.push(`- **IP addresses**: ${ipAddresses.join(", ")}`);
|
|
68
|
+
}
|
|
69
|
+
if (cidrBlocks?.length) {
|
|
70
|
+
accessDescription.push(`- **CIDR blocks**: ${cidrBlocks.join(", ")}`);
|
|
71
|
+
}
|
|
72
|
+
if (currentIpAddress) {
|
|
73
|
+
accessDescription.push("- **Current IP address**");
|
|
74
|
+
}
|
|
75
|
+
return (`You are about to add the following entries to the access list for Atlas project "${projectId}":\n\n` +
|
|
76
|
+
accessDescription.join("\n") +
|
|
77
|
+
`\n\n**Comment**: ${comment || accessListUtils_js_1.DEFAULT_ACCESS_LIST_COMMENT}\n\n` +
|
|
78
|
+
"This will allow network access to your MongoDB Atlas clusters from these IP addresses/ranges. " +
|
|
79
|
+
"Do you want to proceed?");
|
|
80
|
+
}
|
|
64
81
|
}
|
|
65
82
|
exports.CreateAccessListTool = CreateAccessListTool;
|
|
66
83
|
//# sourceMappingURL=createAccessList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createAccessList.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createAccessList.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;
|
|
1
|
+
{"version":3,"file":"createAccessList.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createAccessList.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,26 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
import type { ToolArgs, OperationType } from "../../tool.js";
|
|
2
3
|
import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
|
|
3
4
|
import { AtlasToolBase } from "../atlasTool.js";
|
|
4
|
-
|
|
5
|
+
export declare const CreateDBUserArgs: {
|
|
6
|
+
projectId: z.ZodString;
|
|
7
|
+
username: z.ZodString;
|
|
8
|
+
password: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
9
|
+
roles: z.ZodArray<z.ZodObject<{
|
|
10
|
+
roleName: z.ZodString;
|
|
11
|
+
databaseName: z.ZodDefault<z.ZodString>;
|
|
12
|
+
collectionName: z.ZodOptional<z.ZodString>;
|
|
13
|
+
}, "strip", z.ZodTypeAny, {
|
|
14
|
+
roleName: string;
|
|
15
|
+
databaseName: string;
|
|
16
|
+
collectionName?: string | undefined;
|
|
17
|
+
}, {
|
|
18
|
+
roleName: string;
|
|
19
|
+
databaseName?: string | undefined;
|
|
20
|
+
collectionName?: string | undefined;
|
|
21
|
+
}>, "many">;
|
|
22
|
+
clusters: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
23
|
+
};
|
|
5
24
|
export declare class CreateDBUserTool extends AtlasToolBase {
|
|
6
25
|
name: string;
|
|
7
26
|
protected description: string;
|
|
@@ -9,7 +28,7 @@ export declare class CreateDBUserTool extends AtlasToolBase {
|
|
|
9
28
|
protected argsShape: {
|
|
10
29
|
projectId: z.ZodString;
|
|
11
30
|
username: z.ZodString;
|
|
12
|
-
password: z.
|
|
31
|
+
password: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
13
32
|
roles: z.ZodArray<z.ZodObject<{
|
|
14
33
|
roleName: z.ZodString;
|
|
15
34
|
databaseName: z.ZodDefault<z.ZodString>;
|
|
@@ -26,5 +45,6 @@ export declare class CreateDBUserTool extends AtlasToolBase {
|
|
|
26
45
|
clusters: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
27
46
|
};
|
|
28
47
|
protected execute({ projectId, username, password, roles, clusters, }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
|
|
48
|
+
protected getConfirmationMessage({ projectId, username, password, roles, clusters, }: ToolArgs<typeof this.argsShape>): string;
|
|
29
49
|
}
|
|
30
50
|
//# sourceMappingURL=createDBUser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDBUser.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createDBUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"createDBUser.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createDBUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAMhD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;CAwB5B,CAAC;AAEF,qBAAa,gBAAiB,SAAQ,aAAa;IACxC,IAAI,SAA0B;IACrC,SAAS,CAAC,WAAW,SAA2C;IACzD,aAAa,EAAE,aAAa,CAAY;IAC/C,SAAS,CAAC,SAAS;;;;;;;;;;;;;;;;;;MAEjB;cAEc,OAAO,CAAC,EACpB,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,QAAQ,GACX,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAiD5D,SAAS,CAAC,sBAAsB,CAAC,EAC7B,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,QAAQ,GACX,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,MAAM;CAW9C"}
|
|
@@ -1,10 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CreateDBUserTool = void 0;
|
|
3
|
+
exports.CreateDBUserTool = exports.CreateDBUserArgs = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const atlasTool_js_1 = require("../atlasTool.js");
|
|
6
6
|
const generatePassword_js_1 = require("../../../helpers/generatePassword.js");
|
|
7
7
|
const accessListUtils_js_1 = require("../../../common/atlas/accessListUtils.js");
|
|
8
|
+
const args_js_1 = require("../../args.js");
|
|
9
|
+
exports.CreateDBUserArgs = {
|
|
10
|
+
projectId: args_js_1.AtlasArgs.projectId().describe("Atlas project ID"),
|
|
11
|
+
username: args_js_1.AtlasArgs.username().describe("Username for the new user"),
|
|
12
|
+
// Models will generate overly simplistic passwords like SecurePassword123 or
|
|
13
|
+
// AtlasPassword123, which are easily guessable and exploitable. We're instructing
|
|
14
|
+
// the model not to try and generate anything and instead leave the field unset.
|
|
15
|
+
password: args_js_1.AtlasArgs.password()
|
|
16
|
+
.nullish()
|
|
17
|
+
.describe("Password for the new user. IMPORTANT: If the user hasn't supplied an explicit password, leave it unset and under no circumstances try to generate a random one. A secure password will be generated by the MCP server if necessary."),
|
|
18
|
+
roles: zod_1.z
|
|
19
|
+
.array(zod_1.z.object({
|
|
20
|
+
roleName: args_js_1.CommonArgs.string().describe("Role name"),
|
|
21
|
+
databaseName: args_js_1.CommonArgs.string().describe("Database name").default("admin"),
|
|
22
|
+
collectionName: args_js_1.CommonArgs.string().describe("Collection name").optional(),
|
|
23
|
+
}))
|
|
24
|
+
.describe("Roles for the new user"),
|
|
25
|
+
clusters: zod_1.z
|
|
26
|
+
.array(args_js_1.AtlasArgs.clusterName())
|
|
27
|
+
.describe("Clusters to assign the user to, leave empty for access to all clusters")
|
|
28
|
+
.optional(),
|
|
29
|
+
};
|
|
8
30
|
class CreateDBUserTool extends atlasTool_js_1.AtlasToolBase {
|
|
9
31
|
constructor() {
|
|
10
32
|
super(...arguments);
|
|
@@ -12,27 +34,7 @@ class CreateDBUserTool extends atlasTool_js_1.AtlasToolBase {
|
|
|
12
34
|
this.description = "Create an MongoDB Atlas database user";
|
|
13
35
|
this.operationType = "create";
|
|
14
36
|
this.argsShape = {
|
|
15
|
-
|
|
16
|
-
username: zod_1.z.string().describe("Username for the new user"),
|
|
17
|
-
// Models will generate overly simplistic passwords like SecurePassword123 or
|
|
18
|
-
// AtlasPassword123, which are easily guessable and exploitable. We're instructing
|
|
19
|
-
// the model not to try and generate anything and instead leave the field unset.
|
|
20
|
-
password: zod_1.z
|
|
21
|
-
.string()
|
|
22
|
-
.optional()
|
|
23
|
-
.nullable()
|
|
24
|
-
.describe("Password for the new user. IMPORTANT: If the user hasn't supplied an explicit password, leave it unset and under no circumstances try to generate a random one. A secure password will be generated by the MCP server if necessary."),
|
|
25
|
-
roles: zod_1.z
|
|
26
|
-
.array(zod_1.z.object({
|
|
27
|
-
roleName: zod_1.z.string().describe("Role name"),
|
|
28
|
-
databaseName: zod_1.z.string().describe("Database name").default("admin"),
|
|
29
|
-
collectionName: zod_1.z.string().describe("Collection name").optional(),
|
|
30
|
-
}))
|
|
31
|
-
.describe("Roles for the new user"),
|
|
32
|
-
clusters: zod_1.z
|
|
33
|
-
.array(zod_1.z.string())
|
|
34
|
-
.describe("Clusters to assign the user to, leave empty for access to all clusters")
|
|
35
|
-
.optional(),
|
|
37
|
+
...exports.CreateDBUserArgs,
|
|
36
38
|
};
|
|
37
39
|
}
|
|
38
40
|
async execute({ projectId, username, password, roles, clusters, }) {
|
|
@@ -79,6 +81,15 @@ class CreateDBUserTool extends atlasTool_js_1.AtlasToolBase {
|
|
|
79
81
|
],
|
|
80
82
|
};
|
|
81
83
|
}
|
|
84
|
+
getConfirmationMessage({ projectId, username, password, roles, clusters, }) {
|
|
85
|
+
return (`You are about to create a database user in Atlas project \`${projectId}\`:\n\n` +
|
|
86
|
+
`**Username**: \`${username}\`\n\n` +
|
|
87
|
+
`**Password**: ${password ? "(User-provided password)" : "(Auto-generated secure password)"}\n\n` +
|
|
88
|
+
`**Roles**: ${roles.map((role) => `${role.roleName}${role.collectionName ? ` on ${role.databaseName}.${role.collectionName}` : ` on ${role.databaseName}`}`).join(", ")}\n\n` +
|
|
89
|
+
`**Cluster Access**: ${clusters?.length ? clusters.join(", ") : "All clusters in the project"}\n\n` +
|
|
90
|
+
"This will create a new database user with the specified permissions. " +
|
|
91
|
+
"**Do you confirm the execution of the action?**");
|
|
92
|
+
}
|
|
82
93
|
}
|
|
83
94
|
exports.CreateDBUserTool = CreateDBUserTool;
|
|
84
95
|
//# sourceMappingURL=createDBUser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDBUser.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createDBUser.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;
|
|
1
|
+
{"version":3,"file":"createDBUser.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createDBUser.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAGxB,kDAAgD;AAEhD,8EAA8E;AAC9E,iFAAuF;AACvF,2CAAsD;AAEzC,QAAA,gBAAgB,GAAG;IAC5B,SAAS,EAAE,mBAAS,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAC7D,QAAQ,EAAE,mBAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACpE,6EAA6E;IAC7E,kFAAkF;IAClF,gFAAgF;IAChF,QAAQ,EAAE,mBAAS,CAAC,QAAQ,EAAE;SACzB,OAAO,EAAE;SACT,QAAQ,CACL,qOAAqO,CACxO;IACL,KAAK,EAAE,OAAC;SACH,KAAK,CACF,OAAC,CAAC,MAAM,CAAC;QACL,QAAQ,EAAE,oBAAU,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;QACnD,YAAY,EAAE,oBAAU,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QAC5E,cAAc,EAAE,oBAAU,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;KAC7E,CAAC,CACL;SACA,QAAQ,CAAC,wBAAwB,CAAC;IACvC,QAAQ,EAAE,OAAC;SACN,KAAK,CAAC,mBAAS,CAAC,WAAW,EAAE,CAAC;SAC9B,QAAQ,CAAC,wEAAwE,CAAC;SAClF,QAAQ,EAAE;CAClB,CAAC;AAEF,MAAa,gBAAiB,SAAQ,4BAAa;IAAnD;;QACW,SAAI,GAAG,sBAAsB,CAAC;QAC3B,gBAAW,GAAG,uCAAuC,CAAC;QACzD,kBAAa,GAAkB,QAAQ,CAAC;QACrC,cAAS,GAAG;YAClB,GAAG,wBAAgB;SACtB,CAAC;IA0EN,CAAC;IAxEa,KAAK,CAAC,OAAO,CAAC,EACpB,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,QAAQ,GACsB;QAC9B,MAAM,IAAA,gDAA2B,EAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrE,MAAM,sBAAsB,GAAG,CAAC,QAAQ,CAAC;QACzC,IAAI,sBAAsB,EAAE,CAAC;YACzB,QAAQ,GAAG,MAAM,IAAA,4CAAsB,GAAE,CAAC;QAC9C,CAAC;QAED,MAAM,KAAK,GAAG;YACV,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,MAAM;YAClB,YAAY,EAAE,OAAO;YACrB,YAAY,EAAE,MAAM;YACpB,YAAY,EAAE,MAAM;YACpB,QAAQ,EAAE,MAAM;YAChB,QAAQ;YACR,QAAQ;YACR,KAAK,EAAE,KAAsC;YAC7C,MAAM,EAAE,QAAQ,EAAE,MAAM;gBACpB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBACvB,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,OAAO;iBAChB,CAAC,CAAC;gBACL,CAAC,CAAC,SAAS;SACG,CAAC;QAEvB,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC;YAC5C,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;iBACrB;aACJ;YACD,IAAI,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjD,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACzD,CAAC;QAED,OAAO;YACH,OAAO,EAAE;gBACL;oBACI,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,SAAS,QAAQ,yBAAyB,sBAAsB,CAAC,CAAC,CAAC,qBAAqB,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG;iBACrH;aACJ;SACJ,CAAC;IACN,CAAC;IAES,sBAAsB,CAAC,EAC7B,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,QAAQ,GACsB;QAC9B,OAAO,CACH,8DAA8D,SAAS,SAAS;YAChF,mBAAmB,QAAQ,QAAQ;YACnC,iBAAiB,QAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,kCAAkC,MAAM;YACjG,cAAc,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;YAC7K,uBAAuB,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,6BAA6B,MAAM;YACnG,uEAAuE;YACvE,iDAAiD,CACpD,CAAC;IACN,CAAC;CACJ;AAhFD,4CAgFC"}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
1
|
import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
+
import { type ToolArgs, type OperationType } from "../../tool.js";
|
|
3
3
|
import { AtlasToolBase } from "../atlasTool.js";
|
|
4
|
-
import type { ToolArgs, OperationType } from "../../tool.js";
|
|
5
4
|
export declare class CreateFreeClusterTool extends AtlasToolBase {
|
|
6
5
|
name: string;
|
|
7
6
|
protected description: string;
|
|
8
7
|
operationType: OperationType;
|
|
9
8
|
protected argsShape: {
|
|
10
|
-
projectId:
|
|
11
|
-
name:
|
|
12
|
-
region:
|
|
9
|
+
projectId: import("zod").ZodString;
|
|
10
|
+
name: import("zod").ZodString;
|
|
11
|
+
region: import("zod").ZodDefault<import("zod").ZodString>;
|
|
13
12
|
};
|
|
14
13
|
protected execute({ projectId, name, region }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
|
|
15
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createFreeCluster.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createFreeCluster.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"createFreeCluster.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createFreeCluster.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKhD,qBAAa,qBAAsB,SAAQ,aAAa;IAC7C,IAAI,SAA+B;IAC1C,SAAS,CAAC,WAAW,SAAyC;IACvD,aAAa,EAAE,aAAa,CAAY;IAC/C,SAAS,CAAC,SAAS;;;;MAIjB;cAEc,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAwCjH"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CreateFreeClusterTool = void 0;
|
|
4
|
-
const zod_1 = require("zod");
|
|
5
4
|
const atlasTool_js_1 = require("../atlasTool.js");
|
|
6
5
|
const accessListUtils_js_1 = require("../../../common/atlas/accessListUtils.js");
|
|
6
|
+
const args_js_1 = require("../../args.js");
|
|
7
7
|
class CreateFreeClusterTool extends atlasTool_js_1.AtlasToolBase {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
@@ -11,9 +11,9 @@ class CreateFreeClusterTool extends atlasTool_js_1.AtlasToolBase {
|
|
|
11
11
|
this.description = "Create a free MongoDB Atlas cluster";
|
|
12
12
|
this.operationType = "create";
|
|
13
13
|
this.argsShape = {
|
|
14
|
-
projectId:
|
|
15
|
-
name:
|
|
16
|
-
region:
|
|
14
|
+
projectId: args_js_1.AtlasArgs.projectId().describe("Atlas project ID to create the cluster in"),
|
|
15
|
+
name: args_js_1.AtlasArgs.clusterName().describe("Name of the cluster"),
|
|
16
|
+
region: args_js_1.AtlasArgs.region().describe("Region of the cluster").default("US_EAST_1"),
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
async execute({ projectId, name, region }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createFreeCluster.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createFreeCluster.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"createFreeCluster.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createFreeCluster.ts"],"names":[],"mappings":";;;AAEA,kDAAgD;AAEhD,iFAAuF;AACvF,2CAA0C;AAE1C,MAAa,qBAAsB,SAAQ,4BAAa;IAAxD;;QACW,SAAI,GAAG,2BAA2B,CAAC;QAChC,gBAAW,GAAG,qCAAqC,CAAC;QACvD,kBAAa,GAAkB,QAAQ,CAAC;QACrC,cAAS,GAAG;YAClB,SAAS,EAAE,mBAAS,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;YACtF,IAAI,EAAE,mBAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAC7D,MAAM,EAAE,mBAAS,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;SACpF,CAAC;IA0CN,CAAC;IAxCa,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAmC;QAChF,MAAM,KAAK,GAAG;YACV,OAAO,EAAE,SAAS;YAClB,IAAI;YACJ,WAAW,EAAE,YAAY;YACzB,gBAAgB,EAAE;gBACd;oBACI,QAAQ,EAAE,QAAQ;oBAClB,aAAa,EAAE;wBACX;4BACI,YAAY,EAAE,QAAQ;4BACtB,mBAAmB,EAAE,KAAK;4BAC1B,UAAU,EAAE,MAAM;4BAClB,cAAc,EAAE;gCACZ,YAAY,EAAE,IAAI;6BACrB;yBACJ;qBACJ;iBACJ;aACJ;YACD,4BAA4B,EAAE,KAAK;SACG,CAAC;QAE3C,MAAM,IAAA,gDAA2B,EAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrE,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;YACvC,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;iBACrB;aACJ;YACD,IAAI,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,OAAO;YACH,OAAO,EAAE;gBACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,IAAI,iCAAiC,MAAM,IAAI,EAAE;gBACnF,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,2DAA2D,EAAE;aACtF;SACJ,CAAC;IACN,CAAC;CACJ;AAlDD,sDAkDC"}
|
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
1
|
import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
+
import { type OperationType, type ToolArgs } from "../../tool.js";
|
|
3
3
|
import { AtlasToolBase } from "../atlasTool.js";
|
|
4
|
-
|
|
4
|
+
export declare const CreateProjectArgs: {
|
|
5
|
+
projectName: import("zod").ZodOptional<import("zod").ZodString>;
|
|
6
|
+
organizationId: import("zod").ZodOptional<import("zod").ZodString>;
|
|
7
|
+
};
|
|
5
8
|
export declare class CreateProjectTool extends AtlasToolBase {
|
|
6
9
|
name: string;
|
|
7
10
|
protected description: string;
|
|
8
11
|
operationType: OperationType;
|
|
9
12
|
protected argsShape: {
|
|
10
|
-
projectName:
|
|
11
|
-
organizationId:
|
|
13
|
+
projectName: import("zod").ZodOptional<import("zod").ZodString>;
|
|
14
|
+
organizationId: import("zod").ZodOptional<import("zod").ZodString>;
|
|
12
15
|
};
|
|
13
16
|
protected execute({ projectName, organizationId }: ToolArgs<typeof this.argsShape>): Promise<CallToolResult>;
|
|
14
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createProject.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createProject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"createProject.d.ts","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createProject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,eAAO,MAAM,iBAAiB;;;CAG7B,CAAC;AAEF,qBAAa,iBAAkB,SAAQ,aAAa;IACzC,IAAI,SAA0B;IACrC,SAAS,CAAC,WAAW,SAAoC;IAClD,aAAa,EAAE,aAAa,CAAY;IAC/C,SAAS,CAAC,SAAS;;;MAEjB;cAEc,OAAO,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;CAoDrH"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CreateProjectTool = void 0;
|
|
4
|
-
const zod_1 = require("zod");
|
|
3
|
+
exports.CreateProjectTool = exports.CreateProjectArgs = void 0;
|
|
5
4
|
const atlasTool_js_1 = require("../atlasTool.js");
|
|
5
|
+
const args_js_1 = require("../../args.js");
|
|
6
|
+
exports.CreateProjectArgs = {
|
|
7
|
+
projectName: args_js_1.AtlasArgs.projectName().optional().describe("Name for the new project"),
|
|
8
|
+
organizationId: args_js_1.AtlasArgs.organizationId().optional().describe("Organization ID for the new project"),
|
|
9
|
+
};
|
|
6
10
|
class CreateProjectTool extends atlasTool_js_1.AtlasToolBase {
|
|
7
11
|
constructor() {
|
|
8
12
|
super(...arguments);
|
|
@@ -10,8 +14,7 @@ class CreateProjectTool extends atlasTool_js_1.AtlasToolBase {
|
|
|
10
14
|
this.description = "Create a MongoDB Atlas project";
|
|
11
15
|
this.operationType = "create";
|
|
12
16
|
this.argsShape = {
|
|
13
|
-
|
|
14
|
-
organizationId: zod_1.z.string().optional().describe("Organization ID for the new project"),
|
|
17
|
+
...exports.CreateProjectArgs,
|
|
15
18
|
};
|
|
16
19
|
}
|
|
17
20
|
async execute({ projectName, organizationId }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createProject.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createProject.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"createProject.js","sourceRoot":"","sources":["../../../../../src/tools/atlas/create/createProject.ts"],"names":[],"mappings":";;;AAEA,kDAAgD;AAEhD,2CAA0C;AAE7B,QAAA,iBAAiB,GAAG;IAC7B,WAAW,EAAE,mBAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACpF,cAAc,EAAE,mBAAS,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;CACxG,CAAC;AAEF,MAAa,iBAAkB,SAAQ,4BAAa;IAApD;;QACW,SAAI,GAAG,sBAAsB,CAAC;QAC3B,gBAAW,GAAG,gCAAgC,CAAC;QAClD,kBAAa,GAAkB,QAAQ,CAAC;QACrC,cAAS,GAAG;YAClB,GAAG,yBAAiB;SACvB,CAAC;IAsDN,CAAC;IApDa,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,cAAc,EAAmC;QACpF,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,WAAW,GAAG,eAAe,CAAC;QAClC,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,IAAI,CAAC;gBACD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;gBACvE,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;oBAClC,MAAM,IAAI,KAAK,CACX,iGAAiG,CACpG,CAAC;gBACN,CAAC;gBACD,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC1C,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CACX,oFAAoF,CACvF,CAAC;gBACN,CAAC;gBACD,cAAc,GAAG,QAAQ,CAAC,EAAE,CAAC;gBAC7B,UAAU,GAAG,IAAI,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC;gBACL,MAAM,IAAI,KAAK,CACX,0HAA0H,CAC7H,CAAC;YACN,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG;YACV,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,cAAc;SACf,CAAC;QAEX,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;YACrD,IAAI,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAChD,CAAC;QAED,OAAO;YACH,OAAO,EAAE;gBACL;oBACI,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,YAAY,WAAW,yBAAyB,UAAU,CAAC,CAAC,CAAC,0BAA0B,cAAc,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG;iBAC1H;aACJ;SACJ,CAAC;IACN,CAAC;CACJ;AA5DD,8CA4DC"}
|