@wecom/wecom-openclaw-plugin 2026.7.2-beta.1 → 2026.8.17-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/README.md +33 -4
  2. package/dist/index.js +14 -21
  3. package/dist/src/cli/argv.d.ts +36 -0
  4. package/dist/src/cli/argv.js +155 -0
  5. package/dist/src/cli/const.d.ts +94 -0
  6. package/dist/src/cli/const.js +107 -0
  7. package/dist/src/cli/credentials.d.ts +54 -0
  8. package/dist/src/cli/credentials.js +342 -0
  9. package/dist/src/cli/index.d.ts +5 -0
  10. package/dist/src/cli/index.js +5 -0
  11. package/dist/src/cli/legacy-tool-warning.d.ts +12 -0
  12. package/dist/src/cli/legacy-tool-warning.js +20 -0
  13. package/dist/src/cli/locate.d.ts +32 -0
  14. package/dist/src/cli/locate.js +196 -0
  15. package/dist/src/cli/process-launcher.d.ts +1 -0
  16. package/dist/src/cli/process-launcher.js +1 -0
  17. package/dist/src/cli/process-output.d.ts +14 -0
  18. package/dist/src/cli/process-output.js +43 -0
  19. package/dist/src/cli/tool.d.ts +46 -0
  20. package/dist/src/cli/tool.js +363 -0
  21. package/dist/src/const.d.ts +0 -8
  22. package/dist/src/const.js +0 -14
  23. package/dist/src/monitor.js +1 -12
  24. package/dist/src/state-manager.d.ts +0 -19
  25. package/dist/src/state-manager.js +1 -34
  26. package/dist/src/utils.d.ts +27 -0
  27. package/openclaw.plugin.json +1 -1
  28. package/package.json +3 -3
  29. package/skills/wecom-send-media/SKILL.md +2 -0
  30. package/skills/wecom-send-template-card/SKILL.md +1 -1
  31. package/skills/wecomcli-calendar/SKILL.md +302 -0
  32. package/skills/wecomcli-calendar/references/calendar-agenda.md +228 -0
  33. package/skills/wecomcli-calendar/references/calendar-cancel.md +110 -0
  34. package/skills/wecomcli-calendar/references/calendar-create.md +240 -0
  35. package/skills/wecomcli-calendar/references/calendar-freebusy.md +209 -0
  36. package/skills/wecomcli-calendar/references/calendar-meeting-room.md +172 -0
  37. package/skills/wecomcli-calendar/references/calendar-search.md +208 -0
  38. package/skills/wecomcli-calendar/references/calendar-update.md +274 -0
  39. package/skills/wecomcli-contact/SKILL.md +59 -0
  40. package/skills/wecomcli-disk/SKILL.md +401 -0
  41. package/skills/wecomcli-doc/SKILL.md +140 -0
  42. package/skills/wecomcli-doc/references/doc-contents-append.md +22 -0
  43. package/skills/wecomcli-doc/references/doc-contents-overwrite.md +29 -0
  44. package/skills/wecomcli-doc/references/doc-create.md +161 -0
  45. package/skills/wecomcli-doc/scripts/build_docx.py +1375 -0
  46. package/skills/wecomcli-doc-manage/SKILL.md +135 -0
  47. package/skills/wecomcli-doc-manage/references/doc-members-update.md +26 -0
  48. package/skills/wecomcli-doc-manage/references/doc-names-update.md +22 -0
  49. package/skills/wecomcli-doc-manage/references/doc-rules-update.md +24 -0
  50. package/skills/wecomcli-email/SKILL.md +216 -0
  51. package/skills/wecomcli-email/references/forward-mail.md +131 -0
  52. package/skills/wecomcli-email/references/get-mail.md +168 -0
  53. package/skills/wecomcli-email/references/reply-mail.md +140 -0
  54. package/skills/wecomcli-email/references/search-mail.md +113 -0
  55. package/skills/wecomcli-email/references/security.md +53 -0
  56. package/skills/wecomcli-email/references/send-mail.md +186 -0
  57. package/skills/wecomcli-email/references/send-schedule.md +83 -0
  58. package/skills/wecomcli-media/SKILL.md +100 -0
  59. package/skills/wecomcli-meeting/SKILL.md +374 -0
  60. package/skills/wecomcli-meeting/references/meeting-cancel.md +115 -0
  61. package/skills/wecomcli-meeting/references/meeting-create.md +169 -0
  62. package/skills/wecomcli-meeting/references/meeting-list.md +228 -0
  63. package/skills/wecomcli-meeting/references/meeting-original-get.md +100 -0
  64. package/skills/wecomcli-meeting/references/meeting-search.md +175 -0
  65. package/skills/wecomcli-meeting/references/meeting-update.md +219 -0
  66. package/skills/wecomcli-message/SKILL.md +213 -0
  67. package/skills/wecomcli-preflight/SKILL.md +147 -0
  68. package/skills/wecomcli-sheet/SKILL.md +177 -0
  69. package/skills/wecomcli-sheet/references/sheet-contents-update.md +49 -0
  70. package/skills/wecomcli-sheet/references/sheet-ranges-get.md +47 -0
  71. package/skills/wecomcli-sheet/references/sheet-rows-append.md +47 -0
  72. package/skills/wecomcli-sheet/references/sheet-subsheets-add.md +28 -0
  73. package/skills/wecomcli-sheet/references/sheet-subsheets-delete.md +22 -0
  74. package/skills/wecomcli-smartpage/SKILL.md +172 -0
  75. package/skills/wecomcli-smartpage/references/data-driven-pages.md +50 -0
  76. package/skills/wecomcli-smartpage/references/formula/arraylist.md +369 -0
  77. package/skills/wecomcli-smartpage/references/formula/datetime.md +283 -0
  78. package/skills/wecomcli-smartpage/references/formula/logic.md +247 -0
  79. package/skills/wecomcli-smartpage/references/formula/math.md +362 -0
  80. package/skills/wecomcli-smartpage/references/formula/operators.md +246 -0
  81. package/skills/wecomcli-smartpage/references/formula/pageblock.md +76 -0
  82. package/skills/wecomcli-smartpage/references/formula/templates.md +410 -0
  83. package/skills/wecomcli-smartpage/references/formula/text.md +377 -0
  84. package/skills/wecomcli-smartpage/references/formula/user.md +22 -0
  85. package/skills/wecomcli-smartpage/references/formula-reference.md +192 -0
  86. package/skills/wecomcli-smartpage/references/mdx-syntax.md +739 -0
  87. package/skills/wecomcli-smartpage/references/smartpage-edit.md +519 -0
  88. package/skills/wecomcli-smartsheet/SKILL.md +153 -0
  89. package/skills/wecomcli-smartsheet/assets/templates/README.md +53 -0
  90. package/skills/wecomcli-smartsheet/assets/templates/ai_efficiency.md +709 -0
  91. package/skills/wecomcli-smartsheet/assets/templates/connect_to_app.md +380 -0
  92. package/skills/wecomcli-smartsheet/assets/templates/financial_accounting.md +369 -0
  93. package/skills/wecomcli-smartsheet/assets/templates/hr_and_administration.md +475 -0
  94. package/skills/wecomcli-smartsheet/assets/templates/ledger_records.md +156 -0
  95. package/skills/wecomcli-smartsheet/assets/templates/manufacturing.md +395 -0
  96. package/skills/wecomcli-smartsheet/assets/templates/marketing.md +186 -0
  97. package/skills/wecomcli-smartsheet/assets/templates/office_essentials.md +299 -0
  98. package/skills/wecomcli-smartsheet/assets/templates/personal_efficiency.md +70 -0
  99. package/skills/wecomcli-smartsheet/assets/templates/procurement_logistics.md +325 -0
  100. package/skills/wecomcli-smartsheet/assets/templates/project_management.md +564 -0
  101. package/skills/wecomcli-smartsheet/assets/templates/rd_process_customer.md +222 -0
  102. package/skills/wecomcli-smartsheet/assets/templates/rd_process_ops.md +105 -0
  103. package/skills/wecomcli-smartsheet/assets/templates/rd_process_project.md +109 -0
  104. package/skills/wecomcli-smartsheet/assets/templates/rd_process_research.md +92 -0
  105. package/skills/wecomcli-smartsheet/assets/templates/sales_and_operations.md +446 -0
  106. package/skills/wecomcli-smartsheet/assets/templates/store_management.md +431 -0
  107. package/skills/wecomcli-smartsheet/assets/templates/team_tasks.md +274 -0
  108. package/skills/wecomcli-smartsheet/assets/templates/wechat_customer.md +384 -0
  109. package/skills/wecomcli-smartsheet/assets/templates/work_report.md +100 -0
  110. package/skills/wecomcli-smartsheet/references/common.md +145 -0
  111. package/skills/wecomcli-smartsheet/references/smart-sheet-chart-types.md +95 -0
  112. package/skills/wecomcli-smartsheet/references/smart-sheet-edit.md +611 -0
  113. package/skills/wecomcli-smartsheet/references/smart-sheet-field-types.md +438 -0
  114. package/skills/wecomcli-smartsheet/references/smart-sheet-formula.md +845 -0
  115. package/skills/wecomcli-smartsheet/references/smart-sheet-read.md +411 -0
  116. package/skills/wecomcli-smartsheet/references/smart-sheet-record-values.md +203 -0
  117. package/skills/wecomcli-smartsheet/references/smart-sheet-view-types.md +356 -0
  118. package/skills/{wecom-smartsheet/references/webhook-examples.md → wecomcli-smartsheet/references/smart-sheet-webhook-examples.md} +23 -32
  119. package/skills/wecomcli-smartsheet/references/smart-sheet-webhook.md +169 -0
  120. package/skills/wecomcli-todo/SKILL.md +75 -0
  121. package/skills/wecomcli-todo/references/todo-create.md +139 -0
  122. package/skills/wecomcli-todo/references/todo-delete.md +65 -0
  123. package/skills/wecomcli-todo/references/todo-finish.md +74 -0
  124. package/skills/wecomcli-todo/references/todo-get.md +68 -0
  125. package/skills/wecomcli-todo/references/todo-list.md +135 -0
  126. package/skills/wecomcli-todo/references/todo-update.md +114 -0
  127. package/dist/src/mcp/index.d.ts +0 -6
  128. package/dist/src/mcp/index.js +0 -10
  129. package/dist/src/mcp/interceptors/biz-error.d.ts +0 -11
  130. package/dist/src/mcp/interceptors/biz-error.js +0 -69
  131. package/dist/src/mcp/interceptors/doc-auth-error.d.ts +0 -10
  132. package/dist/src/mcp/interceptors/doc-auth-error.js +0 -171
  133. package/dist/src/mcp/interceptors/index.d.ts +0 -35
  134. package/dist/src/mcp/interceptors/index.js +0 -72
  135. package/dist/src/mcp/interceptors/msg-media.d.ts +0 -11
  136. package/dist/src/mcp/interceptors/msg-media.js +0 -133
  137. package/dist/src/mcp/interceptors/smartpage-create.d.ts +0 -30
  138. package/dist/src/mcp/interceptors/smartpage-create.js +0 -132
  139. package/dist/src/mcp/interceptors/smartpage-export.d.ts +0 -17
  140. package/dist/src/mcp/interceptors/smartpage-export.js +0 -87
  141. package/dist/src/mcp/interceptors/smartsheet-upload.d.ts +0 -22
  142. package/dist/src/mcp/interceptors/smartsheet-upload.js +0 -263
  143. package/dist/src/mcp/interceptors/types.d.ts +0 -64
  144. package/dist/src/mcp/interceptors/types.js +0 -7
  145. package/dist/src/mcp/schema.d.ts +0 -11
  146. package/dist/src/mcp/schema.js +0 -99
  147. package/dist/src/mcp/tool.d.ts +0 -63
  148. package/dist/src/mcp/tool.js +0 -224
  149. package/dist/src/mcp/transport.d.ts +0 -94
  150. package/dist/src/mcp/transport.js +0 -549
  151. package/skills/wecom-contact/SKILL.md +0 -162
  152. package/skills/wecom-doc/SKILL.md +0 -127
  153. package/skills/wecom-meeting/SKILL.md +0 -441
  154. package/skills/wecom-meeting/references/example-full.md +0 -30
  155. package/skills/wecom-meeting/references/example-reminder.md +0 -46
  156. package/skills/wecom-meeting/references/example-security.md +0 -22
  157. package/skills/wecom-meeting/references/response-get-meeting-info.md +0 -148
  158. package/skills/wecom-msg/SKILL.md +0 -157
  159. package/skills/wecom-msg/references/api-get-messages.md +0 -93
  160. package/skills/wecom-msg/references/api-get-msg-chat-list.md +0 -58
  161. package/skills/wecom-msg/references/api-get-msg-media.md +0 -44
  162. package/skills/wecom-msg/references/api-send-message.md +0 -39
  163. package/skills/wecom-preflight/SKILL.md +0 -141
  164. package/skills/wecom-schedule/SKILL.md +0 -161
  165. package/skills/wecom-schedule/references/api-check-availability.md +0 -56
  166. package/skills/wecom-schedule/references/api-create-schedule.md +0 -38
  167. package/skills/wecom-schedule/references/api-get-schedule-detail.md +0 -81
  168. package/skills/wecom-schedule/references/api-update-schedule.md +0 -32
  169. package/skills/wecom-schedule/references/ref-reminders.md +0 -24
  170. package/skills/wecom-sheet/SKILL.md +0 -131
  171. package/skills/wecom-sheet/references/sheet-add-sub.md +0 -54
  172. package/skills/wecom-sheet/references/sheet-append-data.md +0 -64
  173. package/skills/wecom-sheet/references/sheet-delete-sub.md +0 -38
  174. package/skills/wecom-sheet/references/sheet-update-range-data.md +0 -95
  175. package/skills/wecom-smartpage/SKILL.md +0 -119
  176. package/skills/wecom-smartpage/references/smartpage-create.md +0 -130
  177. package/skills/wecom-smartpage/references/smartpage-export.md +0 -168
  178. package/skills/wecom-smartsheet/SKILL.md +0 -241
  179. package/skills/wecom-smartsheet/references/smartsheet-cell-value-formats.md +0 -163
  180. package/skills/wecom-smartsheet/references/smartsheet-field-types.md +0 -44
  181. package/skills/wecom-smartsheet/references/smartsheet-get-records.md +0 -187
  182. package/skills/wecom-smartsheet/references/webhook-fallback.md +0 -183
  183. package/skills/wecom-todo/SKILL.md +0 -272
