用途:把自然语言需求转换为只读的 MongoDB 查询(find)或聚合管道,适合需要快速编写、校验和优化查询的场景。
主要能力:通过 MCP 工具获取数据库与集合信息、索引、schema(sampleSize 50)和样本文档;在生成前校验字段名,避免因字段不存在而静默返回空结果;根据需求选择 find 或聚合管道;生成后检查索引覆盖情况,必要时提示创建索引。
使用方式:先确定数据库名与集合名(可用 mcp__mongodb__list-databases、mcp__mongodb__list-collections),再依次调用 mcp__mongodb__collection-indexes、mcp__mongodb__collection-schema、mcp__mongodb__find(limit 4)获取上下文。输出默认使用 MongoDB shell 语法;若用户指定语言或驱动则按其格式。find 响应含 filter、projection、sort、limit;聚合响应含 pipeline。
适用场景:简单过滤、排序、投影用 find;分组聚合、多阶段转换、$lookup 连接、数组展开用聚合管道。
限制与注意:仅生成只读查询;避免 $where、无文本索引时使用 $text、滥用 $expr;不要添加冗余操作符;投影只保留必要字段,不需要 _id 时加 _id: 0;数组非空检查用 "arrayField.0": {$exists: true};GeoJSON 坐标须经度在前。样本文档数量按 schema 宽度调整(<30 字段 limit 4,30–80 用 2,80–150 用 1,150+ 用 1 并投影相关字段),大数组用 $slice: 3、长字符串用 $substr 限制 100 字符。无法生成时说明原因、请求澄清或给出替代方案。具体收费、平台支持等信息暂未提供。