@@ -312,7 +312,7 @@ export function registerDatabaseTools(server: ExtendedMcpServer) {
312312 {
313313 title : "读取 NoSQL 数据库结构" ,
314314 description :
315- "读取 NoSQL 数据库集合与索引结构,支持列出集合、查看集合详情、列出索引以及检查索引是否存在。" ,
315+ "读取 NoSQL 数据库集合与索引结构,支持列出集合、查看集合详情、列出索引以及检查索引是否存在。本工具为服务端管理工具,用于管理端查询数据库结构,不用于编写客户端代码。 " ,
316316 inputSchema : {
317317 action : z . enum ( [
318318 "listCollections" ,
@@ -500,7 +500,7 @@ checkIndex: 检查指定索引是否存在`),
500500 {
501501 title : "修改 NoSQL 数据库结构" ,
502502 description :
503- "修改 NoSQL 数据库结构,支持创建/删除集合,以及通过 updateCollection 的 updateOptions.CreateIndexes / updateOptions.DropIndexes 添加索引和删除索引。" ,
503+ "修改 NoSQL 数据库结构,支持创建/删除集合,以及通过 updateCollection 的 updateOptions.CreateIndexes / updateOptions.DropIndexes 添加索引和删除索引。本工具为服务端管理工具,用于管理端操作集合和索引结构,不用于编写客户端代码。 " ,
504504 inputSchema : {
505505 action : z . enum ( [
506506 "createCollection" ,
@@ -670,7 +670,7 @@ deleteCollection: 删除集合`),
670670 "readNoSqlDatabaseContent" ,
671671 {
672672 title : "查询并获取 NoSQL 数据库数据记录" ,
673- description : "查询并获取 NoSQL 数据库数据记录" ,
673+ description : "查询并获取 NoSQL 数据库数据记录。⚠️ 本工具为服务端管理工具,用于管理端/运维端查询。当任务要求编写客户端应用代码时(例如「用 JS SDK 读取数据」),不应使用本工具,而应在项目代码中编写 @cloudbase/js-sdk 客户端代码(如 db.collection().where().get())。 " ,
674674 inputSchema : {
675675 collectionName : z . string ( ) . describe ( "集合名称" ) ,
676676 instanceId : z
@@ -773,7 +773,7 @@ deleteCollection: 删除集合`),
773773 {
774774 title : "修改 NoSQL 数据库数据记录" ,
775775 description :
776- "修改 NoSQL 数据库数据记录。可按 MongoDB updateOne/updateMany 的心智模型理解:部分更新必须使用 `$set`、`$inc`、`$push` 等更新操作符;如果直接传“ 字段到值的普通对象” 这类内容,底层会把它当作替换内容,存在覆盖整条文档的风险。更新嵌套对象中的某个字段时必须使用点号路径,例如把 `address.city` 设为 `shenzhen`;如果把整个 `address` 对象作为 `$set` 的值传入,则整个 `address` 对象会被替换,同级其他字段将丢失。若集合中的角色/档案文档会在前端通过 `db.collection(...).doc(uid)` 读取,请确保文档 `_id` 就是该 `uid`;不要用按 `uid` 条件查询再配合 `upsert=true` 的方式去更新 `users` / `profiles`,否则经常会生成一个不同的 `_id`,导致后续 `doc(uid)` 读取命中不到。" ,
776+ "修改 NoSQL 数据库数据记录。⚠️ 本工具为服务端管理工具,用于管理端/运维端操作(如后台脚本、数据迁移、批量修改)。当任务要求编写客户端应用代码时(例如「用 JS SDK 登录并插入数据」、「在前端读写数据库」),不应使用本工具,而应在项目代码中编写 @cloudbase/js-sdk 客户端代码(如 app.database().collection().add()、db.collection().where().get() 等)。 可按 MongoDB updateOne/updateMany 的心智模型理解:部分更新必须使用 `$set`、`$inc`、`$push` 等更新操作符;如果直接传「 字段到值的普通对象」 这类内容,底层会把它当作替换内容,存在覆盖整条文档的风险。更新嵌套对象中的某个字段时必须使用点号路径,例如把 `address.city` 设为 `shenzhen`;如果把整个 `address` 对象作为 `$set` 的值传入,则整个 `address` 对象会被替换,同级其他字段将丢失。若集合中的角色/档案文档会在前端通过 `db.collection(...).doc(uid)` 读取,请确保文档 `_id` 就是该 `uid`;不要用按 `uid` 条件查询再配合 `upsert=true` 的方式去更新 `users` / `profiles`,否则经常会生成一个不同的 `_id`,导致后续 `doc(uid)` 读取命中不到。" ,
777777 inputSchema : {
778778 action : z
779779 . enum ( [ "insert" , "update" , "delete" ] )
0 commit comments