@@ -1,241 +0,0 @@
1
- ---
2
- name: wecom-smartsheet
3
- description: 企业微信智能表格(smartsheet)管理技能。提供智能表格的新建(doc_type=10)、结构管理(子表、字段/列)和数据管理(记录增删改查)。适用场景:(1) 从零新建智能表格 (2) 管理智能表格子表和字段/列 (3) 查询、添加、更新、删除智能表格记录。支持通过 docid 或文档 URL 定位文档。当用户提到「企业微信智能表格」「智能表格」,或链接形如 `https://doc.weixin.qq.com/smartsheet/xxx` 时触发该技能。注意:普通文档(`/doc/*`)请用 `wecom-doc`;在线表格(`/sheet/*`)请用 `wecom-sheet`;智能文档/智能主页(`/smartpage/*`)请用 `wecom-smartpage`。
4
- ---
5
-
6
- # 企业微信智能表格管理
7
-
8
- > `wecom_mcp` 是一个 MCP tool,所有操作通过调用该 tool 完成。
9
-
10
- > ⚠️ **前置条件**:首次调用 `wecom_mcp` 前,必须按 `wecom-preflight` 技能执行前置条件检查,确保工具已加入白名单。
11
-
12
- 资源型技能,负责**智能表格**(`/smartsheet/*`,doc_type=10)的新建、结构(子表、字段/列)与数据(记录)管理。所有接口支持通过 `docid` 或 `url` 二选一定位文档。
13
-
14
- ## 调用方式
15
-
16
- 通过 `wecom_mcp` tool 调用,品类名为 `doc`:
17
-
18
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc <tool_name> '<json_params>'` 调用指定技能
19
-
20
- > 智能表格各接口的 `docid`/`url` 二选一传入即可,以下示例以 `docid` 为主,URL 传入方式以此类推。
21
-
22
- ## 返回格式说明
23
-
24
- 所有接口返回 JSON 对象,包含以下公共字段:
25
-
26
- | 字段 | 类型 | 说明 |
27
- |------|------|------|
28
- | `errcode` | integer | 返回码,`0` 表示成功,非 `0` 表示失败 |
29
- | `errmsg` | string | 错误信息,成功时为 `"ok"` |
30
-
31
- 当 `errcode` 不为 `0` 时,说明接口调用失败,可重试 1 次;若仍失败,将 `errcode` 和 `errmsg` 展示给用户。
32
-
33
- ### 特殊错误码
34
-
35
- | errcode | errmsg | 含义 | 处理方式 |
36
- |---------|--------|------|----------|
37
- | `851002` | `incompatible doc type` | 文档品类与所调用的接口不匹配 | 确认目标 URL 为 `/smartsheet/*`;若不是,请跳转到对应品类的 skill |
38
- | `851003` | `no authority` | 无文档权限。在编辑场景,通常是因为机器人不允许编辑由企业成员创建的文档。在**智能表格写入场景**下,若该报错发生在 `smartsheet_add_records` / `smartsheet_update_records`,可引导用户走 Webhook 兜底方案,详见 [webhook-fallback.md](references/webhook-fallback.md)。注意 Webhook 只能更新通过 Webhook 写入的记录,人工创建的记录无法更新 | — |
39
-
40
- ## 接口路由表
41
-
42
- > **硬规则**:第二列是 `references/xxx.md` 链接的,命中这一行后**先 `read` 对应 references 文件,再构造命令**。写入/读取记录前,先用 `smartsheet_get_sheet` 拿到目标子表的 `sheet_id`,并用 `smartsheet_get_fields` 了解字段类型。
43
-
44
- | 用户意图 | 参考位置 |
45
- |---|---|
46
- | 从零新建智能表格(空白) | 见下方「新建智能表格」 |
47
- | 查询文档中所有子表 | 见下方「查询子表」 |
48
- | 添加 / 改名 / 删除子表 | 见下方「子表管理」 |
49
- | 查询子表字段/列 | 见下方「查询字段」 |
50
- | 添加字段/列 | [references/smartsheet-field-types.md](references/smartsheet-field-types.md) |
51
- | 改名 / 删除字段 | 见下方「字段管理」 |
52
- | 查询子表记录 | [references/smartsheet-get-records.md](references/smartsheet-get-records.md) |
53
- | 添加记录 / 更新记录 | [references/smartsheet-cell-value-formats.md](references/smartsheet-cell-value-formats.md) |
54
- | 删除记录 | 见下方「删除记录」 |
55
- | Webhook 兜底写入 | [references/webhook-fallback.md](references/webhook-fallback.md) |
56
-
57
- ---
58
-
59
- ## 一、新建智能表格
60
-
61
- ### create_doc — 新建智能表格
62
-
63
- 从零新建一篇企微**智能表格**(doc_type=10):空白。创建成功后返回 `docid` 和 `url`。
64
-
65
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc create_doc '{"doc_type": 10, "doc_name": "任务跟踪表"}'`
66
-
67
- **参数**
68
-
69
- | 参数 | 类型 | 必填 | 默认值 | 说明 |
70
- |---|---|---|---|---|
71
- | `doc_type` | int | 是 | — | 固定传 `10`(智能表格) |
72
- | `doc_name` | string | 是 | — | 表格标题,最多 255 个字符,超过会被截断 |
73
-
74
- **注意事项**
75
-
76
- - 新建智能表格文档**默认已含一个子表**,可通过 `smartsheet_get_sheet` 查询其 `sheet_id`,仅需多个子表时才调用 `smartsheet_add_sheet`。
77
- - `docid` 仅在创建时返回,后续无法再获取,务必保存。
78
-
79
- ---
80
-
81
- ## 二、智能表格结构管理
82
-
83
- ### smartsheet_get_sheet — 查询子表
84
-
85
- 查询文档中所有子表信息,返回 `sheet_id`、`title`、类型等。
86
-
87
- - 通过 docid:使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_get_sheet '{"docid": "DOCID"}'`
88
- - 通过 URL:使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_get_sheet '{"url": "https://doc.weixin.qq.com/smartsheet/xxx"}'`
89
-
90
- ### smartsheet_add_sheet — 添加子表
91
-
92
- 添加空子表。新子表不含视图、记录和字段,需通过其他接口补充。
93
-
94
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_add_sheet '{"docid": "DOCID", "properties": {"title": "新子表"}}'`
95
-
96
- > 注意:新建智能表格文档默认已含一个子表,仅需多个子表时调用。
97
-
98
- ### smartsheet_update_sheet — 修改子表标题
99
-
100
- 需提供 `sheet_id` 和新 `title`。
101
-
102
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_update_sheet '{"docid": "DOCID", "properties": {"sheet_id": "SHEET_ID", "title": "新子表"}}'`
103
-
104
- ### smartsheet_delete_sheet — 删除子表
105
-
106
- 永久删除子表,**操作不可逆**。
107
-
108
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_delete_sheet '{"docid": "DOCID", "sheet_id": "SHEETID"}'`
109
-
110
- ### smartsheet_get_fields — 查询字段
111
-
112
- 查询子表的所有字段信息,返回 `field_id`、`field_title`、`field_type`。
113
-
114
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_get_fields '{"docid": "DOCID", "sheet_id": "SHEETID"}'`
115
-
116
- ### smartsheet_add_fields — 添加字段
117
-
118
- 向子表添加一个或多个字段。单个子表最多 150 个字段。
119
-
120
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_add_fields '{"docid": "DOCID", "sheet_id": "SHEETID", "fields": [{"field_title": "任务名称", "field_type": "FIELD_TYPE_TEXT"}]}'`
121
-
122
- 在添加字段前,请先参阅所有字段类型和定义 [字段类型参考](references/smartsheet-field-types.md)。
123
-
124
- > 注意:如果是首次创建表并调用这个方法添加字段的情况下,调用本接口前,你必须确认已完成以下操作,否则会多出一个无用的默认列:
125
- > 1. 已调用 `smartsheet_get_fields` 查看子表现有字段(新子表会自带一个默认文本字段)
126
- > 2. 已调用 `smartsheet_update_fields` 将该默认字段重命名为你需要的第一个字段名,然后在本接口中只传入剩余的字段(不包含第一个字段)。
127
-
128
- ### smartsheet_update_fields — 更新字段标题
129
-
130
- **只能改名,不能改类型**(`field_type` 必须传原始类型)。`field_title` 不能更新为原值。
131
-
132
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_update_fields '{"docid": "DOCID", "sheet_id": "SHEETID", "fields": [{"field_id": "FIELDID", "field_title": "新标题", "field_type": "FIELD_TYPE_TEXT"}]}'`
133
-
134
- ### smartsheet_delete_fields — 删除字段
135
-
136
- 删除一列或多列字段,**操作不可逆**。`field_id` 可通过 `smartsheet_get_fields` 获取。
137
-
138
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_delete_fields '{"docid": "DOCID", "sheet_id": "SHEETID", "field_ids": ["FIELDID"]}'`
139
-
140
- ---
141
-
142
- ## 三、智能表格数据管理
143
-
144
- ### smartsheet_get_records — 查询记录
145
-
146
- 查询子表全部记录。
147
-
148
- - 通过 docid:使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_get_records '{"docid": "DOCID", "sheet_id": "SHEETID"}'`
149
- - 或通过 URL:使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_get_records '{"url": "https://doc.weixin.qq.com/smartsheet/xxx", "sheet_id": "SHEETID"}'`
150
-
151
- 参见 [API 详情](references/smartsheet-get-records.md)。
152
-
153
- ### smartsheet_add_records — 添加记录(不带图片或文件)
154
-
155
- 添加一行或多行记录,单次建议 500 行内。
156
-
157
- **调用前**必须先了解目标表的字段类型(通过 `smartsheet_get_fields`),并查看[单元格值格式参考](references/smartsheet-cell-value-formats.md),了解做法后再实施。对于单选/多选(Option)字段,需注意匹配已有选项的 `id`。
158
-
159
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_add_records '{"docid": "DOCID", "sheet_id": "SHEETID", "records": [{"values": {"任务名称": [{"type": "text", "text": "完成需求文档"}], "优先级": [{"text": "高"}]}}]}'`
160
-
161
- 各字段类型的值格式参见 [单元格值格式参考](references/smartsheet-cell-value-formats.md)。
162
-
163
- > ⚠️ **图片(IMAGE)/ 文件(ATTACHMENT)字段**:**必须且只能**直接在 cell value 中传入本地路径(`image_path` / `file_path`),格式见下方示例。**严禁**调用 `upload_doc_image`、`upload_doc_file` 或任何上传接口,**严禁**进行 base64 编码——无论文件大小、无论 API 返回何种错误,均不得绕过此规则。若 `image_path` / `file_path` 方式返回错误,应直接将错误码和错误信息告知用户,**不得**尝试其他上传方式。
164
- >
165
- > 图片字段示例:`"封面": [{"image_path": "/path/to/img.png", "title": "图片标题"}]`
166
- > 文件字段示例:`"文件": [{"file_path": "/path/to/file.pdf"}]`
167
-
168
- > ⚠️ 若返回 `errcode: 851003` 或 `errmsg` 包含 `no authority`,无文档权限。在编辑场景,通常是因为机器人不允许编辑由企业成员创建的文档。在**智能表格写入场景**下,若该报错发生在 `smartsheet_add_records` / `smartsheet_update_records`,可引导用户走 Webhook 兜底方案,详见 [webhook-fallback.md](references/webhook-fallback.md)。注意 Webhook 只能更新通过 Webhook 写入的记录,人工创建的记录无法更新。
169
-
170
- ### smartsheet_add_records_auto_file — 添加记录(带图片或文件)
171
-
172
- 添加一行或多行记录,单次建议 500 行内。与 `smartsheet_add_records` 不同之处在于,可支持本地路径传入图片、文件。对于需要添加带图片或文件的记录,请使用此接口。传入后台后,后台将自动存储并转换为 `image_url`。
173
-
174
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_add_records_auto_file '{"docid":"DOCID","sheet_id":"SHEETID","records":[{"values":{"图片":[{"image_path":"/path/to/image.jpg"}],"文件":[{"file_path":"/path/to/file.txt"}]}}]}'`
175
-
176
- ### smartsheet_update_records — 更新记录(不带图片或文件)
177
-
178
- **调用前**必须先了解目标表的字段类型(通过 `smartsheet_get_fields`),并查看[单元格值格式参考](references/smartsheet-cell-value-formats.md),了解做法后再实施。
179
-
180
- 更新一行或多行记录,单次建议在 500 行内。需提供 `record_id`(通过 `smartsheet_get_records` 获取)。支持通过 `key_type` 指定 values 的 key 使用字段标题或字段 ID:
181
-
182
- - `CELL_VALUE_KEY_TYPE_FIELD_TITLE`:key 为字段标题
183
- - `CELL_VALUE_KEY_TYPE_FIELD_ID`:key 为字段 ID
184
-
185
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_update_records '{"docid": "DOCID", "sheet_id": "SHEETID", "key_type": "CELL_VALUE_KEY_TYPE_FIELD_TITLE", "records": [{"record_id": "RECORDID", "values": {"任务名称": [{"type": "text", "text": "更新后的内容"}]}}]}'`
186
-
187
- **注意**:创建时间、最后编辑时间、创建人、最后编辑人字段不可更新。
188
-
189
- > ⚠️ **图片(IMAGE)/ 文件(ATTACHMENT)字段**:**必须且只能**直接在 cell value 中传入本地路径(`image_path` / `file_path`),格式见下方示例。**严禁**调用 `upload_doc_image`、`upload_doc_file` 或任何上传接口,**严禁**进行 base64 编码——无论文件大小、无论 API 返回何种错误,均不得绕过此规则。若 `image_path` / `file_path` 方式返回错误,应直接将错误码和错误信息告知用户,**不得**尝试其他上传方式。
190
- >
191
- > 图片字段示例:`"封面": [{"image_path": "/path/to/img.png", "title": "图片标题"}]`
192
- > 文件字段示例:`"文件": [{"file_path": "/path/to/file.pdf"}]`
193
-
194
- > ⚠️ 若返回 `errcode: 851003` 或 `errmsg` 包含 `no authority`,无文档权限。在编辑场景,通常是因为机器人不允许编辑由企业成员创建的文档。在**智能表格写入场景**下,若该报错发生在 `smartsheet_add_records` / `smartsheet_update_records`,可引导用户走 Webhook 兜底方案,详见 [webhook-fallback.md](references/webhook-fallback.md)。注意 Webhook 只能更新通过 Webhook 写入的记录,人工创建的记录无法更新。
195
-
196
- ### smartsheet_update_records_auto_file — 更新记录(更新图片或文件字段)
197
-
198
- 更新一行或多行记录,单次建议在 500 行内。与 `smartsheet_update_records` 不同之处在于,可支持本地路径传入图片、文件。对于需要更新记录中的图片或文件,请使用此接口。传入后台后,后台将自动存储并转换为 `image_url`。
199
-
200
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_update_records_auto_file '{"docid": "DOCID", "sheet_id": "SHEETID", "key_type": "CELL_VALUE_KEY_TYPE_FIELD_TITLE", "records": [{"record_id": "RECORDID", "values": {"图片":[{"image_path":"/path/to/image.jpg"}],"文件":[{"file_path":"/path/to/file.txt"}]}}]}'`
201
-
202
- ### smartsheet_delete_records — 删除记录
203
-
204
- 删除一行或多行记录,单次必须在 500 行内。**操作不可逆**。`record_id` 通过 `smartsheet_get_records` 获取。极速版智能表格不支持此接口。
205
-
206
- 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_delete_records '{"docid": "DOCID", "sheet_id": "SHEETID", "record_ids": ["RECORDID1", "RECORDID2"]}'`
207
-
208
- ---
209
-
210
- ## 典型工作流
211
-
212
- ### 新建并搭建表结构
213
-
214
- 1. **新建智能表格** → 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc create_doc '{"doc_type": 10, "doc_name": "项目任务表"}'`,保存返回的 `docid`
215
- 2. **了解默认子表** → `smartsheet_get_sheet` 拿到默认子表的 `sheet_id` → `smartsheet_get_fields` 查看默认字段
216
- 3. **搭建列** → 先 `smartsheet_update_fields` 改默认字段名,再 `smartsheet_add_fields` 补充其余字段
217
-
218
- ### 智能表格结构操作
219
-
220
- 1. **了解表结构** → 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_get_sheet '{"docid": "DOCID"}'` → 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_get_fields '{"docid": "DOCID", "sheet_id": "SHEETID"}'`
221
- 2. **创建表结构** → `smartsheet_add_sheet` 添加子表 → `smartsheet_add_fields` 定义列
222
- 3. **修改表结构** → `smartsheet_update_fields` 改列名 / `smartsheet_delete_fields` 删列
223
-
224
- ### 智能表格数据操作
225
-
226
- 1. **读取数据** → 使用 `wecom_mcp` tool 调用 `wecom_mcp call doc smartsheet_get_records '{"docid":"DOCID","sheet_id":"SHEETID"}'`
227
- 2. **写入数据** → 先 `smartsheet_get_fields` 了解列类型 → 若涉及成员(USER)字段,先通过 `wecom-contact` 的 `get_userlist` 查找人员 userid → `smartsheet_add_records` 写入
228
- 3. **更新数据** → 先 `smartsheet_get_records` 获取 record_id → 若涉及成员(USER)字段,先通过 `wecom-contact` 的 `get_userlist` 查找人员 userid → `smartsheet_update_records` 更新
229
- 4. **写入失败 fallback** → 第 2/3 步返回 `errcode: 851003` / `no authority`,无文档权限。在编辑场景,通常是因为机器人不允许编辑由企业成员创建的文档。在**智能表格写入场景**下,若该报错发生在 `smartsheet_add_records` / `smartsheet_update_records`,可引导用户走 Webhook 兜底方案,详见 [webhook-fallback.md](references/webhook-fallback.md)。注意 Webhook 只能更新通过 Webhook 写入的记录,人工创建的记录无法更新
230
- 5. 若涉及**图片(IMAGE)或文件(ATTACHMENT)**字段,**必须且只能**直接在 cell value 中传入本地路径(`image_path` / `file_path`)。**严禁**调用 `upload_doc_image`、`upload_doc_file` 或任何上传接口,**严禁**进行 base64 编码——无论文件大小、无论 API 返回何种错误,均不得绕过此规则。若返回错误,直接将错误码和错误信息告知用户,不得尝试其他上传方式。传入格式参考 [单元格值格式参考](references/smartsheet-cell-value-formats.md)。
231
- 6. **删除数据** → 先 `smartsheet_get_records` 确认 record_id → `smartsheet_delete_records` 删除
232
-
233
- ## 跨技能依赖
234
-
235
- | 依赖技能 | 典型协作场景 | 数据流向 |
236
- |---|---|---|
237
- | `wecom-contact` | 成员(USER)类型字段需填 `user_id`,不能直接用姓名 | `get_userlist` 按姓名查到 userid → 本 skill 写入 |
238
- | `wecom-msg` | 用户要求把智能表格链接发给某人/某群 | 本 skill 新建后返回 `url` → `wecom-msg` 发送链接 |
239
-
240
- > **注意**:成员(USER)类型字段需要填写 `user_id`,不能直接使用姓名。必须先通过 `wecom-contact` 技能的 `get_userlist` 接口按姓名查找到对应的 `userid` 后再使用。
241
- > **注意**:图片(IMAGE)或文件(ATTACHMENT)字段**必须且只能**直接在 cell value 中传入本地路径(`image_path` / `file_path`)。**严禁**调用 `upload_doc_image`、`upload_doc_file` 或任何上传接口,**严禁**进行 base64 编码——无论文件大小、无论 API 返回何种错误,均不得绕过此规则。若返回错误,直接将错误码和错误信息告知用户,不得尝试其他上传方式。格式参考 [单元格值格式参考](references/smartsheet-cell-value-formats.md)。
@@ -1,163 +0,0 @@
1
- # 单元格值格式参考
2
-
3
- `smartsheet_add_records` 仅支持**字段标题**作为key。
4
- `smartsheet_update_records` 支持通过 `key_type` 参数指定使用字段标题(`CELL_VALUE_KEY_TYPE_FIELD_TITLE`)或字段 ID(`CELL_VALUE_KEY_TYPE_FIELD_ID`)。
5
-
6
- ## 各字段类型的值格式
7
-
8
- ### 1. 文本 (FIELD_TYPE_TEXT)
9
-
10
- **必须**使用数组格式,外层方括号不可省略:
11
-
12
- ```json
13
- "字段标题": [{"type": "text", "text": "内容"}]
14
- ```
15
-
16
- ### 2. 数字 (NUMBER) / 货币 (CURRENCY) / 百分比 (PERCENTAGE) / 进度 (PROGRESS)
17
-
18
- 直接传数字:
19
-
20
- ```json
21
- "金额": 100,
22
- "完成率": 0.6,
23
- "进度": 80
24
- ```
25
-
26
- ### 3. 复选框 (CHECKBOX)
27
-
28
- 直接传布尔值:
29
-
30
- ```json
31
- "已完成": true
32
- ```
33
-
34
- ### 4. 单选 (SINGLE_SELECT) / 多选 (SELECT)
35
-
36
- **必须**使用数组格式,不能直接传字符串:
37
-
38
- ```json
39
- "优先级": [{"text": "高"}],
40
- "标签": [{"text": "紧急", "style": 17}, {"text": "重要", "style": 12}]
41
- ```
42
-
43
- 已存在的选项应通过 `id` 匹配(`id` 可从 `smartsheet_get_fields` 返回中获取),新增选项时不填 `id`。可附带 `style`(颜色 1-27),对照表如下:
44
-
45
- | style | 颜色 |
46
- |-------|------|
47
- | 1 | 浅红1 |
48
- | 2 | 浅橙1 |
49
- | 3 | 浅天蓝1 |
50
- | 4 | 浅绿1 |
51
- | 5 | 浅紫1 |
52
- | 6 | 浅粉红1 |
53
- | 7 | 浅灰1 |
54
- | 8 | 白 |
55
- | 9 | 灰 |
56
- | 10 | 浅蓝1 |
57
- | 11 | 浅蓝2 |
58
- | 12 | 蓝 |
59
- | 13 | 浅天蓝2 |
60
- | 14 | 天蓝 |
61
- | 15 | 浅绿2 |
62
- | 16 | 绿 |
63
- | 17 | 浅红2 |
64
- | 18 | 红 |
65
- | 19 | 浅橙2 |
66
- | 20 | 橙 |
67
- | 21 | 浅黄1 |
68
- | 22 | 浅黄2 |
69
- | 23 | 黄 |
70
- | 24 | 浅紫2 |
71
- | 25 | 紫 |
72
- | 26 | 浅粉红2 |
73
- | 27 | 粉红 |
74
-
75
- ### 5. 日期时间 (DATE_TIME)
76
-
77
- 传日期时间字符串,系统自动按东八区转换:
78
-
79
- ```json
80
- "截止日期": "2026-01-15 14:30:00",
81
- "创建日期": "2026-01-15"
82
- ```
83
-
84
- 支持格式:`YYYY-MM-DD HH:MM:SS`、`YYYY-MM-DD HH:MM`、`YYYY-MM-DD`
85
-
86
- ### 6. 手机号 (PHONE_NUMBER) / 邮箱 (EMAIL) / 条码 (BARCODE)
87
-
88
- 直接传字符串:
89
-
90
- ```json
91
- "电话": "13800138000",
92
- "邮箱": "test@example.com"
93
- ```
94
-
95
- ### 7. 成员 (USER)
96
-
97
- 数组格式,需传 user_id。**user_id 不是姓名**,必须先通过 `wecom-contact` 技能查找目标人员的 `userid`,再填入此处。
98
-
99
- 具体步骤:先使用 `wecom_mcp` tool 调用 `wecom_mcp call contact get_userlist '{}'` 获取通讯录成员列表,在返回结果中按姓名/别名筛选出目标人员,取其 `userid` 值填入。
100
-
101
- ```json
102
- "负责人": [{"user_id": "zhangsan"}]
103
- ```
104
-
105
- 多个成员:
106
-
107
- ```json
108
- "负责人": [{"user_id": "zhangsan"}, {"user_id": "lisi"}]
109
- ```
110
-
111
- ### 8. 超链接 (URL)
112
-
113
- 数组格式,目前仅支持一个链接:
114
-
115
- ```json
116
- "参考链接": [{"type": "url", "text": "官网", "link": "https://example.com"}]
117
- ```
118
-
119
- ### 9. 图片 (IMAGE)
120
-
121
- 数组格式,**必须且只能**直接在 cell value 中传入本地路径(`image_path`)。**严禁**调用 `upload_doc_image`、`upload_doc_file` 或任何上传接口,**严禁**进行 base64 编码——无论文件大小、无论 API 返回何种错误,均不得绕过此规则。若 `image_path` 方式返回错误,应直接将错误码和错误信息告知用户,**不得**尝试其他上传方式。
122
-
123
- #### 9.1. 图片本地路径传入(唯一合法方式)
124
-
125
- ```json
126
- "封面": [{"image_path": "/path/to/img.png", "title": "图片标题"}]
127
- ```
128
-
129
-
130
- ### 10. 地理位置 (LOCATION)
131
-
132
- 数组格式:
133
-
134
- ```json
135
- "地点": [{"source_type": 1, "id": "地点ID", "latitude": "39.9", "longitude": "116.3", "title": "北京"}]
136
- ```
137
-
138
- ### 11. 文件(Attachment)
139
-
140
- 数组格式,**必须且只能**直接在 cell value 中传入本地路径(`file_path`)。**严禁**调用 `upload_doc_image`、`upload_doc_file` 或任何上传接口,**严禁**进行 base64 编码——无论文件大小、无论 API 返回何种错误,均不得绕过此规则。若 `file_path` 方式返回错误,应直接将错误码和错误信息告知用户,**不得**尝试其他上传方式。
141
-
142
- ```json
143
- "文件": [{"file_path": "/path/to/file.pdf"}]
144
- ```
145
-
146
- ## 完整添加记录示例
147
-
148
- ```json
149
- {
150
- "docid": "DOCID",
151
- "sheet_id": "SHEETID",
152
- "records": [{
153
- "values": {
154
- "任务名称": [{"type": "text", "text": "完成需求文档"}],
155
- "优先级": [{"text": "高"}],
156
- "截止日期": "2026-03-20",
157
- "完成进度": 30,
158
- "已完成": false
159
- }
160
- }]
161
- }
162
- ```
163
-
@@ -1,44 +0,0 @@
1
- # 智能表格字段类型参考
2
-
3
- ## 支持的字段类型
4
-
5
- | 类型枚举值 | 说明 | 适用场景 |
6
- |---|---|---|
7
- | `FIELD_TYPE_TEXT` | 文本 | 名称、标题、描述、负责人姓名等自由文本 |
8
- | `FIELD_TYPE_NUMBER` | 数字 | 金额、工时、数量等数值 |
9
- | `FIELD_TYPE_CHECKBOX` | 复选框 | 是否完成等布尔值 |
10
- | `FIELD_TYPE_DATE_TIME` | 日期时间 | 截止日期、创建时间等 |
11
- | `FIELD_TYPE_IMAGE` | 图片 | 附件图片 |
12
- | `FIELD_TYPE_USER` | 用户/成员 | 需传入 user_id;仅在明确知道成员 ID 时使用,若只有姓名应用 TEXT |
13
- | `FIELD_TYPE_URL` | 链接 | 超链接 |
14
- | `FIELD_TYPE_SELECT` | 多选 | 标签、分类等可多选的选项 |
15
- | `FIELD_TYPE_PROGRESS` | 进度 | 完成进度(0-100 整数) |
16
- | `FIELD_TYPE_PHONE_NUMBER` | 手机号 | 联系电话 |
17
- | `FIELD_TYPE_EMAIL` | 邮箱 | 电子邮件 |
18
- | `FIELD_TYPE_SINGLE_SELECT` | 单选 | 状态、优先级、严重程度等有固定选项的字段 |
19
- | `FIELD_TYPE_LOCATION` | 位置 | 地理位置 |
20
- | `FIELD_TYPE_CURRENCY` | 货币 | 货币金额 |
21
- | `FIELD_TYPE_PERCENTAGE` | 百分比 | 比率类数值(完成率、转化率) |
22
- | `FIELD_TYPE_BARCODE` | 条码 | 条形码/二维码 |
23
- | `FIELD_TYPE_ATTACHMENT` | 文件 | 文件/附件 |
24
-
25
- ## 添加字段示例
26
-
27
- ```json
28
- {
29
- "docid": "DOCID",
30
- "sheet_id": "SHEETID",
31
- "fields": [
32
- { "field_title": "任务名称", "field_type": "FIELD_TYPE_TEXT" },
33
- { "field_title": "优先级", "field_type": "FIELD_TYPE_SINGLE_SELECT" },
34
- { "field_title": "截止日期", "field_type": "FIELD_TYPE_DATE_TIME" },
35
- { "field_title": "完成进度", "field_type": "FIELD_TYPE_PROGRESS" }
36
- ]
37
- }
38
- ```
39
-
40
- ## 更新字段注意事项
41
-
42
- - `smartsheet_update_fields` **只能更新字段标题**,不能更改字段类型
43
- - `field_type` 必须传字段当前的原始类型
44
- - `field_title` 不能更新为原值(即不能传与当前相同的标题)
@@ -1,187 +0,0 @@
1
- # smartsheet_get_records API
2
-
3
- 查询智能表格中指定子表的记录信息,支持分页读取。支持通过 docid 或文档 URL 定位文档,二者传入其一即可。
4
-
5
- ## 技能定义
6
-
7
- ```json
8
- {
9
- "name": "smartsheet_get_records",
10
- "description": "查询智能表格中指定子表的记录信息。支持分页查询(cursor + limit),不填 cursor 从第一行开始。支持通过 docid 或文档 URL 定位文档,二者传入其一即可。",
11
- "inputSchema": {
12
- "properties": {
13
- "cursor": {
14
- "anyOf": [
15
- {
16
- "type": "string"
17
- },
18
- {
19
- "type": "null"
20
- }
21
- ],
22
- "default": null,
23
- "description": "查询游标,不填代表从第一行记录开始查询",
24
- "title": "Cursor"
25
- },
26
- "docid": {
27
- "anyOf": [
28
- {
29
- "type": "string"
30
- },
31
- {
32
- "type": "null"
33
- }
34
- ],
35
- "default": null,
36
- "description": "文档的 docid,与 url 二选一传入",
37
- "title": "Docid"
38
- },
39
- "limit": {
40
- "anyOf": [
41
- {
42
- "type": "integer"
43
- },
44
- {
45
- "type": "null"
46
- }
47
- ],
48
- "default": null,
49
- "description": "分页大小,每页返回多少条数据;当不填写该参数或将该参数设置为 0 时,如果总数大于 1000,一次性返回 1000 行记录,当总数小于 1000 时,返回全部记录;limit 最大值为 1000",
50
- "title": "Limit"
51
- },
52
- "sheet_id": {
53
- "description": "子表的 sheet_id,用于指定要查询的智能表格中的哪个子表",
54
- "title": "Sheet Id",
55
- "type": "string"
56
- },
57
- "url": {
58
- "anyOf": [
59
- {
60
- "type": "string"
61
- },
62
- {
63
- "type": "null"
64
- }
65
- ],
66
- "default": null,
67
- "description": "文档的访问链接,与 docid 二选一传入",
68
- "title": "Url"
69
- }
70
- },
71
- "required": [
72
- "sheet_id"
73
- ],
74
- "title": "smartsheet_get_recordsArguments",
75
- "type": "object"
76
- }
77
- }
78
- ```
79
-
80
- ## 参数说明
81
-
82
- | 参数 | 类型 | 必填 | 说明 |
83
- |---|---|---|---|
84
- | cursor | string | 否 | 查询游标,不填代表从第一行记录开始查询 |
85
- | docid | string | 与 url 二选一 | 文档的 docid |
86
- | limit | integer | 否 | 分页大小,每页返回多少条数据;当不填写该参数或将该参数设置为 0 时,如果总数大于 1000,一次性返回 1000 行记录,当总数小于 1000 时,返回全部记录;limit 最大值为 1000 |
87
- | sheet_id | string | 是 | 子表的 sheet_id,用于指定要查询的智能表格中的哪个子表 |
88
- | url | string | 与 docid 二选一 | 文档的访问链接 |
89
-
90
- ## 请求示例
91
-
92
- 以传入docid为例:
93
-
94
- ```json
95
- {
96
- "docid": "DOCID",
97
- "sheet_id": "123Abc"
98
- }
99
- ```
100
-
101
- 以传url为例:
102
-
103
- ```json
104
- {
105
- "url": "https://doc.weixin.qq.com/smartsheet/xxx",
106
- "sheet_id": "123Abc"
107
- }
108
- ```
109
-
110
- ## 响应示例(含分页)
111
-
112
- ```json
113
- {
114
- "errcode": 0,
115
- "errmsg": "ok",
116
- "total": 100,
117
- "has_more": true,
118
- "next_cursor": "mock_cursor_token",
119
- "records": [
120
- {
121
- "record_id": "rec_001",
122
- "create_time": "1700000000000",
123
- "update_time": "1700000000000",
124
- "values": {
125
- "成员": [
126
- {"user_id": "real.user001", "id_type": 1}
127
- ],
128
- "序号": [
129
- {"text": "1", "type": "text"}
130
- ],
131
- "附件": [
132
- {
133
- "doc_type": 2,
134
- "file_ext": "xlsx",
135
- "file_type": "Wedrive",
136
- "file_url": "https://drive.weixin.qq.com/s?k=MOCK_TOKEN",
137
- "name": "report.xlsx",
138
- "size": 12345
139
- }
140
- ]
141
- },
142
- "creator_name": "张三",
143
- "updater_name": "张三"
144
- },
145
- {
146
- "record_id": "rec_002",
147
- "create_time": "1700000000000",
148
- "update_time": "1700000000000",
149
- "values": {
150
- "截图": [
151
- {
152
- "height": 1080,
153
- "id": "img_mock_id",
154
- "image_url": "https://wdcdn.qpic.cn/mocked_path?w=1920&h=1080",
155
- "title": "screenshot_001",
156
- "width": 1920
157
- }
158
- ],
159
- "序号": [
160
- {"text": "2", "type": "text"}
161
- ]
162
- },
163
- "creator_name": "张三",
164
- "updater_name": "李四"
165
- }
166
- ]
167
- }
168
- ```
169
-
170
- ## 响应数据结构
171
-
172
- - `total`: 总记录数(integer)
173
- - `has_more`: 是否还有更多数据(boolean)
174
- - `next_cursor`: 下一页游标,用于分页(string,仅当 has_more 为 true 时存在)
175
- - `records`: 记录数组
176
-
177
-
178
- ## 分页查询
179
-
180
- ```bash
181
- # 第一页
182
- wecom_mcp call doc smartsheet_get_records '{"docid": "DOCID", "sheet_id": "SHEETID"}'
183
-
184
- # 下一页(使用上一条的 next_cursor)
185
- wecom_mcp call doc smartsheet_get_records '{"docid": "DOCID", "sheet_id": "SHEETID", "cursor": "上一条的 next_cursor 值"}'
186
- ```
187
-