Office Document Processing MCP Server (iflow-mcp/thewdy-office-editor-mcp) is an MCP server listed on the M8ven Trust Index. It scores 43 out of 100, grade D. It declares 90 tools. No publisher has claimed this listing.

D
Caution
43/100

Office Document Processing MCP Server

Enables creation and editing of Word, Excel, and PowerPoint documents within MCP clients through AI assistants.

Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

iflow-mcp

Source: Glama

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
⚠️
Tool descriptions don’t match what handlers do
1 tool describes read intent but its handler mutates — batch_create_documents (line 614: shutil.copy2(template_path, output_file))
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
🔐
You'll be asked for 1 credential: DEEPL_API_KEY
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes88 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

create_excel_workbook

创建一个新的Excel工作簿。 Args: filename: 要创建的文件名 (不需要包含.xlsx扩展名) Returns: 包含操作结果的消息

open_excel_workbook

打开一个现有的Excel工作簿并读取其基本信息。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 Returns: 工作簿的基本信息

save_excel_workbook

保存Excel工作簿,可选择保存为不同格式。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 format_type: 保存格式,可选值: "xlsx", "xls", "csv" new_filename: 新文件名(不含扩展名),如果不提供则使用原文件名 Returns: 操作结果信息

add_worksheet

在Excel工作簿中添加新的工作表。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 新工作表的名称 Returns: 操作结果信息

delete_worksheet

从Excel工作簿中删除指定的工作表。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 要删除的工作表名称 Returns: 操作结果信息

rename_worksheet

重命名Excel工作簿中的工作表。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 old_name: 要重命名的工作表当前名称 new_name: 工作表的新名称 Returns: 操作结果信息

read_cell

读取Excel工作簿中指定单元格的内容。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell: 单元格地址,如"A1", "B2"等 Returns: 单元格的内容

read_cell_range

读取Excel工作簿中指定单元格范围的内容。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 start_cell: 起始单元格地址,如"A1" end_cell: 结束单元格地址,如"B3" Returns: 单元格范围的内容

write_cell

向Excel工作簿中指定单元格写入内容。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell: 单元格地址,如"A1", "B2"等 value: 要写入的值 Returns: 操作结果信息

write_cell_range

向Excel工作簿中指定区域写入数据。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 start_cell: 起始单元格地址,如"A1" data: 要写入的数据,二维数组 Returns: 操作结果信息

clear_cell

清除Excel工作簿中指定单元格的内容。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell: 单元格地址,如"A1", "B2"等 Returns: 操作结果信息

format_cell

设置Excel工作簿中指定单元格的格式。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell: 单元格地址,如"A1", "B2"等,或单元格范围如"A1:B3" font_name: 字体名称 font_size: 字体大小(点) bold: 是否加粗 italic: 是否斜体 underline: 是否下划线 font_color: 字体颜色 (十六进制RGB格式,如"#FF0000"表示红色) background_color: 单元格背景色 (十六进制RGB格式) horizontal_alignment:

merge_cells

合并Excel工作簿中指定范围的单元格。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 start_cell: 起始单元格地址,如"A1" end_cell: 结束单元格地址,如"B3" Returns: 操作结果信息

unmerge_cells

拆分Excel工作簿中已合并的单元格。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 start_cell: 起始单元格地址,如"A1" end_cell: 结束单元格地址,如"B3" Returns: 操作结果信息

insert_row

在Excel工作簿中插入空行。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 row_idx: 要插入行的位置(从1开始) Returns: 操作结果信息

insert_column

在Excel工作簿中插入空列。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 col_idx: 要插入列的位置(从1开始) Returns: 操作结果信息

delete_row

从Excel工作簿中删除指定行。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 row_idx: 要删除的行位置(从1开始) Returns: 操作结果信息

delete_column

从Excel工作簿中删除指定列。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 col_idx: 要删除的列位置(从1开始) Returns: 操作结果信息

sort_data

对Excel工作簿中的数据区域进行排序。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 range_to_sort: 要排序的数据区域,如"A1:D10" sort_column: 排序依据的列索引(在选定区域内,从1开始) ascending: 是否升序排序,True为升序,False为降序 has_header: 是否包含标题行,如果为True,则第一行作为标题不参与排序 Returns: 操作结果信息

apply_formula

