MongoDB Atlas
Scanned@finishy1995
npx machina-cli add skill @finishy1995/mongodb-atlas-admin --openclawMongoDB Atlas Admin API
Tool to browse OpenAPI specifications for MongoDB Atlas.
Note: If ATLAS_CLIENT_ID and ATLAS_CLIENT_SECRET are configured in the environment, this tool can also execute live API calls. Without credentials, it functions as a read-only documentation browser.
Commands
1. List API Catalog
List all available API categories or filter by keyword.
node {baseDir}/scripts/atlas-api.mjs catalog # list all categories
node {baseDir}/scripts/atlas-api.mjs catalog Clusters
2. Get API Details
Get full endpoint definition (method, path, params) for a specific Operation ID.
node {baseDir}/scripts/atlas-api.mjs detail listClusterDetails
3. Get Schema Definition
Get the data model schema for complex types.
node {baseDir}/scripts/atlas-api.mjs schema "#/components/schemas/ApiError"
4. Execute Live API Calls
Execute real HTTP requests against the Atlas API.
Script: node {baseDir}/scripts/atlas-call.mjs <METHOD> <ENDPOINT> [flags]
⚠️ Mandatory Safety Protocol
For any state-changing operation (POST, PUT, PATCH, DELETE):
- STOP & REVIEW: You MUST NOT execute the command immediately.
- PREVIEW: Use
--dry-runfirst to verify the payload and endpoint. - CONFIRM: Display the full command and JSON body to the user.
- EXECUTE: Only run with
--yesafter receiving explicit user approval.
Usage Examples
1. Read-Only (Safe)
node {baseDir}/scripts/atlas-call.mjs GET groups/{groupId}/clusters
2. Create/Modify (RISKY - Require Approval)
node {baseDir}/scripts/atlas-call.mjs POST groups/{groupId}/clusters \
--data '{"name":"DemoCluster", "providerSettings":{...}}' \
--dry-run
Options
-d, --data <json>: Request body string (ensure proper JSON escaping).-p, --params <json>: Query parameters.--dry-run: Print the request details without executing (Recommended for verification).--yes: Skip interactive confirmation (Use CAREFULLY).
Environment
Requires ATLAS_CLIENT_ID and ATLAS_CLIENT_SECRET to be set.
Core Categories
(Use catalog command to see the full list of 50+ categories)
- Clusters / Cloud Backups
- Projects / Organizations
- Database Users / Custom Database Roles
- Alerts / Alert Configurations
- Monitoring and Logs / Events
- Network Peering / Private Endpoint Services
- Serverless Instances
- Access Tracking / Auditing
Overview
This tool lets you browse the MongoDB Atlas Admin API OpenAPI specs and, when credentials are provided, execute live API calls. Without credentials it acts as a read-only documentation browser, helping you explore endpoints, schemas, and operations.
How This Skill Works
The Atlas API actions are powered by atlas-api.mjs for catalog, detail, and schema queries, and atlas-call.mjs for real HTTP requests. It relies on ATLAS_CLIENT_ID and ATLAS_CLIENT_SECRET to enable live calls; if these aren’t set, it only supports read-only interactions. A built-in safety workflow enforces dry-run previews and explicit confirmation for state-changing operations.
When to Use It
- Explore all API categories with the catalog command
- Get a full endpoint definition for a specific Operation ID with detail
- Inspect data model schemas (e.g., ApiError) with schema
- Test read-only calls or preview mutations using dry-run
- Execute live Atlas API calls only after explicit user approval
Quick Start
- Step 1: Ensure ATLAS_CLIENT_ID and ATLAS_CLIENT_SECRET are configured in your environment
- Step 2: Explore API categories with: node {baseDir}/scripts/atlas-api.mjs catalog
- Step 3: Run a safe read or dry-run a mutation before executing live calls
Best Practices
- Set ATLAS_CLIENT_ID and ATLAS_CLIENT_SECRET to enable live calls
- Start by listing categories with catalog to understand capabilities
- Always run mutated requests with --dry-run to verify payloads
- Review the full command and JSON body before using --yes
- Keep credentials secure and rotate them regularly
Example Use Cases
- List all API categories: node {baseDir}/scripts/atlas-api.mjs catalog
- Get details for an operation: node {baseDir}/scripts/atlas-api.mjs detail listClusterDetails
- Fetch a schema: node {baseDir}/scripts/atlas-api.mjs schema "#/components/schemas/ApiError"
- Dry-run a cluster creation: node {baseDir}/scripts/atlas-call.mjs POST groups/{groupId}/clusters --data '{"name":"DemoCluster"}' --dry-run
- Perform a safe GET: node {baseDir}/scripts/atlas-call.mjs GET groups/{groupId}/clusters