Install
openclaw skills install @thcjp/atlas-admin-console-freeopenclaw skills install @thcjp/atlas-admin-console-free本工具为MongoDB Atlas运维者提供Admin API浏览与查询能力。免费版覆盖核心场景:API目录浏览、端点详情查看、Schema定义获取、只读API调用,足以应对日常文档查阅与状态查询需求。
MongoDB Atlas提供丰富的Admin API,覆盖集群管理、备份恢复、用户管理、监控告警等50+分类。然而官方OpenAPI规范文档冗长,定位具体端点与参数效率低下。本工具通过命令行接口提供高效的API浏览、检索与调用能力,将"翻文档"的时间从分钟级降到秒级。
工具基于Node.js实现,无凭证时作为只读文档浏览器,配置凭证后可执行实时API调用,且对状态变更操作强制执行安全协议。
| 能力分类 | 说明 |
|---|---|
| API目录 | 按关键字检索50+API分类 |
| 端点详情 | method、path、params、requestBody完整定义 |
| Schema定义 | 复杂类型的数据模型查询 |
| 只读调用 | GET方法直接执行,无副作用 |
| 安全协议 | POST/PUT/PATCH/DELETE必须dry-run + 确认 |
| 凭证管理 | 通过环境变量注入,禁止硬编码 |
技术实现要点:核心能力基于input_params参数与output_format配置实现,支持创建/查询/修改/删除等操作模式,通过config_options进行运行时配置。 |
用input_params参数进行配置。
输入: 用户提供核心功能执行所需的指令和必要参数。 处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作用config_options参数进行配置。
输入: 用户提供参数配置与调用所需的指令和必要参数。 处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回参数配置与调用的响应数据,包含状态码、结果和日志。
config_options参数,支持修改/重置/导入操作用output_format参数进行配置。
输入: 用户提供结果处理与输出所需的指令和必要参数。 处理: 解析结果处理与输出的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回结果处理与输出的响应数据,包含状态码、结果和日志。
output_format参数,支持导出/保存/转换操作
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:MongoDB、Atlas、Admin、浏览与查询工具、分类检索、端点详情查看、定义获取、运维者的、通过命令行检索、查看端点定义、免凭证即可作为只、读文档浏览器使用、配置凭证后可执行、Use、when、需要数据库操作、SQL、数据存储管理时使、不适用于数据库架、构设计决策等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。新接触Atlas API的开发者,通过catalog命令快速了解所有分类,通过detail命令查看具体端点的参数定义。
编写Atlas自动化运维脚本前,使用schema命令确认请求体结构,避免因字段错误导致调用失败。
只读查询集群列表、节点状态、备份信息、监控指标,无需登录Web控制台。
集群异常时快速查询告警、事件日志、节点状态,辅助定位问题。
# 确保Node.js 18+已安装
node --version
# ...
# 工具脚本随Skill分发,无需额外安装
# 列出所有API分类
node (请参考skill目录中的脚本文件) catalog
# ...
# 按关键字过滤
node (请参考skill目录中的脚本文件) catalog Clusters
# 获取特定Operation ID的完整定义
node (请参考skill目录中的脚本文件) detail listClusterDetails
# 获取复杂类型的数据模型
node (请参考skill目录中的脚本文件) schema "#/components/schemas/ApiError"
完整上手时间约60秒。
响应解析: 完成完成后,查看输出响应确认任务状态。成功时输出包含解析摘要和响应数据;失败时根据错误信息排查问题,查阅错误解析章节获取恢复步骤。
# 配置Atlas API凭证
export ATLAS_CLIENT_ID="your-client-id"
export ATLAS_CLIENT_SECRET="your-client-secret"
# ...
# 配置组织与项目ID
export ATLAS_GROUP_ID="your-group-id"
export ATLAS_ORG_ID="your-org-id"
# 列出所有集群
node (请参考skill目录中的脚本文件) GET groups/${ATLAS_GROUP_ID}/clusters
# ...
# 查看集群详情
node (请参考skill目录中的脚本文件) GET groups/${ATLAS_GROUP_ID}/clusters/DemoCluster
# ...
# 列出数据库用户
node (请参考skill目录中的脚本文件) GET groups/${ATLAS_GROUP_ID}/databaseUsers
# ...
# 查看告警
node (请参考skill目录中的脚本文件) GET groups/${ATLAS_GROUP_ID}/alerts
# 第一步:dry-run预览(不实际执行)
node (请参考skill目录中的脚本文件) POST groups/${ATLAS_GROUP_ID}/clusters \
--data '{"name":"DemoCluster", "providerSettings":{...}}' \
--dry-run
# ...
# 第二步:人工审核dry-run输出
# ...
# 第三步:明确确认后执行(加--yes跳过交互确认)
node (请参考skill目录中的脚本文件) POST groups/${ATLAS_GROUP_ID}/clusters \
--data '{"name":"DemoCluster", "providerSettings":{...}}' \
--yes
任何POST/PUT/PATCH/DELETE操作必须:
--dry-run验证payload与端点--yes执行# 正确:环境变量
export ATLAS_CLIENT_ID="xxx"
# ...
# 错误:硬编码在脚本中
const clientId = "xxx" // 禁止
dry-run模式会打印完整请求详情,便于检查JSON格式、字段名、URL路径是否正确,避免直接执行失败。
GET方法无副作用,可批量查询多个集群、项目、用户信息,便于自动化巡检。
API分类有50+,先通过catalog <关键字>缩小范围,再用detail查看具体端点,避免全量浏览。
A:可以。无凭证时作为只读文档浏览器,使用catalog、detail、schema命令查阅API规范,但不执行实际调用。配置凭证后才能调用实时API。
A:(1) 确认ATLAS_CLIENT_ID与ATLAS_CLIENT_SECRET环境变量已设置;(2) 在Atlas控制台确认API Key有对应权限;(3) 检查Group ID/Org ID是否正确。
A:(1) 检查JSON body格式是否正确,特别是嵌套对象;(2) 确认必填字段已提供;(3) 查看错误响应的detail字段定位问题;(4) 部分操作有资源配额限制,需联系Atlas支持提升。
A:(1) catalog Monitoring查找监控相关API;(2) detail <operationId>查看参数;(3) 执行GET调用获取监控指标。常用指标包括CPU使用率、内存、连接数、磁盘IO。
A:Atlas API有速率限制,建议每分钟不超过100次调用。批量操作时加入间隔(如sleep 1秒),避免触发429。专业版提供批量调用优化与重试机制。
A:(1) catalog Cloud Backups查找备份相关API;(2) 执行GET groups/{groupId}/clusters/{clusterName}/backup/snapshots获取快照列表。
本免费体验版限制以下高级功能:
解锁全部功能请使用专业版:atlas-admin-console-pro
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| Node.js | 运行时 | 必需 | nodejs.org 官方下载 |
| atlas-api.mjs | 脚本 | 必需 | 随本Skill分发 |
| atlas-call.mjs | 脚本 | 必需 | 随本Skill分发 |
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |
{
"success": true,
"data": {
"result": "Atlas管理台免费版处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "atlas admin console"
}
},
"execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
"error": null
}