在Excel工作簿中指定单元格添加公式。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell: 单元格地址,如"A1", "B2"等 formula: 要添加的公式,不需要包含等号前缀,如"SUM(A1:A10)" Returns: 操作结果信息

batch_fill

在Excel工作簿中批量填充单元格。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 range_to_fill: 要填充的单元格范围,如"A1:D10" value: 要填充的值或公式 is_formula: 是否为公式,如果为True,则value为公式内容 Returns: 操作结果信息

create_chart

在Excel工作簿中创建图表。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 data_range: 数据区域,如"A1:D10" chart_type: 图表类型,可选值: "column" (柱状图), "line" (折线图), "pie" (饼图), "bar" (条形图) title: 图表标题 categories_range: 类别标签区域,如"A1:A10" (可选) position: 图表放置的位置,如"F1" Returns: 操作结果信息

apply_filter

在Excel工作簿中应用数据筛选功能。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 filter_range: 要应用筛选的数据区域,如"A1:D10" Returns: 操作结果信息

filter_data

在已应用筛选的Excel工作簿中设置筛选条件。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 column_letter: 要筛选的列字母,如"A"、"B"等 filter_criteria: 筛选条件,可选值: "equals", "not_equals", "greater_than", "less_than", "contains", "not_contains", "begins_with", "ends_with" filter_value: 筛选值 Returns: 操作结果信息

clear_filter

清除Excel工作簿中的数据筛选。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 Returns: 操作结果信息

create_pivot_table

