Skip to content
Merged
Show file tree
Hide file tree
Changes from 11 commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -346,6 +346,7 @@ The MongoDB MCP Server can be configured using multiple methods, with the follow

| CLI Option | Environment Variable | Default | Description |
| -------------------------------------- | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `allowRequestOverrides` | `MDB_MCP_ALLOW_REQUEST_OVERRIDES` | `false` | When set to true, allows configuration values to be overridden via request headers and query parameters. |
| `apiClientId` | `MDB_MCP_API_CLIENT_ID` | `<not set>` | Atlas API client ID for authentication. Required for running Atlas tools. |
| `apiClientSecret` | `MDB_MCP_API_CLIENT_SECRET` | `<not set>` | Atlas API client secret for authentication. Required for running Atlas tools. |
| `atlasTemporaryDatabaseUserLifetimeMs` | `MDB_MCP_ATLAS_TEMPORARY_DATABASE_USER_LIFETIME_MS` | `14400000` | Time in milliseconds that temporary database users created when connecting to MongoDB Atlas clusters will remain active before being automatically deleted. |
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@
"generate": "npm run generate:api && npm run generate:arguments",
"generate:api": "./scripts/generate.sh",
"generate:arguments": "tsx scripts/generateArguments.ts",
"test": "vitest --project eslint-rules --project unit-and-integration --coverage",
"test": "vitest --project eslint-rules --project unit-and-integration --coverage --run",
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

drive-by: makes it easier to for LLMs to run this... we can have test:watch if needed

"pretest:accuracy": "npm run build",
"test:accuracy": "sh ./scripts/accuracy/runAccuracyTests.sh",
"test:long-running-tests": "vitest --project long-running-tests --coverage",
Expand Down
7 changes: 1 addition & 6 deletions scripts/generateArguments.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ import { readFileSync, writeFileSync } from "fs";
import { join, dirname } from "path";
import { fileURLToPath } from "url";
import { UserConfigSchema, configRegistry } from "../src/common/config/userConfig.js";
import assert from "assert";
import { execSync } from "child_process";
import { OPTIONS } from "../src/common/config/argsParserOptions.js";

Expand Down Expand Up @@ -69,12 +68,8 @@ function extractZodDescriptions(): Record<string, ConfigMetadata> {
let description = schema.description || `Configuration option: ${key}`;

if ("innerType" in schema.def) {
// "pipe" is used for our comma-separated arrays
// "pipe" is also used for our comma-separated arrays
if (schema.def.innerType.def.type === "pipe") {
assert(
description.startsWith("An array of"),
`Field description for field "${key}" with array type does not start with 'An array of'`
);
description = description.replace("An array of", "Comma separated values of");
}
}
Expand Down
26 changes: 26 additions & 0 deletions server.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,13 @@
"type": "stdio"
},
"environmentVariables": [
{
"name": "MDB_MCP_ALLOW_REQUEST_OVERRIDES",
"description": "When set to true, allows configuration values to be overridden via request headers and query parameters.",
"isRequired": false,
"format": "string",
"isSecret": false
},
{
"name": "MDB_MCP_API_CLIENT_ID",
"description": "Atlas API client ID for authentication. Required for running Atlas tools.",
Expand Down Expand Up @@ -186,6 +193,12 @@
}
],
"packageArguments": [
{
"type": "named",
"name": "--allowRequestOverrides",
"description": "When set to true, allows configuration values to be overridden via request headers and query parameters.",
"isRequired": false
},
{
"type": "named",
"name": "--apiClientId",
Expand Down Expand Up @@ -344,6 +357,13 @@
"type": "stdio"
},
"environmentVariables": [
{
"name": "MDB_MCP_ALLOW_REQUEST_OVERRIDES",
"description": "When set to true, allows configuration values to be overridden via request headers and query parameters.",
"isRequired": false,
"format": "string",
"isSecret": false
},
{
"name": "MDB_MCP_API_CLIENT_ID",
"description": "Atlas API client ID for authentication. Required for running Atlas tools.",
Expand Down Expand Up @@ -514,6 +534,12 @@
}
],
"packageArguments": [
{
"type": "named",
"name": "--allowRequestOverrides",
"description": "When set to true, allows configuration values to be overridden via request headers and query parameters.",
"isRequired": false
},
{
"type": "named",
"name": "--apiClientId",
Expand Down
Loading
Loading