Microsoft 的 MarkItDown MCP 服务器的 NPX 包装器 - 不需要 Docker!
此包提供了一个与 NPX 兼容的包装器,用于 Microsoft 的 markitdown-mcp,允许您无需 Docker 依赖即可运行 MarkItDown MCP 服务器。
npx -y markitdown-mcp-npx 即可开始!💡 注意:MarkItDown 对大多数文件类型(PDF、Word、Excel、基本图像)完美工作,无需可选依赖。它们仅在处理音频文件和高级图像元数据时才需要。
Windows 用户:参见 WINDOWS_SETUP.md 以轻松安装可选依赖。
# 基本 STDIO 模式(适用于 Claude Desktop)
npx -y markitdown-mcp-npx
# 测试用 HTTP 模式
npx -y markitdown-mcp-npx --http --host 127.0.0.1 --port 3001
# 显示帮助
npx -y markitdown-mcp-npx --help
# 安装全局
npm install -g markitdown-mcp-npx
# 然后直接运行
markitdown-mcp-npx
# 克隆此仓库
git clone https://github.com/xkiranj/markitdown-mcp-npx.git
cd markitdown-mcp-npx
# 本地运行
npm start
NPX 版本(推荐):
{
"mcpServers": {
"markitdown": {
"command": "npx",
"args": [
"-y",
"markitdown-mcp-npx"
]
}
}
}
带 HTTP 传输:
{
"mcpServers": {
"markitdown": {
"command": "npx",
"args": [
"-y",
"markitdown-mcp-npx",
"--http",
"--host",
"127.0.0.1",
"--port",
"3001"
]
}
}
}
全局安装:
{
"mcpServers": {
"markitdown": {
"command": "markitdown-mcp-npx",
"args": []
}
}
}
🔑 关键点:在 Claude Desktop 中使用 NPX 时,
-y标志是必需的,以防止安装提示导致服务器挂起。
| 功能 | Docker 版本 | NPX 版本 |
|---|---|---|
| 设置 | 需要 Docker | 只需 NPX(随 Node.js 提供) |
| 命令 | docker run ... | npx -y markitdown-mcp-npx |
| 依赖项 | 在容器中隔离 | 在虚拟环境中管理 |
| 性能 | 容器开销 | 直接执行 |
| 文件访问 | 需要卷挂载 | 直接文件系统访问 |
| 安装 | 需要 Docker 拉取 | 使用 NPX 零安装 |
npx -y markitdown-mcp-npx
npx -y markitdown-mcp-npx --http --host 127.0.0.1 --port 3001
npx -y markitdown-mcp-npx --http --host 0.0.0.0 --port 8080
# 测试安装并显示帮助
npx -y markitdown-mcp-npx --help
用法:markitdown-mcp-npx [选项]
选项:
--http 使用流式 HTTP 和 SSE 传输(默认:STDIO)
--sse --http 的别名(已弃用)
--host 主机 绑定到的主机(默认:127.0.0.1)
--port 端口 监听的端口(默认:3001)
--help 显示帮助信息
-y 标志跳过安装提示,实现无缝启动markitdown-mcp 及其依赖项您可以使用 MCP Inspector 来测试服务器:
# 启动检查器
npx @modelcontextprotocol/inspector
# 对于 STDIO 模式:
# - 传输:STDIO
# - 命令:npx
# - 参数:-y, markitdown-mcp-npx
# 对于 HTTP 模式:
# - 启动服务器:npx -y markitdown-mcp-npx --http
# - 传输:流式 HTTP
# - URL:http://127.0.0.1:3001/mcp
✓ 单一工具:MarkItDown MCP 提供了唯一一个名为 convert_to_markdown 的工具
✓ 通用转换器:这个单一工具处理所有文件类型:
✓ URI 参数:接受 http:、https:、file: 或 data: URI
💡 注意:在 Claude Desktop 中看到“1 个可用工具”是正确的行为!
服务器似乎在启动时挂起或超时
解决方案:确保使用 -y 标志:npx -y markitdown-mcp-npx
原因:没有 -y,NPX 会提示安装确认,在非交互式环境中如 Claude Desktop 会导致挂起。
错误:需要 Python 3.10+ 但未找到
解决方案:安装 Python 3.10+ 并确保它在您的 PATH 中
错误:无法创建虚拟环境
解决方案:检查对临时目录的写权限
错误:无法安装 markitdown-mcp
解决方案:检查互联网连接和代理设置
错误:端口 3001 已被占用
解决方案:使用不同的端口 --port <数字>
错误:找不到或过时的包
解决方案:清除 NPX 缓存 npx clear-npx-cache 或使用 npx -y markitdown-mcp-npx
运行时警告:找不到 ffmpeg 或 avconv - 默认使用 ffmpeg,但可能不起作用
此警告无害! 它意味着:
解决方法:安装 FFmpeg(参见 WINDOWS_SETUP.md 以了解 Windows 安装)
markitdown-mcp-npx/
├── package.json # NPM 包配置
├── index.js # 主入口点
├── bin/
│ └── markitdown-mcp-npx.js # Node.js 可执行脚本
├── README.md # 本文档
├── WINDOWS_SETUP.md # Windows 安装指南
├── test.js # 测试套件
└── LICENSE # MIT 许可证
localhostNPX 版本自动使用最新发布的版本。要检查更新或强制重新下载:
# 清除缓存并运行最新版本
npx -y markitdown-mcp-npx
# 检查当前版本
npx -y markitdown-mcp-npx --help
这是一个 Microsoft 的 MarkItDown MCP 服务器的非官方包装器。对于核心 MarkItDown 功能的问题,请参考 原始仓库。
对于此包装器特有的问题:
✨ 准备使用了吗?只需运行:npx -y markitdown-mcp-npx
这是一个 MarkItDown MCP 的非官方包装器。要获取官方 Docker 版本,请访问 原始仓库。