From 7b64d21726a4ebafdf9bf0c19652fe2690669c08 Mon Sep 17 00:00:00 2001 From: Himanshu Singh Date: Wed, 17 Sep 2025 15:25:48 +0200 Subject: [PATCH] chore: replace mongodb-mcp-server with problematic version --- package-lock.json | 274 +++++++++--------- package.json | 2 +- src/mcp/mcpConfig.ts | 2 +- src/mcp/mcpConnectionErrorHandler.ts | 5 +- src/mcp/mcpConnectionManager.ts | 2 +- src/mcp/mcpController.ts | 4 +- .../mcp/mcpConnectionErrorHandler.test.ts | 4 +- .../suite/mcp/mcpConnectionManager.test.ts | 4 +- src/test/suite/mcp/mcpController.test.ts | 2 +- 9 files changed, 156 insertions(+), 143 deletions(-) diff --git a/package-lock.json b/package-lock.json index 34caaf974..b46b19849 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,7 @@ "@babel/core": "^7.25.8", "@babel/parser": "^7.25.8", "@babel/traverse": "^7.25.7", + "@himanshusinghs/mongodb-mcp-server": "^1.0.0-prerelease.15", "@mongodb-js/compass-components": "^1.38.1", "@mongodb-js/connection-form": "^1.52.3", "@mongodb-js/connection-info": "^0.17.1", @@ -34,7 +35,6 @@ "mongodb-connection-string-url": "^3.0.2", "mongodb-data-service": "^22.30.1", "mongodb-log-writer": "^2.4.1", - "mongodb-mcp-server": "^1.0.0", "mongodb-query-parser": "^4.4.2", "mongodb-schema": "^12.6.2", "node-machine-id": "1.1.12", @@ -5685,6 +5685,146 @@ "integrity": "sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==", "license": "MIT" }, + "node_modules/@himanshusinghs/mongodb-mcp-server": { + "version": "1.0.0-prerelease.15", + "resolved": "https://registry.npmjs.org/@himanshusinghs/mongodb-mcp-server/-/mongodb-mcp-server-1.0.0-prerelease.15.tgz", + "integrity": "sha512-q1+FON27K++qfpc3ew4Xd7SZeO8XkWQn0OMvI7yxK3OxuL4+m2OChIiZIqMu7uuR5omlnV0IrzgPMBmD9J4LiA==", + "license": "Apache-2.0", + "dependencies": { + "@modelcontextprotocol/sdk": "^1.17.4", + "@mongodb-js/device-id": "^0.3.1", + "@mongodb-js/devtools-connect": "^3.9.3", + "@mongodb-js/devtools-proxy-support": "^0.5.2", + "@mongosh/arg-parser": "^3.14.0", + "@mongosh/service-provider-node-driver": "~3.12.0", + "@vitest/eslint-plugin": "^1.3.4", + "bson": "^6.10.4", + "express": "^5.1.0", + "lru-cache": "^11.1.0", + "mongodb": "^6.19.0", + "mongodb-connection-string-url": "^3.0.2", + "mongodb-log-writer": "^2.4.1", + "mongodb-redact": "^1.2.0", + "mongodb-schema": "^12.6.2", + "node-fetch": "^3.3.2", + "node-machine-id": "1.1.12", + "oauth4webapi": "^3.8.0", + "openapi-fetch": "^0.14.0", + "ts-levenshtein": "^1.0.7", + "yargs-parser": "^22.0.0", + "zod": "^3.25.76" + }, + "bin": { + "mongodb-mcp-server": "dist/esm/index.js" + }, + "engines": { + "node": "^20.19.0 || ^22.12.0 || >= 23.0.0" + }, + "optionalDependencies": { + "kerberos": "^2.2.2" + } + }, + "node_modules/@himanshusinghs/mongodb-mcp-server/node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/@himanshusinghs/mongodb-mcp-server/node_modules/kerberos": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.2.tgz", + "integrity": "sha512-42O7+/1Zatsc3MkxaMPpXcIl/ukIrbQaGoArZEAr6GcEi2qhfprOBYOPhj+YvSMJkEkdpTjApUx+2DuWaKwRhg==", + "hasInstallScript": true, + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "node-addon-api": "^6.1.0", + "prebuild-install": "^7.1.2" + }, + "engines": { + "node": ">=12.9.0" + } + }, + "node_modules/@himanshusinghs/mongodb-mcp-server/node_modules/lru-cache": { + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.1.tgz", + "integrity": "sha512-r8LA6i4LP4EeWOhqBaZZjDWwehd1xUJPCJd9Sv300H0ZmcUER4+JPh7bqqZeqs1o5pgtgvXm+d9UGrB5zZGDiQ==", + "license": "ISC", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@himanshusinghs/mongodb-mcp-server/node_modules/napi-build-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz", + "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==", + "license": "MIT", + "optional": true + }, + "node_modules/@himanshusinghs/mongodb-mcp-server/node_modules/node-addon-api": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-6.1.0.tgz", + "integrity": "sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==", + "license": "MIT", + "optional": true + }, + "node_modules/@himanshusinghs/mongodb-mcp-server/node_modules/node-fetch": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", + "license": "MIT", + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, + "node_modules/@himanshusinghs/mongodb-mcp-server/node_modules/prebuild-install": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz", + "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==", + "license": "MIT", + "optional": true, + "dependencies": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^2.0.0", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@himanshusinghs/mongodb-mcp-server/node_modules/yargs-parser": { + "version": "22.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-22.0.0.tgz", + "integrity": "sha512-rwu/ClNdSMpkSrUb+d6BRsSkLUq1fmfsY6TOpYzTwvwkg1/NRG85KBy3kq++A8LKQwX6lsu+aWad+2khvuXrqw==", + "license": "ISC", + "engines": { + "node": "^20.19.0 || ^22.12.0 || >=23" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.13.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", @@ -21357,137 +21497,6 @@ "bson": "6.x" } }, - "node_modules/mongodb-mcp-server": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mongodb-mcp-server/-/mongodb-mcp-server-1.0.0.tgz", - "integrity": "sha512-0pPyYQd2ciwotlMPzvRUwx8suIY2HvVsUOyeR2NN9Zk3kM84hcVR1h2MBOMgMdESfte4jkpXeohtLatlTVd/Gg==", - "license": "Apache-2.0", - "dependencies": { - "@modelcontextprotocol/sdk": "^1.17.4", - "@mongodb-js/device-id": "^0.3.1", - "@mongodb-js/devtools-connect": "^3.9.3", - "@mongodb-js/devtools-proxy-support": "^0.5.2", - "@mongosh/arg-parser": "^3.14.0", - "@mongosh/service-provider-node-driver": "~3.12.0", - "@vitest/eslint-plugin": "^1.3.4", - "bson": "^6.10.4", - "express": "^5.1.0", - "lru-cache": "^11.1.0", - "mongodb": "^6.19.0", - "mongodb-connection-string-url": "^3.0.2", - "mongodb-log-writer": "^2.4.1", - "mongodb-redact": "^1.2.0", - "mongodb-schema": "^12.6.2", - "node-fetch": "^3.3.2", - "node-machine-id": "1.1.12", - "oauth4webapi": "^3.8.0", - "openapi-fetch": "^0.14.0", - "ts-levenshtein": "^1.0.7", - "yargs-parser": "^21.1.1", - "zod": "^3.25.76" - }, - "bin": { - "mongodb-mcp-server": "dist/esm/index.js" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >= 23.0.0" - }, - "optionalDependencies": { - "kerberos": "^2.2.2" - } - }, - "node_modules/mongodb-mcp-server/node_modules/data-uri-to-buffer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", - "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", - "license": "MIT", - "engines": { - "node": ">= 12" - } - }, - "node_modules/mongodb-mcp-server/node_modules/kerberos": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.2.2.tgz", - "integrity": "sha512-42O7+/1Zatsc3MkxaMPpXcIl/ukIrbQaGoArZEAr6GcEi2qhfprOBYOPhj+YvSMJkEkdpTjApUx+2DuWaKwRhg==", - "hasInstallScript": true, - "license": "Apache-2.0", - "optional": true, - "dependencies": { - "node-addon-api": "^6.1.0", - "prebuild-install": "^7.1.2" - }, - "engines": { - "node": ">=12.9.0" - } - }, - "node_modules/mongodb-mcp-server/node_modules/lru-cache": { - "version": "11.2.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.1.tgz", - "integrity": "sha512-r8LA6i4LP4EeWOhqBaZZjDWwehd1xUJPCJd9Sv300H0ZmcUER4+JPh7bqqZeqs1o5pgtgvXm+d9UGrB5zZGDiQ==", - "license": "ISC", - "engines": { - "node": "20 || >=22" - } - }, - "node_modules/mongodb-mcp-server/node_modules/napi-build-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz", - "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==", - "license": "MIT", - "optional": true - }, - "node_modules/mongodb-mcp-server/node_modules/node-addon-api": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-6.1.0.tgz", - "integrity": "sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==", - "license": "MIT", - "optional": true - }, - "node_modules/mongodb-mcp-server/node_modules/node-fetch": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", - "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", - "license": "MIT", - "dependencies": { - "data-uri-to-buffer": "^4.0.0", - "fetch-blob": "^3.1.4", - "formdata-polyfill": "^4.0.10" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/node-fetch" - } - }, - "node_modules/mongodb-mcp-server/node_modules/prebuild-install": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz", - "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==", - "license": "MIT", - "optional": true, - "dependencies": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^2.0.0", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - }, - "bin": { - "prebuild-install": "bin.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/mongodb-ns": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/mongodb-ns/-/mongodb-ns-2.4.2.tgz", @@ -29103,6 +29112,7 @@ "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "devOptional": true, "license": "ISC", "engines": { "node": ">=12" diff --git a/package.json b/package.json index f9a7c2308..e9d038a8d 100644 --- a/package.json +++ b/package.json @@ -1396,6 +1396,7 @@ "@babel/core": "^7.25.8", "@babel/parser": "^7.25.8", "@babel/traverse": "^7.25.7", + "@himanshusinghs/mongodb-mcp-server": "^1.0.0-prerelease.15", "@mongodb-js/compass-components": "^1.38.1", "@mongodb-js/connection-form": "^1.52.3", "@mongodb-js/connection-info": "^0.17.1", @@ -1418,7 +1419,6 @@ "mongodb-connection-string-url": "^3.0.2", "mongodb-data-service": "^22.30.1", "mongodb-log-writer": "^2.4.1", - "mongodb-mcp-server": "^1.0.0", "mongodb-query-parser": "^4.4.2", "mongodb-schema": "^12.6.2", "node-machine-id": "1.1.12", diff --git a/src/mcp/mcpConfig.ts b/src/mcp/mcpConfig.ts index 3de49bd72..098d0b8a2 100644 --- a/src/mcp/mcpConfig.ts +++ b/src/mcp/mcpConfig.ts @@ -2,7 +2,7 @@ import { type UserConfig, configurableProperties, defaultUserConfig, -} from 'mongodb-mcp-server'; +} from '@himanshusinghs/mongodb-mcp-server'; import * as vscode from 'vscode'; import { createLogger } from '../logging'; // eslint-disable-next-line @typescript-eslint/no-var-requires diff --git a/src/mcp/mcpConnectionErrorHandler.ts b/src/mcp/mcpConnectionErrorHandler.ts index 0844f7a76..1fd6301fb 100644 --- a/src/mcp/mcpConnectionErrorHandler.ts +++ b/src/mcp/mcpConnectionErrorHandler.ts @@ -1,4 +1,7 @@ -import { ErrorCodes, type ConnectionErrorHandler } from 'mongodb-mcp-server'; +import { + ErrorCodes, + type ConnectionErrorHandler, +} from '@himanshusinghs/mongodb-mcp-server'; import type ConnectionController from '../connectionController'; export const createMCPConnectionErrorHandler = ( diff --git a/src/mcp/mcpConnectionManager.ts b/src/mcp/mcpConnectionManager.ts index 91e37afa2..1020e88b8 100644 --- a/src/mcp/mcpConnectionManager.ts +++ b/src/mcp/mcpConnectionManager.ts @@ -3,7 +3,7 @@ import { type AnyConnectionState, type ConnectionStateDisconnected, type LoggerBase, -} from 'mongodb-mcp-server'; +} from '@himanshusinghs/mongodb-mcp-server'; import { NodeDriverServiceProvider, type DevtoolsConnectOptions, diff --git a/src/mcp/mcpController.ts b/src/mcp/mcpController.ts index da1105e9f..720e633c2 100644 --- a/src/mcp/mcpController.ts +++ b/src/mcp/mcpController.ts @@ -5,14 +5,14 @@ import type { LogPayload, UserConfig, ConnectionManagerFactoryFn, -} from 'mongodb-mcp-server'; +} from '@himanshusinghs/mongodb-mcp-server'; import { defaultUserConfig, LoggerBase, StreamableHttpRunner, Keychain, registerGlobalSecretToRedact, -} from 'mongodb-mcp-server'; +} from '@himanshusinghs/mongodb-mcp-server'; import type ConnectionController from '../connectionController'; import { createLogger } from '../logging'; import type { MCPConnectParams } from './mcpConnectionManager'; diff --git a/src/test/suite/mcp/mcpConnectionErrorHandler.test.ts b/src/test/suite/mcp/mcpConnectionErrorHandler.test.ts index 95ff3ac57..c1db22f5c 100644 --- a/src/test/suite/mcp/mcpConnectionErrorHandler.test.ts +++ b/src/test/suite/mcp/mcpConnectionErrorHandler.test.ts @@ -9,8 +9,8 @@ import { StatusView } from '../../../views'; import type { ConnectionErrorHandled, ConnectionErrorHandlerContext, -} from 'mongodb-mcp-server'; -import { ErrorCodes } from 'mongodb-mcp-server'; +} from '@himanshusinghs/mongodb-mcp-server'; +import { ErrorCodes } from '@himanshusinghs/mongodb-mcp-server'; class MongoDBError extends Error { constructor( diff --git a/src/test/suite/mcp/mcpConnectionManager.test.ts b/src/test/suite/mcp/mcpConnectionManager.test.ts index e531eb2df..e753d7cc4 100644 --- a/src/test/suite/mcp/mcpConnectionManager.test.ts +++ b/src/test/suite/mcp/mcpConnectionManager.test.ts @@ -3,8 +3,8 @@ import { afterEach, beforeEach } from 'mocha'; import chai, { expect } from 'chai'; import chaiAsPromised from 'chai-as-promised'; import ConnectionString from 'mongodb-connection-string-url'; -import type { LoggerBase } from 'mongodb-mcp-server'; -import type { ConnectionStateErrored } from 'mongodb-mcp-server'; +import type { LoggerBase } from '@himanshusinghs/mongodb-mcp-server'; +import type { ConnectionStateErrored } from '@himanshusinghs/mongodb-mcp-server'; import type { DevtoolsConnectOptions } from '@mongosh/service-provider-node-driver'; import { NodeDriverServiceProvider } from '@mongosh/service-provider-node-driver'; import type { MCPConnectParams } from '../../../mcp/mcpConnectionManager'; diff --git a/src/test/suite/mcp/mcpController.test.ts b/src/test/suite/mcp/mcpController.test.ts index 98ca74a12..c1dc490ae 100644 --- a/src/test/suite/mcp/mcpController.test.ts +++ b/src/test/suite/mcp/mcpController.test.ts @@ -4,7 +4,7 @@ import { expect } from 'chai'; import { afterEach, beforeEach } from 'mocha'; import * as vscode from 'vscode'; import type { ExtensionContext } from 'vscode'; -import * as MCPServer from 'mongodb-mcp-server'; +import * as MCPServer from '@himanshusinghs/mongodb-mcp-server'; import { ExtensionContextStub } from '../stubs'; import type { MCPServerInfo } from '../../../mcp/mcpController'; import { MCPController } from '../../../mcp/mcpController';