Word_Document
一个用于创建、读取和操作 Microsoft Word 文档的模型上下文协议(MCP)服务器。该服务器通过标准化接口使 AI 助手能够处理 Word 文档,提供丰富的文档编辑功能。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"word-document-server": {
"args": [
"--from",
"office-word-mcp-server",
"word_mcp_server"
],
"command": "uvx"
}
}
}
服务介绍
Office-Word-MCP-Server
一个用于创建、读取和操作Microsoft Word文档的模型上下文协议(MCP)服务器。该服务器通过标准化接口使AI助手能够处理Word文档,提供了丰富的文档编辑功能。
概览
Office-Word-MCP-Server 实现了 模型上下文协议,将Word文档操作暴露为工具和资源。它作为AI助手与Microsoft Word文档之间的桥梁,支持文档创建、内容添加、格式化和分析等功能。
该服务器采用模块化架构,将关注点分离为核心功能、工具和实用程序,使其具有高度可维护性和扩展性,便于未来的增强。
示例
提示
输出
功能
文档管理
- 创建带有元数据的新Word文档
- 提取文本并分析文档结构
- 查看文档属性和统计信息
- 列出目录中的可用文档
- 创建现有文档的副本
- 将多个文档合并为单个文档
- 将Word文档转换为PDF格式
内容创建
- 添加不同级别的标题
- 插入带可选样式的段落
- 使用自定义数据创建表格
- 添加按比例缩放的图片
- 插入分页符
- 向文档中添加脚注和尾注
- 将脚注转换为尾注
- 自定义脚注和尾注样式
丰富文本格式化
- 格式化特定文本段落(加粗、斜体、下划线)
- 更改文本颜色和字体属性
- 应用自定义样式到文本元素
- 在整个文档中搜索和替换文本
表格格式化
- 用边框和样式格式化表格
- 创建具有独特格式的表头行
- 应用单元格阴影和自定义边框
- 结构化表格以提高可读性
高级文档操作
- 删除段落
- 创建自定义文档样式
- 在整个文档中应用一致的格式
- 详细控制特定范围的文本格式
文档保护
- 为文档添加密码保护
- 实施带可编辑部分的受限编辑
- 向文档中添加数字签名
- 验证文档的真实性和完整性
安装
通过Smithery安装
要通过Smithery自动为Claude Desktop安装Office Word文档服务器:
bash
npx -y @smithery/cli install @GongRzhe/Office-Word-MCP-Server --client claude
先决条件
- Python 3.8 或更高版本
- pip 包管理器
基本安装
bash
克隆仓库
git clone https://github.com/GongRzhe/Office-Word-MCP-Server.git
cd Office-Word-MCP-Server
安装依赖
pip install -r requirements.txt
使用设置脚本
或者,您可以使用提供的设置脚本,该脚本负责:
- 检查先决条件
- 设置虚拟环境
- 安装依赖
- 生成MCP配置
bash
python setup_mcp.py
与Claude for Desktop一起使用
配置
方法1:本地安装后
- 安装完成后,将服务器添加到您的Claude for Desktop配置文件中:
json
{
"mcpServers": {
"word-document-server": {
"command": "python",
"args": ["/path/to/word_mcp_server.py"]
}
}
}#### 方法 2:无需安装(使用 uvx)
- 您还可以通过使用 uvx 包管理器配置 Claude for Desktop 以在不进行本地安装的情况下使用服务器:
json
{
"mcpServers": {
"word-document-server": {
"command": "uvx",
"args": ["--from", "office-word-mcp-server", "word_mcp_server"]
}
}
}
-
配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
重启 Claude for Desktop 以加载配置。
示例操作
配置完成后,您可以要求 Claude 执行如下操作:
- “创建一个名为 'report.docx' 的新文档,并添加封面”
- “向我的文档中添加一个标题和三个段落”
- “插入一个包含销售数据的 4x4 表格”
- “将第 2 段中的单词 'important' 设置为粗体并标红”
- “查找并替换文档中所有 'old term' 为 'new term'”
- “为章节标题创建自定义样式”
- “对文档中的表格应用格式”
API 参考
文档创建与属性
python
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)
内容添加
python
add_heading(filename, text, level=1)
add_paragraph(filename, text, style=None)
add_table(filename, rows, cols, data=None)
add_picture(filename, image_path, width=None)
add_page_break(filename)
内容提取
python
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)
文本格式化
python
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)
表格格式化
python
format_table(filename, table_index, has_header_row=None,
border_style=None, shading=None)
故障排除
常见问题
-
缺少样式
- 某些文档可能缺少用于标题和表格操作所需的样式
- 服务器会尝试创建缺失的样式或直接使用格式设置
- 为了获得最佳效果,请使用具有标准 Word 样式的模板
-
权限问题
- 确保服务器有权读取/写入文档路径
- 使用
copy_document函数为锁定的文档创建可编辑副本 - 如果操作失败,请检查文件所有权和权限
-
图片插入问题
- 使用绝对路径指定图像文件
- 验证图像格式兼容性(推荐使用 JPEG、PNG)
- 检查图像文件大小和权限
调试
通过设置环境变量启用详细日志记录:
bash
export MCP_DEBUG=1 # Linux/macOS
set MCP_DEBUG=1 # Windows
贡献
欢迎贡献!请随时提交 Pull Request。
- 分叉仓库
- 创建您的功能分支 (
git checkout -b feature/amazing-feature) - 提交更改 (
git commit -m 'Add some amazing feature') - 推送到该分支 (
git push origin feature/amazing-feature) - 打开 Pull Request
许可证
该项目根据 MIT 许可证发布 - 详情请参阅 LICENSE 文件。
致谢
- Model Context Protocol 提供了协议规范
- python-docx 用于 Word 文档处理- FastMCP 用于 Python 的 MCP 实现
注意:此服务器会与您系统中的文档文件进行交互。在 Claude for Desktop 或其他 MCP 客户端中确认操作之前,请务必验证所请求的操作是否适当。