一个用于创建、读取和操作Microsoft Word文档的模型上下文协议(MCP)服务器。该服务器使AI助手能够通过标准化接口与Word文档进行交互,提供丰富的文档编辑功能。
<a href="https://glama.ai/mcp/servers/@GongRzhe/Office-Word-MCP-Server"> <img width="380" height="200" src="https://gips0.baidu.com/it/u=2353607300,3830135840&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Office Word Server MCP 服务器" /> </a>Office-Word-MCP-Server 实现了 模型上下文协议,将Word文档操作暴露为工具和资源。它充当AI助手与Microsoft Word文档之间的桥梁,允许进行文档创建、内容添加、格式化和分析。
服务器采用模块化架构,将核心功能、工具和实用程序分离,使其易于维护并便于未来扩展。
要通过 Smithery 自动安装Office Word文档服务器:
npx -y @smithery/cli install @GongRzhe/Office-Word-MCP-Server --client claude
# 克隆仓库
git clone https://github.com/GongRzhe/Office-Word-MCP-Server.git
cd Office-Word-MCP-Server
# 安装依赖
pip install -r requirements.txt
或者,您可以使用提供的设置脚本,该脚本处理以下操作:
python setup_mcp.py
{
"mcpServers": {
"word-document-server": {
"command": "python",
"args": ["/path/to/word_mcp_server.py"]
}
}
}
{
"mcpServers": {
"word-document-server": {
"command": "uvx",
"args": ["--from", "office-word-mcp-server", "word_mcp_server"]
}
}
}
配置文件位置:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json重启桌面版Claude以加载配置。
配置完成后,您可以请求Claude执行如下操作:
create_document(filename, title=None, author=None)
get_document_info(filename)
get_document_text(filename)
get_document_outline(filename)
list_available_documents(directory=".")
copy_document(source_filename, destination_filename=None)
convert_to_pdf(filename, output_filename=None)
add_heading(filename, text, level=1, font_name=None, font_size=None,
bold=None, italic=None, border_bottom=False)
add_paragraph(filename, text, style=None, font_name=None, font_size=None,
bold=None, italic=None, color=None)
add_table(filename, rows, cols, data=None)
add_picture(filename, image_path, width=None)
add_page_break(filename)
# 根据现有文本或段落索引插入内容
insert_header_near_text(filename, target_text=None, header_title=None,
position='after', header_style='Heading 1',
target_paragraph_index=None)
insert_line_or_paragraph_near_text(filename, target_text=None, line_text=None,
position='after', line_style=None,
target_paragraph_index=None)
# 插入带有正确XML格式的项目符号或编号列表
insert_numbered_list_near_text(filename, target_text=None, list_items=None,
position='after', target_paragraph_index=None,
bullet_type='bullet')
# bullet_type 选项:
# 'bullet' - 创建带有项目符号(•)的项目符号列表
# 'number' - 创建编号列表(1, 2, 3, ...)
get_document_text(filename)
get_paragraph_text_from_document(filename, paragraph_index)
find_text_in_document(filename, text_to_find, match_case=True, whole_word=False)
format_text(filename, paragraph_index, start_pos, end_pos, bold=None,
italic=None, underline=None, color=None, font_size=None, font_name=None)
search_and_replace(filename, find_text, replace_text)
delete_paragraph(filename, paragraph_index)
create_custom_style(filename, style_name, bold=None, italic=None,
font_size=None, font_name=None, color=None, base_style=None)
format_table(filename, table_index, has_header_row=None,
border_style=None, shading=None)
set_table_cell_shading(filename, table_index, row_index, col_index,
fill_color, pattern="clear")
apply_table_alternating_rows(filename, table_index,
color1="FFFFFF", color2="F2F2F2")
highlight_table_header(filename, table_index,
header_color="4472C4", text_color="FFFFFF")
# 单元格合并工具
merge_table_cells(filename, table_index, start_row, start_col, end_row, end_col)
merge_table_cells_horizontal(filename, table_index, row_index, start_col, end_col)
merge_table_cells_vertical(filename, table_index, col_index, start_row, end_row)
# 单元格对齐工具
set_table_cell_alignment(filename, table_index, row_index, col_index,
horizontal="left", vertical="top")
set_table_alignment_all(filename, table_index,
horizontal="left", vertical="top")
# 单元格文本格式化工具
format_table_cell_text(filename, table_index, row_index, col_index,
text_content=None, bold=None, italic=None, underline=None,
color=None, font_size=None, font_name=None)
# 单元格填充工具
set_table_cell_padding(filename, table_index, row_index, col_index,
top=None, bottom=None, left=None, right=None, unit="points")
# 列宽管理
set_table_column_width(filename, table_index, col_index, width, width_type="points")
set_table_column_widths(filename, table_index, widths, width_type="points")
set_table_width(filename, table_index, width, width_type="points")
auto_fit_table_columns(filename, table_index)
get_all_comments(filename)
get_comments_by_author(filename, author)
get_comments_for_paragraph(filename, paragraph_index)
缺少样式
权限问题
copy_document函数创建锁定文档的可编辑副本图像插入问题
表格格式化问题
启用详细日志记录,设置环境变量:
export MCP_DEBUG=1 # Linux/macOS
set MCP_DEBUG=1 # Windows
欢迎贡献!请随时提交Pull Request。
git checkout -b feature/amazing-feature)git commit -m '添加一些精彩的功能')git push origin feature/amazing-feature)此项目根据MIT许可证发布 - 详情请参阅LICENSE文件。
注意:此服务器与系统上的文档文件进行交互。在Claude桌面版或其他MCP客户端中确认请求的操作前,请始终验证其适当性。