Markdown转换服务

MarkItDown-MCP是一个轻量级的Markdown转换服务,支持通过STDIO、Streamable HTTP和SSE协议调用,适用于将各种URI资源转换为Markdown格式。

  • by microsoft
  • Python
  • 本地部署
  • 7.9万 星标
  • 更新于
在 GitHub 查看 microsoft/markitdown

使用说明

MarkItDown MCP

这 markitdown-mcp 该包提供了一个轻量级的STDIO、流式HTTP和SSE MCP服务器,用于调用MarkItDown。

它公开了一个工具: convert_to_markdown(uri),其中uri可以是任何 http:, https:, file:,或 data: URI。

安装

要安装该软件包,请使用pip:

pip install markitdown-mcp

用法

要运行MCP服务器,请使用STDIO(默认)使用以下命令:

markitdown-mcp

要运行MCP服务器,请使用Streamable HTTP和SSE使用以下命令:

markitdown-mcp --http --host 127.0.0.1 --port 3001

在Docker中运行

运行 markitdown-mcp 在Docker中,使用提供的Dockerfile构建Docker镜像:

docker build -t markitdown-mcp:latest .

并使用以下命令运行它:

docker run -it --rm markitdown-mcp:latest

这对于远程URI就足够了。要访问本地文件,您需要将本地目录挂载到容器中。例如,如果您想访问中的文件 /home/user/data,您可以运行:

docker run -it --rm -v /home/user/data:/workdir markitdown-mcp:latest

装载后,数据下的所有文件都可以在以下位置访问 /workdir 在容器中。例如,如果您有一个文件 example.txt 在……里面 /home/user/data,它将在集装箱内 /workdir/example.txt.

从克劳德桌面访问

建议在运行Claude Desktop的MCP服务器时使用Docker镜像。

跟随 这些说明 访问克劳德的 claude_desktop_config.json 文件。

编辑它以包含以下JSON条目:

{
  "mcpServers": {
    "markitdown": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "markitdown-mcp:latest"
      ]
    }
  }
}

如果你想挂载一个目录,请相应地调整它:

{
  "mcpServers": {
    "markitdown": {
      "command": "docker",
      "args": [
	"run",
	"--rm",
	"-i",
	"-v",
	"/home/user/data:/workdir",
	"markitdown-mcp:latest"
      ]
    }
  }
}

调试

要调试MCP服务器,您可以使用 mcpinspector 工具。

npx @modelcontextprotocol/inspector

然后,您可以通过指定的主机和端口连接到检查器(例如。, http://localhost:5173/).

如果使用STDIO:

  • 选择 STDIO 作为运输类型,
  • 输入 markitdown-mcp 作为命令,以及
  • 点击 Connect

如果使用 Streamable HTTP:

  • 选择 Streamable HTTP 作为运输类型,
  • 输入 http://127.0.0.1:3001/mcp 作为URL,以及
  • 点击 Connect

如果使用SSE:

  • 选择 SSE 作为运输类型,
  • 输入 http://127.0.0.1:3001/sse 作为URL,以及
  • 点击 Connect

最后:

  • 单击 Tools 选项卡,
  • 点击 List Tools,
  • 点击 convert_to_markdown,以及
  • 在任何有效的URI上运行该工具。

安全考虑

服务器不支持身份验证,并以运行它的用户的权限运行。因此,在SSE或Streamable HTTP模式下运行时,建议运行绑定到的服务器 localhost (默认)。

商标

此项目可能包含项目、产品或服务的商标或徽标。授权使用Microsoft 商标或徽标必须遵守 微软商标和品牌指南. 在本项目的修改版本中使用Microsoft商标或徽标不得造成混淆或暗示Microsoft赞助。 任何使用第三方商标或徽标的行为均受这些第三方政策的约束。