猛犸象mcp
](https://npmjs.com/package/mammoth-mcp) ](https://npmjs.com/package/mammoth-mcp)
一种模型上下文协议(MCP)服务器,用于将DOCX文件转换为HTML mammath.js.
特性
- convert_docx_to_html:使用高级样式选项将DOCX文件转换为干净的HTML
- 将docx转换为html_带图像:将DOCX文件转换为嵌入base64图像的HTML
- extract_raw_text:从DOCX文件中提取纯文本内容
- convert_docx_to_markdown:将DOCX文件转换为Markdown格式
安装
$ pnpm install发展
$ npm run dev
$ npm run build用法
配置MCP客户端
将服务器添加到MCP客户端配置中(例如,Claude Desktop)。
配置文件位于:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
选项1:使用npx(推荐)
这将自动安装并运行最新版本:
{
"mcpServers": {
"mammoth": {
"command": "npx",
"args": ["-y", "mammoth-mcp"]
}
}
}选项2:使用本地安装
如果您已在本地克隆了存储库:
{
"mcpServers": {
"mammoth": {
"command": "node",
"args": ["/absolute/path/to/mammoth-mcp/dist/esm/index.js"]
}
}
}更新配置后,重新启动Claude Desktop以使更改生效。
可用工具
convert_docx_to_html
将DOCX文件转换为HTML。
参数:
filePath(string,必填):DOCX文件的绝对路径styleMap(字符串,可选):自定义样式映射,用于控制Word样式到HTML的转换ignoreEmptyParagraphs(布尔值,可选):是否忽略空段落(默认值:true)idPrefix(字符串,可选):生成ID的前缀(书签、脚注、尾注)includeDefaultStyleMap(boolean,可选):是否包含默认样式映射(默认值:true)includeEmbeddedStyleMap(boolean,可选):是否包含文档中的嵌入式样式映射(默认值:true)
例子:
{
"filePath": "/path/to/document.docx",
"styleMap": "p[style-name='Section Title'] => h1:fresh\nb[style-name='Emphasis'] => em",
"ignoreEmptyParagraphs": false,
"idPrefix": "doc-"
}将docx转换为html_带图像
将DOCX文件转换为HTML,其中图像嵌入为base64数据URI。
参数:
filePath(string,必填):DOCX文件的绝对路径styleMap(字符串,可选):自定义样式映射,用于控制Word样式到HTML的转换ignoreEmptyParagraphs(布尔值,可选):是否忽略空段落(默认值:true)idPrefix(字符串,可选):生成ID的前缀(书签、脚注、尾注)includeDefaultStyleMap(boolean,可选):是否包含默认样式映射(默认值:true)includeEmbeddedStyleMap(boolean,可选):是否包含文档中的嵌入式样式映射(默认值:true)
例子:
{
"filePath": "/path/to/document-with-images.docx",
"styleMap": "p[style-name='Code'] => pre:separator('\\n')"
}extract_raw_text
从DOCX文件中提取原始文本,忽略所有格式。可用于索引、搜索或文本分析。
参数:
filePath(string,必填):DOCX文件的绝对路径
例子:
{
"filePath": "/path/to/document.docx"
}convert_docx_to_markdown
将DOCX文件转换为Markdown格式。注意:mammath.js已弃用此功能,但仍具有功能。
参数:
filePath(string,必填):DOCX文件的绝对路径styleMap(字符串,可选):自定义样式映射,控制Word样式到Markdown的转换ignoreEmptyParagraphs(布尔值,可选):是否忽略空段落(默认值:true)idPrefix(字符串,可选):生成ID的前缀(书签、脚注、尾注)includeDefaultStyleMap(boolean,可选):是否包含默认样式映射(默认值:true)includeEmbeddedStyleMap(boolean,可选):是否包含文档中的嵌入式样式映射(默认值:true)
例子:
{
"filePath": "/path/to/document.docx",
"styleMap": "p[style-name='Heading 1'] => # "
}运作原理
此MCP服务器使用mammath.js将DOCX文档转换为干净的语义HTML或Markdown。转换保留了:
- 标题
- 段落
- 列表
- 表格
- 粗体/斜体/下划线格式
- 图像(使用时
with_images变体) - 自定义样式映射(通过styleMap参数)
样式映射
样式映射允许您控制Word样式如何转换为HTML/Markdown。样式图中的每一行都表示从Word样式到HTML/Markdown元素的映射。
样式图示例:
p[style-name='Section Title'] => h1:fresh
p[style-name='Subsection Title'] => h2:fresh
p[style-name='Code'] => pre:separator('\n')有关样式图的详细信息,请参见 mammath.js文档.
许可证
麻省理工学院
