Updates the specified MCP configuration for the project. Supports partial updates: only provided fields are changed.
- Project Owner
Path parameters
-
Unique 24-hexadecimal digit string that identifies your project. Use the /groups endpoint to retrieve all projects to which the authenticated user has access.
NOTE: Groups and projects are synonymous terms. Your group id is the same as your project id. For existing groups, your group/project id remains the same. The resource and corresponding endpoints use the term groups.
Format should match the following pattern:
^([a-f0-9]{24})$. -
Unique identifier of the MCP configuration to update.
Format should match the following pattern:
^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$.
Query parameters
-
Flag that indicates whether the response body should be in the prettyprint format.
Default value is
false.Prettyprint
Body
Required
MCP configuration fields to update.
-
List of IP access list entries that define allowed source addresses for this MCP configuration. If provided, replaces the existing IP access list.
Not more than
200elements. -
Updated human-readable name for this MCP configuration.
Minimum length is
1, maximum length is64. Format should match the following pattern:^[\p{L}\p{N}\-_.,' ]*$. -
List of project roles associated with this MCP configuration. If provided, replaces the existing list of roles.
Not more than
100elements.
atlas api remoteMcpConfigurations updateGroupMcpConfig --help
import (
"os"
"context"
"log"
sdk "go.mongodb.org/atlas-sdk/v20250312001/admin"
)
func main() {
ctx := context.Background()
clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupMcpConfigApiParams{}
sdkResp, httpResp, err := client.RemoteMCPConfigurationsApi.
UpdateGroupMcpConfigWithParams(ctx, params).
Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/mcpConfigs/{mcpConfigId}" \
-d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/mcpConfigs/{mcpConfigId}" \
-d '{ <Payload> }'
{
"ipAccessList": [
{
"cidrBlock": "203.0.113.0/24",
"ipAddress": "203.0.113.10"
}
],
"mcpConfigName": "string",
"roles": [
"string"
]
}
# Headers
# Payload
{
"clientId": "mdb_sa_id_1234567890abcdef12345678",
"egressClientId": "mdb_sa_id_1234567890abcdef12345678",
"ipAccessList": [
{
"cidrBlock": "203.0.113.0/24",
"createdAt": "2026-05-04T09:42:00Z",
"ipAddress": "203.0.113.10",
"lastUsedAddress": "203.0.113.10",
"lastUsedAt": "2026-05-04T09:42:00Z",
"requestCount": 42
}
],
"mcpConfigId": "b9254bc4-d6cc-4325-abf4-fb9d2a9de00a",
"mcpConfigName": "string",
"roles": [
"string"
]
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
"error": 400,
"errorCode": "VALIDATION_ERROR",
"reason": "Bad Request"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"error": 401,
"errorCode": "NOT_ORG_GROUP_CREATOR",
"reason": "Unauthorized"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"error": 403,
"errorCode": "CANNOT_CHANGE_GROUP_NAME",
"reason": "Forbidden"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
"error": 404,
"errorCode": "RESOURCE_NOT_FOUND",
"reason": "Not Found"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"error": 429,
"errorCode": "RATE_LIMITED",
"reason": "Too Many Requests"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"error": 500,
"errorCode": "UNEXPECTED_ERROR",
"reason": "Internal Server Error"
}