在Excel工作簿中创建数据透视表。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 源数据工作表名称 data_range: 数据区域,如"A1:D10" target_sheet: 放置数据透视表的目标工作表名称 target_cell: 数据透视表放置的起始单元格,默认为"A1" rows: 行标签的字段列表,如["姓名", "部门"] columns: 列标签的字段列表,如["年份", "月份"] values: 值字段列表,如[{"字段": "销售额", "函数": "SUM"}, {"字段": "成本", "函数": "A

update_pivot_table

更新Excel工作簿中的数据透视表配置。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 包含数据透视表的工作表名称 pivot_name: 数据透视表名称 add_row: 要添加的行字段名称 remove_row: 要移除的行字段名称 add_column: 要添加的列字段名称 remove_column: 要移除的列字段名称 add_value: 要添加的值字段,格式如{"字段": "销售额", "函数": "SUM"} remove_value: 要移除的值字段名称 add_filter: 要添加的筛选字段名称 remove_

set_data_validation

在Excel工作簿中设置数据有效性规则。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell_range: 要应用数据有效性的单元格区域,如"A1:B10" validation_type: 验证类型,可选值: - "whole": 整数 - "decimal": 小数 - "list": 列表 - "date": 日期 - "time": 时间 - "textLength": 文本长度 - "custom": 自定义公式 operator: 条件运算符,可选值: - "between": 介于...之间 - "no

create_dropdown_list

在Excel工作簿中创建下拉列表。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell_range: 要应用下拉列表的单元格区域,如"A1:B10" values: 下拉列表的选项值列表 allow_blank: 是否允许空值 error_title: 错误提示标题 error_message: 错误提示消息 prompt_title: 输入提示标题 prompt_message: 输入提示消息 Returns: 操作结果信息

clear_data_validation

清除Excel工作簿中指定区域的数据有效性规则。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell_range: 要清除数据有效性的单元格区域,如"A1:B10" Returns: 操作结果信息

add_conditional_formatting

在Excel工作簿中添加条件格式。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell_range: 要应用条件格式的单元格区域,如"A1:B10" condition_type: 条件类型,可选值: - "cellIs": 单元格值 - "expression": 使用公式 - "colorScale": 色阶 - "dataBar": 数据条 - "iconSet": 图标集 - "top10": 前10项 - "aboveAverage": 高于平均值 - "duplicateValues": 重复值 - "u

add_data_bar

在Excel工作簿中添加数据条条件格式。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell_range: 要应用数据条的单元格区域,如"A1:B10" color: 数据条颜色 (十六进制RGB格式,如"#638EC6"表示蓝色) min_type: 最小值类型,可选值: "min", "num", "percent", "percentile", "formula" max_type: 最大值类型,可选值: "max", "num", "percent", "percentile", "formula" min_

add_color_scale

在Excel工作簿中添加色阶条件格式。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell_range: 要应用色阶的单元格区域,如"A1:B10" min_color: 最小值颜色 (十六进制RGB格式,默认为白色) mid_color: 中间值颜色 (十六进制RGB格式,可选) max_color: 最大值颜色 (十六进制RGB格式,默认为红色) min_type: 最小值类型,可选值: "min", "num", "percent", "percentile", "formula" mid_type: 中间值类

clear_conditional_formatting

清除Excel工作簿中的条件格式。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell_range: 要清除条件格式的单元格区域,如"A1:B10",如果不提供则清除整个工作表的条件格式 Returns: 操作结果信息

batch_replace

在Excel工作簿中批量替换文本。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 cell_range: 要进行替换的单元格区域,如"A1:B10" find_text: 要查找的文本 replace_text: 替换为的文本 match_case: 是否区分大小写 match_entire_cell: 是否匹配整个单元格内容 Returns: 操作结果信息

apply_sum

在Excel工作簿中应用SUM函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" range_to_sum: 要求和的单元格范围,如"A1:D1" Returns: 操作结果信息

apply_average

在Excel工作簿中应用AVERAGE函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" range_to_average: 要求平均值的单元格范围,如"A1:D1" Returns: 操作结果信息

apply_count

在Excel工作簿中应用COUNT函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" range_to_count: 要计数的单元格范围,如"A1:D1" Returns: 操作结果信息

apply_max

在Excel工作簿中应用MAX函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" range_to_max: 要求最大值的单元格范围,如"A1:D1" Returns: 操作结果信息

apply_min

在Excel工作簿中应用MIN函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" range_to_min: 要求最小值的单元格范围,如"A1:D1" Returns: 操作结果信息

apply_countif

在Excel工作簿中应用COUNTIF函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" range_to_count: 要计数的单元格范围,如"A1:D1" criteria: 计数条件,如">5"或"\"Text\"" Returns: 操作结果信息

apply_sumif

在Excel工作簿中应用SUMIF函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" criteria_range: 条件范围,如"A1:A10" criteria: 求和条件,如">5"或"\"Text\"" sum_range: 要求和的单元格范围,如"B1:B10",如不提供则使用criteria_range Returns: 操作结果信息

apply_vlookup

在Excel工作簿中应用VLOOKUP函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" lookup_value: 要查找的值,可以是单元格引用(如"A1")或具体值 table_array: 查找表范围,如"A1:C10" col_index_num: 返回值的列号(从1开始) range_lookup: 是否允许近似匹配,True为允许,False为精确匹配 Returns: 操作结果信息

apply_hlookup

在Excel工作簿中应用HLOOKUP函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" lookup_value: 要查找的值,可以是单元格引用(如"A1")或具体值 table_array: 查找表范围,如"A1:J3" row_index_num: 返回值的行号(从1开始) range_lookup: 是否允许近似匹配,True为允许,False为精确匹配 Returns: 操作结果信息

apply_if

在Excel工作簿中应用IF函数。 Args: file_path: Excel工作簿的完整路径或相对于输出目录的路径 sheet_name: 工作表名称 target_cell: 放置公式的目标单元格,如"E1" logical_test: 逻辑测试条件,如"A1>B1" value_if_true: 条件为真时的返回值 value_if_false: 条件为假时的返回值 Returns: 操作结果信息

ocr_recognize_text

从图片中提取文本内容 Args: image_path: 图片文件路径 language: OCR识别语言,默认为中文简体+英文 Returns: 包含识别结果的字典

compare_documents

比较两个文档的内容差异 Args: doc1_path: 第一个文档的路径 doc2_path: 第二个文档的路径 output_format: 输出格式,支持'html'或'text' Returns: 包含比较结果的字典

translate_document

将文档内容翻译成指定目标语言 Args: doc_path: 文档路径 target_language: 目标语言,默认为中文 api_key: DeepL API密钥,可选 Returns: 包含翻译结果的字典

encrypt_document

加密文档 Args: doc_path: 要加密的文档路径 password: 加密密码 Returns: 包含加密结果的字典

decrypt_document

解密文档 Args: encrypted_file_path: 加密文件路径 password: 解密密码 output_format: 输出文件格式后缀,如果不提供则保持原格式 Returns: 包含解密结果的字典

export_excel_to_database

将Excel数据导出到数据库 Args: excel_file: Excel文件路径 db_connection_string: 数据库连接字符串 table_name: 目标表名 sheet_name: 工作表名称,默认为第一个工作表 if_exists: 如果表已存在的处理方式,"replace"替换,"append"追加,"fail"报错 Returns: 包含操作结果的字典

import_database_to_excel

从数据库导入数据到Excel文件 Args: db_connection_string: 数据库连接字符串 query: SQL查询语句 output_file: 输出Excel文件名,默认为query_result.xlsx Returns: 包含操作结果的字典

batch_create_documents

基于模板批量生成文档 Args: template_path: 模板文档路径 output_prefix: 输出文件前缀 count: 生成的文档数量 data_mapping: 数据映射字典,键为占位符名称,值为数据列表 Returns: 包含操作结果的字典

batch_process_documents

并行批量处理多个文档 Args: files: 要处理的文件路径列表 operation: 要执行的操作名称,如'translate_document' params: 操作参数 max_workers: 最大并行工作线程数 Returns: 包含操作结果的字典

general_file_operations

通用文件和目录操作 Args: operation: 操作类型,"copy"复制, "move"移动, "delete"删除, "list"列表 source_path: 源文件或目录路径 target_path: 目标路径,用于复制和移动操作 recursive: 是否递归处理子目录 Returns: 包含操作结果的字典

create_powerpoint_presentation

创建一个新的PowerPoint演示文稿。 Args: filename: 要创建的文件名 (不需要包含.pptx扩展名) Returns: 包含操作结果的消息

open_powerpoint_presentation

打开一个现有的PowerPoint演示文稿并读取其基本信息。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 Returns: 演示文稿的基本信息

save_presentation_as

保存PowerPoint演示文稿,可选择保存为不同格式。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 output_format: 保存格式,可选值: "pptx", "ppt", "pdf" new_filename: 新文件名(不含扩展名),如果不提供则使用原文件名 Returns: 操作结果信息

add_slide

向PowerPoint演示文稿添加新幻灯片。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 layout_name: 幻灯片版式名称,常见值包括: "Title Slide" (标题幻灯片) "Title and Content" (标题和内容) "Section Header" (节标题) "Two Content" (两栏内容) "Comparison" (比较) "Title Only" (仅标题) "Blank" (空白) "Content with Caption" (带说明的内容) "Picture with Caption" (带

delete_slide

删除PowerPoint演示文稿中的指定幻灯片。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要删除的幻灯片索引(从1开始计数) Returns: 操作结果信息

reorder_slides

调整PowerPoint演示文稿中幻灯片的顺序。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要移动的幻灯片索引(从1开始计数) new_position: 幻灯片的新位置(从1开始计数) Returns: 操作结果信息

set_slide_background

为PowerPoint演示文稿中的指定幻灯片设置背景颜色。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要设置背景的幻灯片索引(从1开始计数),0表示所有幻灯片 background_color: 背景颜色的十六进制代码,例如"#FF0000"表示红色 Returns: 操作结果信息

add_text_box

向PowerPoint演示文稿的指定幻灯片添加文本框。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要添加文本框的幻灯片索引(从1开始计数) text: 要添加的文本内容 left: 文本框左侧位置(英寸) top: 文本框顶部位置(英寸) width: 文本框宽度(英寸) height: 文本框高度(英寸) font_name: 字体名称,如"宋体"、"Arial"等 font_size: 字体大小(磅) font_bold: 是否加粗 font_italic: 是否斜体 text_color: 文本颜色的十六进制

insert_image

在PowerPoint演示文稿的指定幻灯片中插入图片。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要插入图片的幻灯片索引(从1开始计数) image_path: 图片文件的完整路径或相对路径 left: 图片左侧位置(英寸) top: 图片顶部位置(英寸) width: 图片宽度(英寸),如果不指定则保持原始宽高比 height: 图片高度(英寸),如果不指定则保持原始宽高比 Returns: 操作结果信息

insert_table

在PowerPoint演示文稿的指定幻灯片中插入表格。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要插入表格的幻灯片索引(从1开始计数) rows: 表格行数 cols: 表格列数 data: 表格数据,二维列表,每个内部列表表示一行数据 left: 表格左侧位置(英寸) top: 表格顶部位置(英寸) width: 表格宽度(英寸) height: 表格高度(英寸) Returns: 操作结果信息

add_slide_notes

为PowerPoint演示文稿的指定幻灯片添加备注。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要添加备注的幻灯片索引(从1开始计数) notes_text: 备注内容 Returns: 操作结果信息

insert_shape

在PowerPoint演示文稿的指定幻灯片中插入形状。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要插入形状的幻灯片索引(从1开始计数) shape_type: 形状类型,可选值包括: "rectangle", "oval", "triangle", "arrow", "line" left: 形状左侧位置(英寸) top: 形状顶部位置(英寸) width: 形状宽度(英寸) height: 形状高度(英寸) fill_color: 填充颜色的十六进制代码,例如"#FF0000"表示红色 Returns: 操作结

insert_chart

在PowerPoint演示文稿的指定幻灯片中插入图表。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要插入图表的幻灯片索引(从1开始计数) chart_type: 图表类型,可选值: "column", "line", "pie", "bar", "area" data: 图表数据,二维列表,第一行为类别标签,第一列为数据系列名称 left: 图表左侧位置(英寸) top: 图表顶部位置(英寸) width: 图表宽度(英寸) height: 图表高度(英寸) has_legend: 是否显示图例 has_title

apply_presentation_theme

为PowerPoint演示文稿应用主题。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 theme_name: 主题名称,可选值包括: "Office", "Adjacency", "Angles", "Apex", "Apothecary", "Aspect", "Austin", "Black Tie", "Civic", "Clarity", "Composite", "Concourse", "Couture", "Elemental", "Equity", "Essential", "Executive", "Grid", "Hard

add_animation

为PowerPoint演示文稿中的形状添加动画效果。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要添加动画的幻灯片索引(从1开始计数) shape_index: 要添加动画的形状索引(从1开始计数) animation_type: 动画类型,可选值: "entrance": 入场动画 "emphasis": 强调动画 "exit": 退场动画 animation_trigger: 动画触发方式,可选值: "on_click": 点击时播放 "with_previous": 与上一动画同时播放 "after_prev

set_slide_transition

设置PowerPoint演示文稿中幻灯片的切换效果。 Args: file_path: PowerPoint演示文稿的完整路径或相对于输出目录的路径 slide_index: 要设置切换效果的幻灯片索引(从1开始计数),0表示所有幻灯片 transition_type: 切换效果类型,可选值包括: "none", "fade", "push", "wipe", "split", "reveal", "random", "shape", "zoom", "gallery", "dissolve" duration: 切换效果持续时间(秒) on_click: 是否点击鼠标时切换幻灯片 auto_

create_empty_txt

在指定路径上创建一个空白的TXT文件。 Args: filename: 要创建的文件名 (不需要包含.txt扩展名) Returns: 包含操作结果的消息

create_word_document

创建一个新的Word文档。 Args: filename: 要创建的文件名 (不需要包含.docx扩展名) Returns: 包含操作结果的消息

open_and_read_word_document

打开并读取Word文档的完整内容。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 Returns: 文档的完整内容

add_text_to_document

向Word文档添加文本内容。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 text: 要添加的文本内容 is_heading: 是否作为标题添加 heading_level: 标题级别 (1-9),仅当is_heading=True时有效 alignment: 对齐方式,可选值: "left", "center", "right", "justify" paragraph_index: 段落索引 (从0开始计数),指定添加内容的位置,默认为-1表示文档末尾 direction: 指定内容添加的位置,可选值: "front"(段落前), "behind"(段落

format_text_in_document

设置Word文档中指定段落的文本格式。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 paragraph_index: 段落索引 (从0开始计数) font_name: 字体名称 (可选) font_size: 字体大小 (点数,可选) bold: 是否加粗 italic: 是否斜体 underline: 是否下划线 font_color: 字体颜色 (十六进制RGB格式,如"#FF0000"表示红色,可选) highlight_color: 突出显示颜色 (可选,有效值: "yellow", "green", "blue", "red", "pink", "

set_paragraph_spacing

设置Word文档中指定段落的间距。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 paragraph_index: 段落索引 (从0开始计数) before_spacing: 段前间距 (磅,可选) after_spacing: 段后间距 (磅,可选) line_spacing: 行间距值 (当line_spacing_rule为"multiple"时为倍数,为"exact"时为磅值) line_spacing_rule: 行间距规则,可选值: "multiple"(倍数), "exact"(固定值), "atLeast"(最小值) Returns: 操作结果

edit_table_cell

编辑Word文档中表格的单元格内容。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 table_index: 表格索引 (从0开始计数) row: 行索引 (从0开始计数) col: 列索引 (从0开始计数) text: 单元格内容 Returns: 操作结果信息

save_document_as_pdf

将Word文档保存为PDF格式。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 Returns: 操作结果信息

save_document_as

将Word文档保存为指定格式。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 output_format: 输出格式,可选值: "docx", "doc", "pdf", "txt", "html" new_filename: 新文件名(不含扩展名),如果不提供则使用原文件名 Returns: 操作结果信息

close_document

关闭Word文档,可选是否保存更改。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 save_changes: 是否保存更改,默认为True Returns: 操作结果信息

edit_paragraph_in_document

编辑Word文档中指定段落的文本内容。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 paragraph_index: 段落索引 (从0开始计数) new_text: 新的文本内容 save: 是否保存更改,默认为True Returns: 操作结果信息

find_and_replace_text

在Word文档中查找并替换文本。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 find_text: 要查找的文本 replace_text: 替换为的文本 match_case: 是否区分大小写,默认为False match_whole_word: 是否匹配整个单词,默认为False save: 是否保存更改,默认为True Returns: 操作结果信息

delete_paragraph

删除Word文档中指定的段落。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 paragraph_index: 要删除的段落索引 (从0开始计数) save: 是否保存更改,默认为True Returns: 操作结果信息

insert_table_of_contents

在Word文档中插入目录。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 title: 目录标题 levels: 目录级别数 (1-9) after_paragraph: 在指定段落后插入目录,默认为文档开头第一段后 Returns: 操作结果信息

add_header_footer

为Word文档添加页眉和页脚。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 header_text: 页眉文本(可选) footer_text: 页脚文本(可选) page_numbers: 是否在页脚添加页码 Returns: 操作结果信息

set_page_layout

设置Word文档的页面布局。 Args: file_path: Word文档的完整路径或相对于输出目录的路径 orientation: 页面方向,可选值: "portrait"(纵向), "landscape"(横向) page_width: 页面宽度(厘米,自定义纸张尺寸时使用) page_height: 页面高度(厘米,自定义纸张尺寸时使用) left_margin: 左边距(厘米) right_margin: 右边距(厘米) top_margin: 上边距(厘米) bottom_margin: 下边距(厘米) section_index: 节索引,默认为0(第一节) Returns: 操

merge_documents

合并多个Word文档。 Args: main_file_path: 主文档的完整路径或相对于输出目录的路径(合并后的文档将保存为该文件) files_to_merge: 要合并的文档路径列表 Returns: 操作结果信息

// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configOFFICE_EDIT_PATH
🔐 secretDEEPL_API_KEY
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

90/90 tools missing one or more hints — create_excel_workbook (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); open_excel_workbook (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); save_excel_workbook (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +87 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Destructive tools are labelled

5 tools perform destructive updates without destructiveHint — save_excel_workbook deletes at line 212 (os.remove(temp_path)); general_file_operations deletes at line 800 (shutil.rmtree(source_path)); save_presentation_as deletes at line 235 (os.remove(temp_path))

Add destructiveHint:true to any tool whose handler calls .delete(), .upsert(), .update(), unlink, rm, DELETE, DROP, REPLACE INTO, or any operation that overwrites existing data.

Descriptions match behaviour

1 tool describes read intent but its handler mutates — batch_create_documents (line 614: shutil.copy2(template_path, output_file))

Rename the tool, rewrite the description, or move the side-effect into a separate clearly-named tool.

Tests exist

No test files found

Add tests that exercise each declared tool.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 5 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/iflow-mcp/thewdy-office-editor-mcp?variant=verified)](https://m8ven.ai/mcp/iflow-mcp/thewdy-office-editor-mcp)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: e8c93e76064103b2212ea6aad057ece8a1839231
code hash: 165467e7622a79339c55cf7eea6e073034f56024aa1bc4647c8a402a2e2cb664
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client