draftly-wps
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| wps_statusA | 检查 WPS 加载项桥接连接状态(wps/et/wpp 三宿主)。任何 wps_* 调用失败时先调用它排查。 |
| wps_word_newA | 新建一个空白 WPS 文字文档。 |
| wps_word_probeA | 探测当前文字宿主的修订模式/批注相关 API 支持度(诊断用)。 |
| wps_word_show_task_paneA | 打开/唤起 Draftly 侧边栏——WPS 主窗口右侧停靠一个结构化聊天面板(基于 Claude Agent SDK),可直接对话操作当前文档。基于官方 Application.CreateTaskPane API。 |
| wps_word_toggle_track_changesA | 开启/关闭修订模式(Track Changes)。开启后此后的编辑会被记录为修订,可用 wps_word_get_revisions 查看、wps_word_resolve_revisions 批量接受/拒绝。 |
| wps_word_add_commentA | 添加批注。find_text 指定要批注的文字(会查找该文字并对其加批注);不传则批注文档开头一个字符处。 |
| wps_word_get_commentsA | 读取文档中全部批注:序号、作者、批注内容、被批注的原文。 |
| wps_word_delete_commentA | 删除指定批注。index 从 1 开始,用 wps_word_get_comments 获取。 |
| wps_word_get_revisionsA | 读取文档中全部修订记录(需先开启修订模式才会产生修订):序号、类型、作者、涉及文字。只读,不修改文档。 |
| wps_word_resolve_revisionsB | 批量接受或拒绝全部修订。action=accept 全部接受(修订变为正式内容),action=reject 全部拒绝(还原为修订前状态)。 |
| wps_word_get_document_infoA | 获取当前活动 Word 文档信息:文件名、路径、段落/字数/字符数、表格数。 |
| wps_word_readB | 读取当前活动 Word 文档全文。max_chars 限制返回长度防爆(默认 10000)。 |
| wps_word_get_paragraphsA | 按段落读取当前文档,每段一个字符串。适合读长文档或定位段落。 |
| wps_word_get_selectionB | 读取当前选中的文字。 |
| wps_word_insert_textB | 在当前文档插入文字。position: cursor=光标处 / start=文首 / end=文末。 |
| wps_word_replaceA | 查找替换。replace_all=false 只替换第一处。 |
| wps_word_set_fontC | 设置字体格式。range: selection=当前选中 / all=全文。bold/italic 传 true/false。 |
| wps_word_set_alignmentC | 设置段落对齐。range: selection=当前选中 / all=全文。 |
| wps_word_delete_selectionC | 删除当前选中的文字。 |
| wps_word_create_tableA | 在文档末尾插入一个带边框的表格(默认网格线,不依赖光标)。配合 append_paragraph 使用:先追加表题段,再建表,建表后继续 append_paragraph 追加表后内容。 |
| wps_word_set_table_bordersA | 设置表格边框样式。style=three_line 为论文三线表(顶线粗 2.25pt、栏目线细 0.5pt、底线粗 2.25pt,无竖线);style=grid 为常规网格线。建表后调用它把默认全边框改成三线表。 |
| wps_word_append_paragraphA | 在文档末尾追加一个段落,并在同一调用内对该段落就地应用格式(字体/字号/加粗/斜体/样式名/对齐/段前段后/首行缩进/行距)。插入与格式化绑定在同一段,不依赖光标位置,可安全用于论文等线性排版。空文档直接作为首段。text 含 \x0c 可插入分页符。 |
| wps_word_add_page_numbersA | 在指定节的页脚添加自动页码(PAGE 域),居中/居左/居右可选。支持论文完整分节页码方案(封面无页码、前置页罗马数字、正文阿拉伯数字重新计数): ① 封面(第1节):{ section_index:1, clear:true } 清空页脚。 ② 前置页/摘要目录(第2节):{ section_index:2, link_to_previous:false, restart:true, start_number:1, number_style:"roman_lower" } 断开继承 + 独立编号 + 罗马数字。 ③ 正文(第3节):{ section_index:3, link_to_previous:false, restart:true, start_number:1, number_style:"arabic" } 断开继承 + 从 1 重新编号。 注意:每一节都必须显式调用一次(哪怕只是 link_to_previous:false),否则该节页脚会默认链接到上一节、继承其内容(包括继承"空")——这是最容易漏的坑。分节数量与结构可先用 wps_word_probe_sections 查看。页码是动态域,分页后自动更新。 |
| wps_word_add_section_breakA | 在文末插入分节符,用于"分节封面"等需要独立页码/页脚的场景。默认 next_page(下一节从新页开始)。注意 WPS 中段落内的分页符 \x0c 也会自动产生新节,本工具提供显式精确控制。 |
| wps_word_add_tocA | 插入自动目录(TOC 域,可更新、带页码与超链接)。用于替代手写静态目录:先把正文各级标题设置为"标题 1/2/3"样式,再调用本工具。after_text 指定在哪个段落文本之后插入(常用"目 录"标题段);不给则插到文档开头。目录内容由 TOC 域生成,右键可更新域或执行 UpdateFields。 |
| wps_word_update_fieldsA | 更新全文所有域:自动目录(TOC)重新按当前标题与分页生成、页码(PAGE)刷新。写完全文后调用它让目录带上正确页码。 |
| wps_word_probe_sectionsA | 探测当前文档分节与页码 API 的支持度(节数量、页脚链接状态、PageNumbers 重启编号能力)。用于判断论文"正文页码从 1 重新开始、封面无页码"的分节方案是否可行。 |
| wps_word_read_tablesB | 读取文档中所有表格的内容(二维数组)。 |
| wps_word_write_cellB | 向指定表格的单元格写入文字。table_index 从 1 开始。 |
| wps_word_saveA | 保存当前文档。若该文档从未保存过(如 wps_word_new 新建后从未存过),必须传 path 参数;否则直接保存会触发原生"另存为"对话框并卡死整个 WPS 进程(已在对象模型层检测规避,会直接报错而不是卡死)。path 同样受 WPS 沙盒限制,建议用 ~/Downloads。 |
| wps_word_openA | 打开本地或云同步的 WPS 文字文档。注意:若该文件已在 WPS 中打开(同名同路径),WPS 会弹出应用级原生提示框阻塞整个进程(跨文字/表格/演示所有宿主的命令都会卡住直到用户手动点掉),对象模型层无法拦截或感知。调用前建议先用 wps_status 或已知上下文确认目标文件未处于打开状态。另外 WPS 是沙盒应用,只被系统授权访问 ~/Downloads、曾用 Finder/shell "open" 命令打开过的文件、或已保存过的路径;打开未授权路径会被内核拦截,本工具已做校验会明确抛错(不会假成功),遇到此错误请改用 ~/Downloads 下的文件,或先用 shell "open" 命令打开一次目标文件再重试。 |
| wps_word_export_pdfA | 把当前文档导出为 PDF。不传 path 则保存在同目录同名 .pdf。重要:WPS 是沙盒应用,只被系统授权写入 ~/Downloads、或当前文档已打开的原目录;导出到其它未授权路径会被系统静默拦截——WPS 会返回"成功"但文件实际没有生成,且这个失败在对象模型层拿不到任何错误信息。强烈建议导出到 ~/Downloads,导出后务必自行核实文件是否真的存在(本工具不保证路径正确性)。 |
| wps_word_get_outlineA | 提取文档大纲:所有标题样式段落的层级和文本。 |
| wps_word_insert_imageA | 在光标处插入图片。注意:WPS 沙盒只授权读取 ~/Downloads、或曾被 Finder/shell "open" 打开过的文件;图片路径若未被授权,可能被系统静默拦截导致插入失败或插入空白,建议图片放在 ~/Downloads 下。 |
| wps_word_set_paragraph_formatB | 设置段落格式:段前/段后间距、行距、首行缩进。 |
| wps_word_apply_styleC | 给目标文本套用样式,如 "标题 1"、"正文"。 |
| wps_word_closeA | 关闭当前文档(不保存)。 |
| wps_et_probeC | 诊断 WPS 表格 Range 取值 API(开发用,输出各种取值方式的结果)。 |
| wps_et_get_workbook_infoA | 获取当前工作簿信息:名称、工作表数、当前工作表名。 |
| wps_et_get_sheetsA | 列出工作簿中的所有工作表名。 |
| wps_et_read_rangeA | 读取单元格值。统一返回二维数组:value[r][c] 直接取行列(第 1 行第 1 列为 value[0][0])。cell 为单格(如 "A1")时返回 [[值]] 的单元素数组,为区域(如 "A1:B3")时按行返回。不传 cell 则读当前选中,返回 {address, value} 结构。 |
| wps_et_write_cellB | 向单元格写入值。cell 如 "A1"。 |
| wps_et_get_selectionD | 读取当前选区的地址和值。 |
| wps_et_saveA | 保存当前工作簿。若该工作簿从未保存过,必须传 path 参数;否则直接保存会触发原生"另存为"对话框并卡死整个 WPS 进程(已在对象模型层检测规避,会直接报错而不是卡死)。path 同样受 WPS 沙盒限制,建议用 ~/Downloads。 |
| wps_et_openA | 打开本地或云同步的表格文件。注意:若该文件已在 WPS 中打开(同名同路径),WPS 会弹出应用级原生提示框阻塞整个进程(跨文字/表格/演示所有宿主的命令都会卡住直到用户手动点掉),对象模型层无法拦截或感知。调用前建议先确认目标文件未处于打开状态。另外 WPS 是沙盒应用,只被系统授权访问 ~/Downloads、曾用 Finder/shell "open" 命令打开过的文件、或已保存过的路径;打开未授权路径会被内核拦截,本工具已做校验会明确抛错(不会假成功),遇到此错误请改用 ~/Downloads 下的文件,或先用 shell "open" 命令打开一次目标文件再重试。 |
| wps_et_get_contextA | 扫描表格上下文:当前表、所有工作表名、UsedRange 范围、选中单元格、表头行内容。改表前先调用它了解结构。 |
| wps_et_write_rangeA | 从起始单元格开始批量写入二维数组数据。data 的第一维是行、第二维是列,每行一个子数组;cell 省略时从 A1 开始。 |
| wps_et_set_formulaA | 向单元格写入公式(以 = 开头,由 ET 引擎真实计算)。写入后必须用 read_range 读回该单元格验证结果:数值为成功;以 # 开头(#NAME? #REF! #VALUE! 等)为公式错误。注意函数语义按 Excel 标准(如 VLOOKUP 的 col_index 是相对查找范围首列的偏移量,范围 $C:$E 中第 1 列才是 C 列)。 |
| wps_et_sort_rangeB | 按某列对区域排序。order: asc/desc。 |
| wps_et_auto_filterB | 对区域开启自动筛选;给 field+criteria 则按某列筛选。 |
| wps_et_create_chartB | 根据数据区域创建图表(柱状/折线/饼图等)。 |
| wps_et_format_rangeB | 格式化区域:加粗、字号、字体、字体色、背景色、对齐、列宽。颜色按日常的 #RRGGBB 书写(如 #2F5496),addin 会自动转 Excel 的 BGR 字节序,无需关心底层。 |
| wps_et_clear_rangeD | 清空区域内容。 |
| wps_et_set_conditional_formatA | 设置条件格式。type=cell_value 按比较运算符高亮(operator+value1[+value2]+fill_color/font_color);type=color_scale 三色刻度;type=data_bar 数据条(可选 fill_color);type=clear 清除该区域全部条件格式。 |
| wps_et_freeze_panesA | 冻结窗格:冻结顶部 freeze_rows 行与左侧 freeze_cols 列(都传 0 或省略表示不冻结该方向)。freeze:false 取消冻结。 |
| wps_et_create_pivot_tableA | 基于数据区域创建数据透视表。row_fields/column_fields 为字段名(表头文字)数组,value_fields 为 [{field, func, name}],func: sum/count/average/max/min,name 为可选的自定义显示名。不传 dest_sheet 则自动新建工作表存放透视表。 |
| wps_et_closeB | 关闭当前工作簿(不保存)。 |
| wps_et_run_macroA | 调用当前工作簿里已存在的宏(VBA Sub/Function)。注意:本工具只能调用用户事先在 WPS 里编写并保存好的宏,不能写入新宏代码(写宏需要"信任访问 VBA 工程对象模型"权限,JS 加载项拿不到,属于设计上的限制而非未实现)。 |
| wps_wpp_get_presentation_infoA | 获取当前演示文稿信息:名称、幻灯片数。 |
| wps_wpp_read_slideB | 读取指定幻灯片的所有文本。slide_index 从 1 开始。 |
| wps_wpp_get_current_slideA | 获取当前所在幻灯片的序号。 |
| wps_wpp_saveA | 保存当前演示文稿。若该演示文稿从未保存过,必须传 path 参数;否则直接保存会触发原生"另存为"对话框并卡死整个 WPS 进程(已在对象模型层检测规避,会直接报错而不是卡死)。path 同样受 WPS 沙盒限制,建议用 ~/Downloads。 |
| wps_wpp_openA | 打开本地或云同步的演示文稿。注意:若该文件已在 WPS 中打开(同名同路径),WPS 会弹出应用级原生提示框阻塞整个进程(跨文字/表格/演示所有宿主的命令都会卡住直到用户手动点掉),对象模型层无法拦截或感知。调用前建议先确认目标文件未处于打开状态。另外 WPS 是沙盒应用,只被系统授权访问 ~/Downloads、曾用 Finder/shell "open" 命令打开过的文件、或已保存过的路径;打开未授权路径会被内核拦截,本工具已做校验会明确抛错(不会假成功),遇到此错误请改用 ~/Downloads 下的文件,或先用 shell "open" 命令打开一次目标文件再重试。 |
| wps_wpp_add_slideB | 新增一页幻灯片。layout: title/title_content/blank/two_column。可带标题。 |
| wps_wpp_add_textboxC | 向某页添加文本框并写入文字。 |
| wps_wpp_set_slide_titleC | 设置指定幻灯片的标题文字。 |
| wps_wpp_unify_fontB | 统一整份演示文稿所有文本框字体。 |
| wps_wpp_beautify_slideC | 美化某页:标题/正文按配色方案着色。style: business/tech/creative/minimal。 |
| wps_wpp_export_pdfA | 把当前演示文稿导出为 PDF。重要:WPS 是沙盒应用,只被系统授权写入 ~/Downloads、或当前文档已打开的原目录;导出到其它未授权路径会被系统静默拦截——WPS 会返回"成功"但文件实际没有生成,且这个失败在对象模型层拿不到任何错误信息。强烈建议导出到 ~/Downloads,导出后务必自行核实文件是否真的存在(本工具不保证路径正确性)。 |
| wps_wpp_closeA | 关闭当前演示文稿(不保存)。 |
| wps_wpp_insert_imageA | 向指定幻灯片插入图片。不传 slide_index 则用当前选中页。注意:WPS 沙盒只授权读取 ~/Downloads、或曾被 Finder/shell "open" 打开过的文件;图片路径若未被授权,可能被系统静默拦截导致插入失败或插入空白,建议图片放在 ~/Downloads 下。 |
| wps_wpp_add_tableA | 在幻灯片内插入表格。返回的 shape_index 用于后续 wps_wpp_write_table_cell 定位该表格(幻灯片表格没有像文档那样的全局 Tables 集合,必须按 slide_index+shape_index 定位)。 |
| wps_wpp_write_table_cellB | 向幻灯片表格单元格写入文字。shape_index 取自 wps_wpp_add_table 的返回值。 |
| wps_wpp_add_shapeB | 插入基础形状(矩形/圆角矩形/椭圆/菱形/箭头),用于绘制流程图或示意图,可选写入文字与填充色。 |
| wps_wpp_add_notesC | 设置指定幻灯片的演讲者备注。 |
| wps_wpp_set_backgroundA | 设置幻灯片背景色。不传 slide_index 则对全篇所有幻灯片生效。 |
| wps_wpp_delete_slideB | 删除指定幻灯片。 |
| wps_wpp_duplicate_slideA | 复制指定幻灯片,新页紧跟在原页之后。返回 new_slide_index。 |
| wps_wpp_move_slideB | 把指定幻灯片移动到新位置。 |
| wps_wpp_get_outlineA | 读取全篇演示文稿大纲:逐页标题与全部文本。用于生成完毕后整体校验内容是否正确。 |
| wps_wpp_set_slide_sizeA | 设置幻灯片尺寸(单位:磅 pt)。常用:16:9 → width 960 height 540;4:3 → width 720 height 540。 |
| wps_wpp_set_slide_layoutC | 切换指定幻灯片的版式(PowerPoint 经典版式)。 |
| wps_wpp_apply_templateA | 应用主题/模板文件(.pptx/.potx 绝对路径),统一全篇视觉风格(配色、字体、母版版式)。注意:WPS 沙盒只授权读取 ~/Downloads、或曾被 Finder/shell "open" 打开过的文件,模板路径若未被授权可能静默失败,建议模板文件放在 ~/Downloads 下。 |
| wps_wpp_set_transitionA | 设置幻灯片切换效果(页与页之间的过渡,不是形状进入动画——形状动画在本工具集中不提供,因为其底层 API 已确认会导致 WPS 崩溃)。不传 slide_index 则应用到全部幻灯片。 |
| wps_wpp_probeB | 探测当前演示文稿宿主的幻灯片尺寸/版式/模板相关 API 支持度(诊断用)。 |
| wps_reload_addinA | 热更新:让指定宿主的 WPS 加载项重新加载 addin 代码,无需完全退出并重启 WPS。修改加载项 js 后(含重新发布/手动同步到容器)调用它以立即生效。host 省略则三个宿主都重载。 |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |