cuongpham2107
服务介绍
Word MCP Server
Word MCP Server 是一个 Python 应用程序,它允许通过 API 创建和编辑 Microsoft Word (.docx) 文档。该项目使用 FastMCP 来构建与 Word 文档交互的工具。
安装
依赖
- Python 3.12+
- 依赖库:
- python-docx
- opencv-python (cv2)
- numpy
- FastMCP
安装库
bash
uv venv
source venv/bin/activate
uv pip install .
功能
Word MCP Server 提供了以下工具:
- 创建和打开 Word 文档
- 添加和格式化文本
- 添加图片
- 创建表格
- 管理资源和提示
使用指南
配置并使用 LLM 启动
要将 Word MCP Server 与大型语言模型(LLM)一起使用,您需要通过 JSON 文件进行配置:
json
{
"mcpServers": {
"word-mcp-server": {
"command": "/path/to/word-mcp-server/.venv/bin/python3",
"args": ["/path/to/word-mcp-server/server.py"]
}
}
}
配置说明:
mcpServers: 包含各个 MCP 服务器配置的对象word-mcp-server: 服务器的标识名command: Python 解释器的路径(通常位于虚拟环境中)args: 命令行参数,其中第一个参数是 server.py 的路径
服务器将启动并准备好接收来自 LLM 的命令
与 LLM 交互:
成功配置并启动后,您可以使用 LLM 来:
- 通过自然语言命令创建和编辑 Word 文档
- 根据提示自动生成内容
- 智能地格式化文本、添加图片和表格
创建新文档
python
create_new_document()
打开现有文档
python
open_document("path/to/document.docx")
添加标题和段落
python
添加标题
add_heading("文档标题", level=0)
add_heading("第1章", level=1)
添加段落文本
add_paragraph("这是段落文本的内容。")
添加带格式的段落文本
add_paragraph(
"这是经过格式化的段落文本。",
style="Normal",
font_size=14,
bold=True,
italic=False,
alignment=WD_PARAGRAPH_ALIGNMENT.CENTER
)
为部分文本添加格式
python
创建段落文本
p = add_paragraph("这是基本的段落文本。 ")
添加具有不同格式的部分文本
add_run_to_paragraph(
p,
"这部分加粗且为红色。",
bold=True,
color="red"
)
添加高亮部分文本
add_run_to_paragraph(
p,
" 这部分被黄色高亮。",
highlight="yellow"
)
添加图片
python
从文件路径添加图片
add_picture("path/to/image.jpg", width=4.0)
或者从 numpy 数组添加图片
import numpy as np
import cv2
img = cv2.imread("path/to/image.jpg")
add_picture(img, width=3.5)
创建表格
python
创建一个 3 行 4 列的表格
table = add_table(rows=3, cols=4, style="Table Grid")
填充表格数据
table.cell(0, 0).text = "第1行, 第1列"
table.cell(0, 1).text = "第1行, 第2列"
...
支持的颜色
在使用 color 和 highlight 参数时,您可以使用以下值:
- black
- blue
- green
- dark blue
- dark red
- dark yellow
- dark green
- pink
- red
- white
- teal
- yellow
- violet
- gray25
- gray50
注意事项
- 该项目使用
python-docx库来与 Word 文档进行交互 - 资源和提示存储在
resources和prompts目录中- 确保在运行服务器之前已经安装了所有依赖库
完整示例
python
创建新文档
create_new_document()
添加标题
add_heading("项目报告", level=0)
添加创建者信息
p = add_paragraph("创建者: ")
add_run_to_paragraph(p, "阮文A", bold=True)
添加目录
add_heading("目录", level=1)
add_paragraph("1. 介绍")
add_paragraph("2. 内容")
add_paragraph("3. 结论")
添加内容
add_heading("1. 介绍", level=1)
add_paragraph("这是项目的介绍部分...")
添加图片
add_paragraph("插图:")
add_picture("project_diagram.jpg", width=5.0)
添加数据表
add_heading("数据表", level=2)
table = add_table(rows=3, cols=3)
table.cell(0, 0).text = "数据1"
table.cell(0, 1).text = "数据2"
table.cell(0, 2).text = "数据3"
填充其他数据...
保存文档
save_document("bao_cao_du_an.docx")
请注意,上述代码中的函数名和变量名保持英文不变,以确保与原始代码的一致性和可读性。此外,“阮文A”是“Nguyễn Văn A”的中文翻译,根据上下文可能需要调整为更合适的译名或保留原名。