mongodb-mcp-server 0.1.1 → 0.1.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/.dockerignore +11 -0
- package/.github/workflows/check-pr-title.yml +29 -0
- package/.github/workflows/docker.yaml +57 -0
- package/.github/workflows/stale.yml +32 -0
- package/.smithery/Dockerfile +30 -0
- package/.smithery/smithery.yaml +63 -0
- package/CONTRIBUTING.md +1 -1
- package/Dockerfile +10 -0
- package/README.md +135 -14
- package/dist/common/atlas/apiClient.js +10 -1
- package/dist/common/atlas/apiClient.js.map +1 -1
- package/dist/common/atlas/cluster.js +1 -1
- package/dist/common/atlas/cluster.js.map +1 -1
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -1
- package/dist/logger.js +5 -0
- package/dist/logger.js.map +1 -1
- package/dist/server.js +1 -1
- package/dist/server.js.map +1 -1
- package/dist/telemetry/telemetry.js +115 -78
- package/dist/telemetry/telemetry.js.map +1 -1
- package/dist/tools/atlas/create/createProject.js +5 -1
- package/dist/tools/atlas/create/createProject.js.map +1 -1
- package/dist/tools/atlas/read/listAlerts.js +41 -0
- package/dist/tools/atlas/read/listAlerts.js.map +1 -0
- package/dist/tools/atlas/read/listProjects.js +3 -1
- package/dist/tools/atlas/read/listProjects.js.map +1 -1
- package/dist/tools/atlas/tools.js +2 -0
- package/dist/tools/atlas/tools.js.map +1 -1
- package/dist/tools/mongodb/metadata/listDatabases.js.map +1 -1
- package/dist/tools/mongodb/read/count.js +2 -2
- package/dist/tools/mongodb/read/count.js.map +1 -1
- package/dist/tools/tool.js +38 -6
- package/dist/tools/tool.js.map +1 -1
- package/package.json +8 -8
- package/scripts/apply.ts +4 -4
- package/scripts/filter.ts +1 -0
- package/src/common/atlas/apiClient.ts +11 -1
- package/src/common/atlas/cluster.ts +1 -2
- package/src/common/atlas/openapi.d.ts +1242 -28
- package/src/index.ts +20 -0
- package/src/logger.ts +6 -0
- package/src/server.ts +1 -1
- package/src/telemetry/telemetry.ts +150 -98
- package/src/telemetry/types.ts +1 -0
- package/src/tools/atlas/create/createProject.ts +7 -1
- package/src/tools/atlas/read/listAlerts.ts +45 -0
- package/src/tools/atlas/read/listProjects.ts +4 -2
- package/src/tools/atlas/tools.ts +2 -0
- package/src/tools/mongodb/metadata/listDatabases.ts +0 -1
- package/src/tools/mongodb/read/count.ts +3 -2
- package/src/tools/tool.ts +45 -8
- package/tests/integration/helpers.ts +23 -0
- package/tests/integration/tools/atlas/accessLists.test.ts +2 -2
- package/tests/integration/tools/atlas/alerts.test.ts +42 -0
- package/tests/integration/tools/atlas/atlasHelpers.ts +5 -3
- package/tests/integration/tools/atlas/clusters.test.ts +4 -4
- package/tests/integration/tools/atlas/dbUsers.test.ts +7 -7
- package/tests/integration/tools/atlas/orgs.test.ts +2 -2
- package/tests/integration/tools/atlas/projects.test.ts +3 -3
- package/tests/integration/tools/mongodb/create/createCollection.test.ts +2 -2
- package/tests/integration/tools/mongodb/create/createIndex.test.ts +2 -2
- package/tests/integration/tools/mongodb/create/insertMany.test.ts +1 -1
- package/tests/integration/tools/mongodb/delete/dropCollection.test.ts +1 -1
- package/tests/integration/tools/mongodb/metadata/collectionSchema.test.ts +2 -2
- package/tests/integration/tools/mongodb/metadata/dbStats.test.ts +4 -4
- package/tests/integration/tools/mongodb/metadata/explain.test.ts +10 -10
- package/tests/integration/tools/mongodb/metadata/listCollections.test.ts +1 -1
- package/tests/integration/tools/mongodb/metadata/listDatabases.test.ts +9 -5
- package/tests/integration/tools/mongodb/metadata/logs.test.ts +4 -4
- package/tests/integration/tools/mongodb/read/aggregate.test.ts +22 -7
- package/tests/integration/tools/mongodb/read/collectionIndexes.test.ts +5 -5
- package/tests/integration/tools/mongodb/read/count.test.ts +15 -10
- package/tests/integration/tools/mongodb/read/find.test.ts +6 -6
- package/tests/integration/tools/mongodb/update/renameCollection.test.ts +4 -4
- package/tests/unit/EJsonTransport.test.ts +1 -1
- package/tests/unit/session.test.ts +1 -1
- package/tests/unit/telemetry.test.ts +106 -58
- package/tsconfig.build.json +1 -0
- package/tests/integration/telemetry.test.ts +0 -28
package/.dockerignore
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
name: "Check PR Title"
|
|
2
|
+
on:
|
|
3
|
+
pull_request:
|
|
4
|
+
types:
|
|
5
|
+
[
|
|
6
|
+
opened,
|
|
7
|
+
synchronize,
|
|
8
|
+
reopened,
|
|
9
|
+
ready_for_review,
|
|
10
|
+
labeled,
|
|
11
|
+
unlabeled,
|
|
12
|
+
converted_to_draft,
|
|
13
|
+
edited,
|
|
14
|
+
]
|
|
15
|
+
|
|
16
|
+
permissions:
|
|
17
|
+
pull-requests: read # to read PR title and labels
|
|
18
|
+
|
|
19
|
+
jobs:
|
|
20
|
+
check-pr-title:
|
|
21
|
+
name: Check PR Title
|
|
22
|
+
runs-on: ubuntu-latest
|
|
23
|
+
steps:
|
|
24
|
+
- name: Enforce conventional commit style
|
|
25
|
+
uses: realm/ci-actions/title-checker@d6cc8f067474759d38e6d24e272027b4c88bc0a9
|
|
26
|
+
with:
|
|
27
|
+
regex: '^(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test|ops){1}(\([\w\-\.]+\))?(!)?: .*'
|
|
28
|
+
error-hint: 'Invalid PR title. Make sure it follows the conventional commit specification (i.e. "<type>(<optional scope>): <description>") or add the no-title-validation label'
|
|
29
|
+
ignore-labels: "no-title-validation"
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
name: Daily Release Docker Image
|
|
2
|
+
on:
|
|
3
|
+
schedule:
|
|
4
|
+
- cron: "0 1 * * *" # Every day at 1:00 AM
|
|
5
|
+
workflow_dispatch: # Run the action manually
|
|
6
|
+
permissions:
|
|
7
|
+
contents: read
|
|
8
|
+
issues: write
|
|
9
|
+
jobs:
|
|
10
|
+
push:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
steps:
|
|
13
|
+
- uses: GitHubSecurityLab/actions-permissions/monitor@v1
|
|
14
|
+
with:
|
|
15
|
+
config: ${{ vars.PERMISSIONS_CONFIG }}
|
|
16
|
+
- name: Check out code
|
|
17
|
+
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
|
|
18
|
+
- name: Set up Docker Buildx
|
|
19
|
+
uses: docker/setup-buildx-action@18ce135bb5112fa8ce4ed6c17ab05699d7f3a5e0
|
|
20
|
+
- name: Login to Docker Hub
|
|
21
|
+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772
|
|
22
|
+
with:
|
|
23
|
+
username: "${{ secrets.DOCKERHUB_USERNAME }}"
|
|
24
|
+
password: "${{ secrets.DOCKERHUB_PASSWORD }}"
|
|
25
|
+
- name: Set date and version
|
|
26
|
+
id: set-properties
|
|
27
|
+
run: |
|
|
28
|
+
DATE=$(date +'%Y-%m-%d')
|
|
29
|
+
VERSION=$(npm pkg get version | tr -d '"')
|
|
30
|
+
echo "DATE=${DATE}" >> "$GITHUB_OUTPUT"
|
|
31
|
+
echo "VERSION=${VERSION}" >> "$GITHUB_OUTPUT"
|
|
32
|
+
- name: Build and push image to dockerhub registry
|
|
33
|
+
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83
|
|
34
|
+
with:
|
|
35
|
+
context: .
|
|
36
|
+
platforms: linux/amd64,linux/arm64
|
|
37
|
+
tags: ${{ vars.DOCKERHUB_IMAGE_REPOSITORY }}:latest, ${{ vars.DOCKERHUB_IMAGE_REPOSITORY }}:${{ steps.set-properties.outputs.VERSION }}, ${{ vars.DOCKERHUB_IMAGE_REPOSITORY }}:${{ steps.set-properties.outputs.VERSION }}-${{ steps.set-properties.outputs.DATE }}
|
|
38
|
+
file: Dockerfile
|
|
39
|
+
push: true
|
|
40
|
+
provenance: mode=max
|
|
41
|
+
sbom: true
|
|
42
|
+
build-args: |
|
|
43
|
+
VERSION=${{ steps.set-properties.outputs.VERSION }}
|
|
44
|
+
- uses: mongodb-js/devtools-shared/actions/setup-bot-token@main
|
|
45
|
+
id: app-token
|
|
46
|
+
if: ${{ failure() }}
|
|
47
|
+
with:
|
|
48
|
+
app-id: ${{ vars.DEVTOOLS_BOT_APP_ID }}
|
|
49
|
+
private-key: ${{ secrets.DEVTOOLS_BOT_PRIVATE_KEY }}
|
|
50
|
+
- name: Create Issue
|
|
51
|
+
if: ${{ failure() }}
|
|
52
|
+
uses: imjohnbo/issue-bot@572eed14422c4d6ca37e870f97e7da209422f5bd
|
|
53
|
+
with:
|
|
54
|
+
token: ${{ steps.app-token.outputs.token }}
|
|
55
|
+
title: Release Failure for Docker Image ${{ steps.set-properties.outputs.VERSION }}-${{ steps.set-properties.outputs.DATE }}
|
|
56
|
+
body: See https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
|
57
|
+
labels: "docker, release_failure"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "Stale issues and PRs handler"
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
schedule:
|
|
6
|
+
- cron: "0 0 * * *"
|
|
7
|
+
|
|
8
|
+
permissions: read-all
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
stale:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
permissions:
|
|
14
|
+
issues: write
|
|
15
|
+
pull-requests: write
|
|
16
|
+
steps:
|
|
17
|
+
- uses: GitHubSecurityLab/actions-permissions/monitor@v1
|
|
18
|
+
- uses: actions/stale@v9
|
|
19
|
+
id: stale
|
|
20
|
+
with:
|
|
21
|
+
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
22
|
+
stale-issue-message: |
|
|
23
|
+
This issue has gone 30 days without any activity and meets the project's definition of "stale". This will be auto-closed if there is no new activity over the next 30 days. If the issue is still relevant and active, you can simply comment with a "bump" to keep it open, or add the label "not_stale". Thanks for keeping our repository healthy!
|
|
24
|
+
stale-pr-message: |
|
|
25
|
+
This PR has gone 30 days without any activity and meets the project's definition of "stale". This will be auto-closed if there is no new activity over the next 30 days. If the issue is still relevant and active, you can simply comment with a "bump" to keep it open, or add the label "not_stale". Thanks for keeping our repository healthy!
|
|
26
|
+
stale-issue-label: "no-issue-activity"
|
|
27
|
+
stale-pr-label: "no-pr-activity"
|
|
28
|
+
days-before-stale: 30
|
|
29
|
+
days-before-close: 30
|
|
30
|
+
exempt-all-milestones: true
|
|
31
|
+
exempt-issue-labels: "not_stale"
|
|
32
|
+
exempt-pr-labels: "not_stale"
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile
|
|
2
|
+
# ----- Build Stage -----
|
|
3
|
+
FROM node:lts-alpine AS builder
|
|
4
|
+
WORKDIR /app
|
|
5
|
+
|
|
6
|
+
# Copy package and configuration
|
|
7
|
+
COPY ../package.json ../package-lock.json ../tsconfig.json ../tsconfig.build.json ./
|
|
8
|
+
|
|
9
|
+
# Copy source code
|
|
10
|
+
COPY ../src ./src
|
|
11
|
+
|
|
12
|
+
# Install dependencies and build
|
|
13
|
+
RUN npm ci && npm run build
|
|
14
|
+
|
|
15
|
+
# ----- Production Stage -----
|
|
16
|
+
FROM node:lts-alpine
|
|
17
|
+
|
|
18
|
+
# Copy built artifacts
|
|
19
|
+
COPY --from=builder /app/dist ./dist
|
|
20
|
+
|
|
21
|
+
# Copy package.json for production install
|
|
22
|
+
COPY ../package.json ../package-lock.json ./
|
|
23
|
+
|
|
24
|
+
# Install only production dependencies
|
|
25
|
+
RUN npm ci --production --ignore-scripts
|
|
26
|
+
|
|
27
|
+
# Expose no ports (stdio only)
|
|
28
|
+
|
|
29
|
+
# Default command
|
|
30
|
+
CMD ["node", "dist/index.js"]
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# Smithery.ai configuration
|
|
2
|
+
build:
|
|
3
|
+
dockerfile: Dockerfile
|
|
4
|
+
dockerBuildPath: ../
|
|
5
|
+
startCommand:
|
|
6
|
+
type: stdio
|
|
7
|
+
configSchema:
|
|
8
|
+
type: object
|
|
9
|
+
properties:
|
|
10
|
+
atlasClientId:
|
|
11
|
+
type: string
|
|
12
|
+
title: Atlas Client Id
|
|
13
|
+
description: Atlas API client ID for authentication. Required for running Atlas tools.
|
|
14
|
+
atlasClientSecret:
|
|
15
|
+
type: string
|
|
16
|
+
title: Atlas Client Secret
|
|
17
|
+
description: Atlas API client secret for authentication. Required for running Atlas tools.
|
|
18
|
+
connectionString:
|
|
19
|
+
type: string
|
|
20
|
+
title: MongoDB Connection string
|
|
21
|
+
description: MongoDB connection string for direct database connections. Optional, if not set, you'll need to call the `connect` tool before interacting with MongoDB data.
|
|
22
|
+
readOnly:
|
|
23
|
+
type: boolean
|
|
24
|
+
title: Read-only
|
|
25
|
+
description: When set to true, only allows read and metadata operation types, disabling create/update/delete operations.
|
|
26
|
+
default: false
|
|
27
|
+
exampleConfig:
|
|
28
|
+
atlasClientId: YOUR_ATLAS_CLIENT_ID
|
|
29
|
+
atlasClientSecret: YOUR_ATLAS_CLIENT_SECRET
|
|
30
|
+
connectionString: mongodb+srv://USERNAME:PASSWORD@YOUR_CLUSTER.mongodb.net
|
|
31
|
+
readOnly: true
|
|
32
|
+
|
|
33
|
+
commandFunction:
|
|
34
|
+
# A function that produces the CLI command to start the MCP on stdio.
|
|
35
|
+
|-
|
|
36
|
+
(config) => {
|
|
37
|
+
const args = ['dist/index.js'];
|
|
38
|
+
if (config) {
|
|
39
|
+
if (config.atlasClientId) {
|
|
40
|
+
args.push('--apiClientId');
|
|
41
|
+
args.push(config.atlasClientId);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
if (config.atlasClientSecret) {
|
|
45
|
+
args.push('--apiClientSecret');
|
|
46
|
+
args.push(config.atlasClientSecret);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
if (config.readOnly) {
|
|
50
|
+
args.push('--readOnly');
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
if (config.connectionString) {
|
|
54
|
+
args.push('--connectionString');
|
|
55
|
+
args.push(config.connectionString);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return {
|
|
60
|
+
command: "node",
|
|
61
|
+
args
|
|
62
|
+
};
|
|
63
|
+
}
|
package/CONTRIBUTING.md
CHANGED
|
@@ -55,7 +55,7 @@ This project implements a Model Context Protocol (MCP) server for MongoDB and Mo
|
|
|
55
55
|
npm run inspect
|
|
56
56
|
```
|
|
57
57
|
|
|
58
|
-
4. Commit your changes
|
|
58
|
+
4. Commit your changes using [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) format.
|
|
59
59
|
|
|
60
60
|
## Adding tests to the MCP Server
|
|
61
61
|
|
package/Dockerfile
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
FROM node:22-alpine
|
|
2
|
+
ARG VERSION=latest
|
|
3
|
+
RUN addgroup -S mcp && adduser -S mcp -G mcp
|
|
4
|
+
RUN npm install -g mongodb-mcp-server@${VERSION}
|
|
5
|
+
USER mcp
|
|
6
|
+
WORKDIR /home/mcp
|
|
7
|
+
ENTRYPOINT ["mongodb-mcp-server"]
|
|
8
|
+
LABEL maintainer="MongoDB Inc <info@mongodb.com>"
|
|
9
|
+
LABEL description="MongoDB MCP Server"
|
|
10
|
+
LABEL version=${VERSION}
|
package/README.md
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
[](https://insiders.vscode.dev/redirect/mcp/install?name=mongodb&inputs=%5B%7B%22id%22%3A%22connection_string%22%2C%22type%22%3A%22promptString%22%2C%22description%22%3A%22MongoDB%20connection%20string%22%7D%5D&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22mongodb-mcp-server%22%5D%2C%22env%22%3A%7B%22MDB_MCP_CONNECTION_STRING%22%3A%22%24%7Binput%3Aconnection_string%7D%22%7D%7D)
|
|
2
|
+
[](https://cursor.com/install-mcp?name=MongoDB&config=eyJjb21tYW5kIjoibnB4IC15IG1vbmdvZGItbWNwLXNlcnZlciJ9)
|
|
3
|
+
[](https://smithery.ai/server/@mongodb-js/mongodb-mcp-server)
|
|
4
|
+
|
|
1
5
|
# MongoDB MCP Server
|
|
2
6
|
|
|
3
7
|
A Model Context Protocol server for interacting with MongoDB Databases and MongoDB Atlas.
|
|
@@ -22,7 +26,7 @@ A Model Context Protocol server for interacting with MongoDB Databases and Mongo
|
|
|
22
26
|
|
|
23
27
|
## Prerequisites
|
|
24
28
|
|
|
25
|
-
- Node.js (v20 or later)
|
|
29
|
+
- Node.js (v20.10.0 or later)
|
|
26
30
|
|
|
27
31
|
```shell
|
|
28
32
|
node -v
|
|
@@ -36,6 +40,8 @@ node -v
|
|
|
36
40
|
|
|
37
41
|
### Quick Start
|
|
38
42
|
|
|
43
|
+
> **Note:** When using Atlas API credentials, be sure to assign only the minimum required permissions to your service account. See [Atlas API Permissions](#atlas-api-permissions) for details.
|
|
44
|
+
|
|
39
45
|
Most MCP clients require a configuration file to be created or modified to add the MCP server.
|
|
40
46
|
|
|
41
47
|
Note: The configuration file syntax can be different across clients. Please refer to the following links for the latest expected syntax:
|
|
@@ -58,13 +64,15 @@ You can pass your connection string via args, make sure to use a valid username
|
|
|
58
64
|
"-y",
|
|
59
65
|
"mongodb-mcp-server",
|
|
60
66
|
"--connectionString",
|
|
61
|
-
"mongodb
|
|
67
|
+
"mongodb://localhost:27017/myDatabase"
|
|
62
68
|
]
|
|
63
69
|
}
|
|
64
70
|
}
|
|
65
71
|
}
|
|
66
72
|
```
|
|
67
73
|
|
|
74
|
+
NOTE: The connection string can be configured to connect to any MongoDB cluster, whether it's a local instance or an Atlas cluster.
|
|
75
|
+
|
|
68
76
|
#### Option 2: Atlas API credentials args
|
|
69
77
|
|
|
70
78
|
Use your Atlas API Service Accounts credentials. Must follow all the steps in [Atlas API Access](#atlas-api-access) section.
|
|
@@ -87,7 +95,7 @@ Use your Atlas API Service Accounts credentials. Must follow all the steps in [A
|
|
|
87
95
|
}
|
|
88
96
|
```
|
|
89
97
|
|
|
90
|
-
|
|
98
|
+
#### Option 3: Standalone Service using command arguments
|
|
91
99
|
|
|
92
100
|
Start Server using npx command:
|
|
93
101
|
|
|
@@ -109,6 +117,95 @@ You can use environment variables in the config file or set them and run the ser
|
|
|
109
117
|
- Connection String via environment variables in the MCP file [example](#connection-string-with-environment-variables)
|
|
110
118
|
- Atlas API credentials via environment variables in the MCP file [example](#atlas-api-credentials-with-environment-variables)
|
|
111
119
|
|
|
120
|
+
#### Option 5: Using Docker
|
|
121
|
+
|
|
122
|
+
You can run the MongoDB MCP Server in a Docker container, which provides isolation and doesn't require a local Node.js installation.
|
|
123
|
+
|
|
124
|
+
#### Run with Environment Variables
|
|
125
|
+
|
|
126
|
+
You may provide either a MongoDB connection string OR Atlas API credentials:
|
|
127
|
+
|
|
128
|
+
##### Option A: No configuration
|
|
129
|
+
|
|
130
|
+
```shell
|
|
131
|
+
docker run --rm -i \
|
|
132
|
+
mongodb/mongodb-mcp-server:latest
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
##### Option B: With MongoDB connection string
|
|
136
|
+
|
|
137
|
+
```shell
|
|
138
|
+
docker run --rm -i \
|
|
139
|
+
-e MDB_MCP_CONNECTION_STRING="mongodb+srv://username:password@cluster.mongodb.net/myDatabase" \
|
|
140
|
+
mongodb/mongodb-mcp-server:latest
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
##### Option C: With Atlas API credentials
|
|
144
|
+
|
|
145
|
+
```shell
|
|
146
|
+
docker run --rm -i \
|
|
147
|
+
-e MDB_MCP_API_CLIENT_ID="your-atlas-service-accounts-client-id" \
|
|
148
|
+
-e MDB_MCP_API_CLIENT_SECRET="your-atlas-service-accounts-client-secret" \
|
|
149
|
+
mongodb/mongodb-mcp-server:latest
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
##### Docker in MCP Configuration File
|
|
153
|
+
|
|
154
|
+
Without options:
|
|
155
|
+
|
|
156
|
+
```json
|
|
157
|
+
{
|
|
158
|
+
"mcpServers": {
|
|
159
|
+
"MongoDB": {
|
|
160
|
+
"command": "docker",
|
|
161
|
+
"args": ["run", "--rm", "-i", "mongodb/mongodb-mcp-server:latest"]
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
With connection string:
|
|
168
|
+
|
|
169
|
+
```json
|
|
170
|
+
{
|
|
171
|
+
"mcpServers": {
|
|
172
|
+
"MongoDB": {
|
|
173
|
+
"command": "docker",
|
|
174
|
+
"args": [
|
|
175
|
+
"run",
|
|
176
|
+
"--rm",
|
|
177
|
+
"-i",
|
|
178
|
+
"-e",
|
|
179
|
+
"MDB_MCP_CONNECTION_STRING=mongodb+srv://username:password@cluster.mongodb.net/myDatabase",
|
|
180
|
+
"mongodb/mongodb-mcp-server:latest"
|
|
181
|
+
]
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
With Atlas API credentials:
|
|
188
|
+
|
|
189
|
+
```json
|
|
190
|
+
{
|
|
191
|
+
"mcpServers": {
|
|
192
|
+
"MongoDB": {
|
|
193
|
+
"command": "docker",
|
|
194
|
+
"args": [
|
|
195
|
+
"run",
|
|
196
|
+
"--rm",
|
|
197
|
+
"-i",
|
|
198
|
+
"-e",
|
|
199
|
+
"MDB_MCP_API_CLIENT_ID=your-atlas-service-accounts-client-id",
|
|
200
|
+
"-e",
|
|
201
|
+
"MDB_MCP_API_CLIENT_SECRET=your-atlas-service-accounts-client-secret",
|
|
202
|
+
"mongodb/mongodb-mcp-server:latest"
|
|
203
|
+
]
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
```
|
|
208
|
+
|
|
112
209
|
## 🛠️ Supported Tools
|
|
113
210
|
|
|
114
211
|
### Tool List
|
|
@@ -125,7 +222,8 @@ You can use environment variables in the config file or set them and run the ser
|
|
|
125
222
|
- `atlas-inspect-access-list` - Inspect IP/CIDR ranges with access to MongoDB Atlas clusters
|
|
126
223
|
- `atlas-create-access-list` - Configure IP/CIDR access list for MongoDB Atlas clusters
|
|
127
224
|
- `atlas-list-db-users` - List MongoDB Atlas database users
|
|
128
|
-
- `atlas-create-db-user` -
|
|
225
|
+
- `atlas-create-db-user` - Creates a MongoDB Atlas database user
|
|
226
|
+
- `atlas-list-alerts` - List MongoDB Atlas Alerts for a Project
|
|
129
227
|
|
|
130
228
|
NOTE: atlas tools are only available when you set credentials on [configuration](#configuration) section.
|
|
131
229
|
|
|
@@ -161,15 +259,15 @@ The MongoDB MCP Server can be configured using multiple methods, with the follow
|
|
|
161
259
|
|
|
162
260
|
### Configuration Options
|
|
163
261
|
|
|
164
|
-
| Option | Description
|
|
165
|
-
| ------------------ |
|
|
166
|
-
| `apiClientId` | Atlas API client ID for authentication
|
|
167
|
-
| `apiClientSecret` | Atlas API client secret for authentication
|
|
168
|
-
| `connectionString` | MongoDB connection string for direct database connections
|
|
169
|
-
| `logPath` | Folder to store logs
|
|
170
|
-
| `disabledTools` | An array of tool names, operation types, and/or categories of tools that will be disabled
|
|
171
|
-
| `readOnly` | When set to true, only allows read and metadata operation types, disabling create/update/delete operations
|
|
172
|
-
| `telemetry` | When set to disabled, disables telemetry collection
|
|
262
|
+
| Option | Description |
|
|
263
|
+
| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
264
|
+
| `apiClientId` | Atlas API client ID for authentication. Required for running Atlas tools. |
|
|
265
|
+
| `apiClientSecret` | Atlas API client secret for authentication. Required for running Atlas tools. |
|
|
266
|
+
| `connectionString` | MongoDB connection string for direct database connections. Optional, if not set, you'll need to call the `connect` tool before interacting with MongoDB data. |
|
|
267
|
+
| `logPath` | Folder to store logs. |
|
|
268
|
+
| `disabledTools` | An array of tool names, operation types, and/or categories of tools that will be disabled. |
|
|
269
|
+
| `readOnly` | When set to true, only allows read and metadata operation types, disabling create/update/delete operations. |
|
|
270
|
+
| `telemetry` | When set to disabled, disables telemetry collection. |
|
|
173
271
|
|
|
174
272
|
#### Log Path
|
|
175
273
|
|
|
@@ -228,13 +326,16 @@ You can disable telemetry using:
|
|
|
228
326
|
|
|
229
327
|
To use the Atlas API tools, you'll need to create a service account in MongoDB Atlas:
|
|
230
328
|
|
|
329
|
+
> **ℹ️ Note:** For a detailed breakdown of the minimum required permissions for each Atlas operation, see the [Atlas API Permissions](#atlas-api-permissions) section below.
|
|
330
|
+
|
|
231
331
|
1. **Create a Service Account:**
|
|
232
332
|
|
|
233
333
|
- Log in to MongoDB Atlas at [cloud.mongodb.com](https://cloud.mongodb.com)
|
|
234
334
|
- Navigate to Access Manager > Organization Access
|
|
235
335
|
- Click Add New > Applications > Service Accounts
|
|
236
336
|
- Enter name, description and expiration for your service account (e.g., "MCP, MCP Server Access, 7 days")
|
|
237
|
-
-
|
|
337
|
+
- **Assign only the minimum permissions needed for your use case.**
|
|
338
|
+
- See [Atlas API Permissions](#atlas-api-permissions) for details.
|
|
238
339
|
- Click "Create"
|
|
239
340
|
|
|
240
341
|
To learn more about Service Accounts, check the [MongoDB Atlas documentation](https://www.mongodb.com/docs/atlas/api/service-accounts-overview/).
|
|
@@ -251,6 +352,26 @@ To learn more about Service Accounts, check the [MongoDB Atlas documentation](ht
|
|
|
251
352
|
4. **Configure the MCP Server:**
|
|
252
353
|
- Use one of the configuration methods below to set your `apiClientId` and `apiClientSecret`
|
|
253
354
|
|
|
355
|
+
### Atlas API Permissions
|
|
356
|
+
|
|
357
|
+
> **Security Warning:** Granting the Organization Owner role is rarely necessary and can be a security risk. Assign only the minimum permissions needed for your use case.
|
|
358
|
+
|
|
359
|
+
#### Quick Reference: Required roles per operation
|
|
360
|
+
|
|
361
|
+
| What you want to do | Safest Role to Assign (where) |
|
|
362
|
+
| ------------------------------------ | --------------------------------------- |
|
|
363
|
+
| List orgs/projects | Org Member or Org Read Only (Org) |
|
|
364
|
+
| Create new projects | Org Project Creator (Org) |
|
|
365
|
+
| View clusters/databases in a project | Project Read Only (Project) |
|
|
366
|
+
| Create/manage clusters in a project | Project Cluster Manager (Project) |
|
|
367
|
+
| Manage project access lists | Project IP Access List Admin (Project) |
|
|
368
|
+
| Manage database users | Project Database Access Admin (Project) |
|
|
369
|
+
|
|
370
|
+
- **Prefer project-level roles** for most operations. Assign only to the specific projects you need to manage or view.
|
|
371
|
+
- **Avoid Organization Owner** unless you require full administrative control over all projects and settings in the organization.
|
|
372
|
+
|
|
373
|
+
For a full list of roles and their privileges, see the [Atlas User Roles documentation](https://www.mongodb.com/docs/atlas/reference/user-roles/#service-user-roles).
|
|
374
|
+
|
|
254
375
|
### Configuration Methods
|
|
255
376
|
|
|
256
377
|
#### Environment Variables
|
|
@@ -7,7 +7,9 @@ export class ApiClient {
|
|
|
7
7
|
constructor(options) {
|
|
8
8
|
this.getAccessToken = async () => {
|
|
9
9
|
if (this.oauth2Client && (!this.accessToken || this.accessToken.expired())) {
|
|
10
|
-
this.accessToken = await this.oauth2Client.getToken({
|
|
10
|
+
this.accessToken = await this.oauth2Client.getToken({
|
|
11
|
+
agent: this.options.userAgent,
|
|
12
|
+
});
|
|
11
13
|
}
|
|
12
14
|
return this.accessToken?.token.access_token;
|
|
13
15
|
};
|
|
@@ -186,6 +188,13 @@ export class ApiClient {
|
|
|
186
188
|
throw ApiClientError.fromError(response, error);
|
|
187
189
|
}
|
|
188
190
|
}
|
|
191
|
+
async listAlerts(options) {
|
|
192
|
+
const { data, error, response } = await this.client.GET("/api/atlas/v2/groups/{groupId}/alerts", options);
|
|
193
|
+
if (error) {
|
|
194
|
+
throw ApiClientError.fromError(response, error);
|
|
195
|
+
}
|
|
196
|
+
return data;
|
|
197
|
+
}
|
|
189
198
|
async listClusters(options) {
|
|
190
199
|
const { data, error, response } = await this.client.GET("/api/atlas/v2/groups/{groupId}/clusters", options);
|
|
191
200
|
if (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../../src/common/atlas/apiClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../../src/common/atlas/apiClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,7 @@ export function formatCluster(cluster) {
|
|
|
21
21
|
regionConfig.analyticsSpecs?.instanceSize,
|
|
22
22
|
};
|
|
23
23
|
});
|
|
24
|
-
const instanceSize =
|
|
24
|
+
const instanceSize = regionConfigs[0]?.instanceSize ?? "UNKNOWN";
|
|
25
25
|
const clusterInstanceType = instanceSize == "M0" ? "FREE" : "DEDICATED";
|
|
26
26
|
return {
|
|
27
27
|
name: cluster.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../../src/common/atlas/cluster.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAWhD,MAAM,UAAU,iBAAiB,CAAC,OAAuC;IACrE,OAAO;QACH,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,SAAS;QACvB,KAAK,EAAE,OAAO,CAAC,SAAS;QACxB,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,gBAAgB,EAAE,OAAO,CAAC,iBAAiB,EAAE,WAAW,IAAI,OAAO,CAAC,iBAAiB,EAAE,QAAQ;KAClG,CAAC;AACN,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAmC;IAC7D,MAAM,aAAa,GAAG,CAAC,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC;SACjD,GAAG,CACA,CAAC,eAAe,EAAE,EAAE,CAChB,CAAC,eAAe,CAAC,aAAa,IAAI,EAAE,CAWjC,CACV;SACA,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;QAClB,OAAO;YACH,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,YAAY,EACR,YAAY,CAAC,cAAc,EAAE,YAAY;gBACzC,YAAY,CAAC,aAAa,EAAE,YAAY;gBACxC,YAAY,CAAC,cAAc,EAAE,YAAY;SAChD,CAAC;IACN,CAAC,CAAC,CAAC;IAEP,MAAM,YAAY,GAAG,
|
|
1
|
+
{"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../../src/common/atlas/cluster.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAWhD,MAAM,UAAU,iBAAiB,CAAC,OAAuC;IACrE,OAAO;QACH,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,SAAS;QACvB,KAAK,EAAE,OAAO,CAAC,SAAS;QACxB,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,gBAAgB,EAAE,OAAO,CAAC,iBAAiB,EAAE,WAAW,IAAI,OAAO,CAAC,iBAAiB,EAAE,QAAQ;KAClG,CAAC;AACN,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAmC;IAC7D,MAAM,aAAa,GAAG,CAAC,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC;SACjD,GAAG,CACA,CAAC,eAAe,EAAE,EAAE,CAChB,CAAC,eAAe,CAAC,aAAa,IAAI,EAAE,CAWjC,CACV;SACA,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;QAClB,OAAO;YACH,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,YAAY,EACR,YAAY,CAAC,cAAc,EAAE,YAAY;gBACzC,YAAY,CAAC,aAAa,EAAE,YAAY;gBACxC,YAAY,CAAC,cAAc,EAAE,YAAY;SAChD,CAAC;IACN,CAAC,CAAC,CAAC;IAEP,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,YAAY,IAAI,SAAS,CAAC;IACjE,MAAM,mBAAmB,GAAG,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC;IAExE,OAAO;QACH,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,mBAAmB;QACjC,YAAY,EAAE,mBAAmB,IAAI,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;QAC3E,KAAK,EAAE,OAAO,CAAC,SAAS;QACxB,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,gBAAgB,EAAE,OAAO,CAAC,iBAAiB,EAAE,WAAW,IAAI,OAAO,CAAC,iBAAiB,EAAE,QAAQ;KAClG,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAoB,EAAE,SAAiB,EAAE,WAAmB;IAC7F,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC;YACvC,MAAM,EAAE;gBACJ,IAAI,EAAE;oBACF,OAAO,EAAE,SAAS;oBAClB,WAAW;iBACd;aACJ;SACJ,CAAC,CAAC;QACH,OAAO,aAAa,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC;gBAC3C,MAAM,EAAE;oBACJ,IAAI,EAAE;wBACF,OAAO,EAAE,SAAS;wBAClB,IAAI,EAAE,WAAW;qBACpB;iBACJ;aACJ,CAAC,CAAC;YACH,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACjB,MAAM,GAAG,GAAG,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAClF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,6BAA6B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACvG,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;AACL,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -25,6 +25,23 @@ try {
|
|
|
25
25
|
userConfig: config,
|
|
26
26
|
});
|
|
27
27
|
const transport = createEJsonTransport();
|
|
28
|
+
const shutdown = () => {
|
|
29
|
+
logger.info(LogId.serverCloseRequested, "server", `Server close requested`);
|
|
30
|
+
server
|
|
31
|
+
.close()
|
|
32
|
+
.then(() => {
|
|
33
|
+
logger.info(LogId.serverClosed, "server", `Server closed successfully`);
|
|
34
|
+
process.exit(0);
|
|
35
|
+
})
|
|
36
|
+
.catch((err) => {
|
|
37
|
+
const error = err instanceof Error ? err : new Error(String(err));
|
|
38
|
+
logger.error(LogId.serverCloseFailure, "server", `Error closing server: ${error.message}`);
|
|
39
|
+
process.exit(1);
|
|
40
|
+
});
|
|
41
|
+
};
|
|
42
|
+
process.once("SIGINT", shutdown);
|
|
43
|
+
process.once("SIGTERM", shutdown);
|
|
44
|
+
process.once("SIGQUIT", shutdown);
|
|
28
45
|
await server.connect(transport);
|
|
29
46
|
}
|
|
30
47
|
catch (error) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,IAAI,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,eAAe,EAAE,MAAM,CAAC,eAAe;KAC1C,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC;QAC5B,IAAI,EAAE,WAAW,CAAC,aAAa;QAC/B,OAAO,EAAE,WAAW,CAAC,OAAO;KAC/B,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAEpD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;QACtB,SAAS;QACT,OAAO;QACP,SAAS;QACT,UAAU,EAAE,MAAM;KACrB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;IAEzC,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAAC,OAAO,KAAc,EAAE,CAAC;IACtB,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,kBAAkB,EAAE,QAAQ,EAAE,+BAA+B,KAAe,EAAE,CAAC,CAAC;IACvG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,IAAI,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,eAAe,EAAE,MAAM,CAAC,eAAe;KAC1C,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC;QAC5B,IAAI,EAAE,WAAW,CAAC,aAAa;QAC/B,OAAO,EAAE,WAAW,CAAC,OAAO;KAC/B,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAEpD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;QACtB,SAAS;QACT,OAAO;QACP,SAAS;QACT,UAAU,EAAE,MAAM;KACrB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;IAEzC,MAAM,QAAQ,GAAG,GAAG,EAAE;QAClB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,QAAQ,EAAE,wBAAwB,CAAC,CAAC;QAE5E,MAAM;aACD,KAAK,EAAE;aACP,IAAI,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,4BAA4B,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;YACpB,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAClE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,kBAAkB,EAAE,QAAQ,EAAE,yBAAyB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACX,CAAC,CAAC;IAEF,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACjC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAClC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAElC,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAAC,OAAO,KAAc,EAAE,CAAC;IACtB,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,kBAAkB,EAAE,QAAQ,EAAE,+BAA+B,KAAe,EAAE,CAAC,CAAC;IACvG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC"}
|
package/dist/logger.js
CHANGED
|
@@ -4,6 +4,9 @@ import redact from "mongodb-redact";
|
|
|
4
4
|
export const LogId = {
|
|
5
5
|
serverStartFailure: mongoLogId(1000001),
|
|
6
6
|
serverInitialized: mongoLogId(1000002),
|
|
7
|
+
serverCloseRequested: mongoLogId(1000003),
|
|
8
|
+
serverClosed: mongoLogId(1000004),
|
|
9
|
+
serverCloseFailure: mongoLogId(1000005),
|
|
7
10
|
atlasCheckCredentials: mongoLogId(1001001),
|
|
8
11
|
atlasDeleteDatabaseUserFailure: mongoLogId(1001002),
|
|
9
12
|
atlasConnectFailure: mongoLogId(1001003),
|
|
@@ -15,11 +18,13 @@ export const LogId = {
|
|
|
15
18
|
telemetryMetadataError: mongoLogId(1002005),
|
|
16
19
|
telemetryDeviceIdFailure: mongoLogId(1002006),
|
|
17
20
|
telemetryDeviceIdTimeout: mongoLogId(1002007),
|
|
21
|
+
telemetryContainerEnvFailure: mongoLogId(1002008),
|
|
18
22
|
toolExecute: mongoLogId(1003001),
|
|
19
23
|
toolExecuteFailure: mongoLogId(1003002),
|
|
20
24
|
toolDisabled: mongoLogId(1003003),
|
|
21
25
|
mongodbConnectFailure: mongoLogId(1004001),
|
|
22
26
|
mongodbDisconnectFailure: mongoLogId(1004002),
|
|
27
|
+
toolUpdateFailure: mongoLogId(1005001),
|
|
23
28
|
};
|
|
24
29
|
class LoggerBase {
|
|
25
30
|
info(id, context, message) {
|