搜索
首页科技周边人工智能Markitdown MCP可以将任何文档转换为Markdowns!

处理文档不再只是在您的AI项目中打开文件,而是将混乱变成清晰度。诸如PDF,PowerPoints和Word之类的文档以各种形状和大小淹没了我们的工作流程。从这些文档中检索结构化的内容已成为当今一项艰巨的任务。 Microsoft的Markitdown MCP(Markdown转换协议)简化了这一点。它将各种文件转换为结构化的标记格式。这有助于开发人员和技术作家改善文档工作流程。本文解释了Markitdown MCP并显示了其用法。我们将介绍设置MarkitDown MCP服务器,还将在此协议的上下文中讨论MarkitDown。在下面还介绍了使用标记MCP服务器进行测试。

目录

  • 什么是Markitdown MCP?
    • Markitdown MCP的主要特征
  • 降级在工作流程中的作用
  • 设置Markitdown MCP服务器进行集成
    • 安装
    • 服务器配置
  • 用标记MCP转换的降价转换
    • 步骤1:首先导入必要的库。
    • 步骤2:初始化Groq LLM,这是免费的。您可以在这里找到API键
    • 步骤3:配置MCP服务器
    • 步骤4:现在,定义异步功能
    • 步骤5:此代码调用run_conversion函数
  • LLM管道中的实际用例
  • 结论
  • 常见问题

什么是Markitdown MCP?

Markitdown MCP提供了用于文档转换的标准方法。它充当服务器端协议。它在后端使用Microsoft的Markitdown库。服务器托管一个静止的API。用户将诸如PDF或Word文件之类的文档发送到此服务器。然后,服务器处理这些文件。它使用高级解析和特定格式规则。输出是保留原始文档结构的标记文本。

Markitdown MCP的主要特征

Markitdown MCP服务器包含几个有用的功能:

  • 宽格式支持:它将PDF,DOCX和PPTX(例如PPTX)等通用文件转换为Markdown。
  • 结构保存:它使用方法来理解和维护文档布局,例如标题和列表。
  • 可配置的输出:用户可以调整设置以控制最终的标记样式。
  • 服务器操作:它作为服务器过程运行。这允许集成到自动化系统和云设置中。

降级在工作流程中的作用

Markdown是文档的流行格式。它的简单语法使读写易于读写。像GitHub这样的许多平台都很好地支持了它。静态站点发生器经常使用它。将其他格式转换为手动花费时间。 Markitdown MCP自动进行此转换。这提供了明显的好处:

  • 有效的内容处理:将源文档转换为可用的降价。
  • 一致的协作:标准格式可帮助团队一起在文档上共同努力。
  • 流程自动化:在较大的自动化工作流程中包括文档转换。

设置Markitdown MCP服务器进行集成

我们可以使用GitHub Repo中提到的Docker Image(例如Claude,Windsurf,Cursor)等不同客户端设置Markitdown MCP服务器。但是在这里,我们将使用Langchain的MCP适配器创建本地MCP客户端。我们需要运行服务器将其与Langchain一起使用。服务器支持不同的运行模式。

安装

首先,安装所需的Python软件包。

 PIP安装MarkitDown-MCP langchain langchain_mcp_adapters langgraph langchain_groq

服务器配置

使用STDIO模式运行标记MCP服务器。此模式连接标准输入和输出流。它适用于基于脚本的集成。直接在终端运行以下内容。

 Markitdown-MCP

服务器将开始运行一些警告。

Markitdown MCP可以将任何文档转换为Markdowns!

我们还可以使用SSE(服务器范围事件)模式。此模式适合Web应用程序或长期运行的连接。设置标记MCP服务器以测试特定方案时也很有用。

 MarkitDown-MCP  -  -SSE--host 127.0.0.1-港口3001

选择适合您集成计划的模式。使用服务器通过STDIO本地测试通常是一个良好的开始。我们建议在本文中使用STDIO模式。

用标记MCP转换的降价转换

我们已经介绍了如何使用Langchain在我们以前的博客MCP客户端服务器中使用Langchain在本地建立MCP服务器和客户端设置的方法。

现在,本节显示了如何与Markitdown MCP服务器一起使用Langchain。它可以自动化PDF文件转换为Markdown。该示例通过Chatgroq采用了Groq的Llama模型。确保将GROQ API密钥设置为环境变量,或将其直接传递给Chatgroq。

步骤1:首先导入必要的库。

来自MCP Import客户端,StdioServerParameters
来自mcp.client.stdio import stdio_client
来自langchain_mcp_adapters.tools import load_mcp_tools
来自langgraph.prebuilt导入create_react_agent
导入异步
来自langchain_groq导入changroq

步骤2:初始化Groq LLM,这是免费的。您可以在这里找到API键

这是GROQ API密钥:GROQ API键

#初始化groq型号
model = chatgroq(model =“ meta-llama/llama-4-scout-17b-16e-Instruct”,api_key =“ your_api_key”)

步骤3:配置MCP服务器

我们正在使用stdioserverparameters,并在此处直接使用已安装的标记MCP软件包

server_params = stdioserverparameters(
命令=“ MarkitDown-MCP”,
args = []#STDIO模式不需要其他参数
)

步骤4:现在,定义异步功能

当输入时,这将采用PDF路径,客户端开始通信。 load_mcp_tools提供了与Markitdown MCP相互作用的功能。然后创建一个反应代理,使用模型和MCP工具。该代码为PDF创建File_uri,并发送提示,要求代理使用MCP转换文件。

异步def run_conversion(pdf_path:str):
与stdio_client(server_params)AS(读,写)的异步:
与客户端的异步(读,写)作为会话:

等待session.initialize()
打印(“初始化MCP会话。”)

#加载可用工具
工具=等待LOAD_MCP_TOOLS(会话)
打印(f“已加载工具:{[工具中的工具名称]工具中的工具]}”)

#创建反应代理
agent = create_reaeact_agent(型号,工具)
打印(“创建的反应代理。”)

#准备文件URI(将本地路径转换为file:// uri)
file_uri = f“ file:// {pdf_path}”
#通过转换请求调用代理
响应=等待代理。AINVOKE({{

“消息”:[(“用户”,f“使用MarkitDown MCP将{file_uri}转换为标记,只需返回MCP服务器的输出)]

}))

#返回最后一条消息内容
返回响应[“消息”] [ -  1] .content

步骤5:此代码调用run_conversion函数

我们正在呼吁和提取响应中的降价。它将内容保存到pdf.md,最后将输出打印在终端中。

如果__name__ ==“ __ -main __”:

pdf_path =“/home/home/harsh/downloads/llm评估.pptx.pdf”#使用绝对路径
结果= asyncio.run(run_conversion(pdf_path))

以F:f的开放(“ pdf.md”,'w')
F.Write(结果)

打印(“ \ nmarkDown转换结果:”)
打印(结果)

输出

Markitdown MCP可以将任何文档转换为Markdowns!

完整代码

来自MCP Import客户端,StdioServerParameters
来自mcp.client.stdio import stdio_client

来自langchain_mcp_adapters.tools import load_mcp_tools
来自langgraph.prebuilt导入create_react_agent

导入异步
来自langchain_groq导入changroq
#初始化groq型号
model = changroq(model =“ meta-llama/llama-4-scout-17b-16e-Instruct”,api_key =“”)
#配置MCP服务器
server_params = stdioserverparameters(

命令=“ MarkitDown-MCP”,
args = []#STDIO模式不需要其他参数

)

异步def run_conversion(pdf_path:str):
与stdio_client(server_params)AS(读,写)的异步:

与客户端的异步(读,写)作为会话:
等待session.initialize()

打印(“初始化MCP会话。”)
#加载可用工具
工具=等待LOAD_MCP_TOOLS(会话)

打印(f“已加载工具:{[工具中的工具名称]工具中的工具]}”)
#创建反应代理

agent = create_reaeact_agent(型号,工具)
打印(“创建的反应代理。”)

#准备文件URI(将本地路径转换为file:// uri)

file_uri = f“ file:// {pdf_path}”
#通过转换请求调用代理
响应=等待代理。AINVOKE({{

“消息”:[(“用户”,f“使用MarkitDown MCP将{file_uri}转换为标记,只是从MCP服务器中撤回输出”)]

}))

#返回最后一条消息内容
返回响应[“消息”] [ -  1] .content

如果__name__ ==“ __ -main __”:
pdf_path =“/home/harsh/harsh/downloads/llm评估.pdf”#使用绝对路径

结果= asyncio.run(run_conversion(pdf_path))
以F:f的开放(“ pdf.md”,'w')

F.Write(结果)
打印(“ \ nmarkDown转换结果:”)
打印(结果)

检查输出

脚本生成一个pdf.md文件。该文件包含输入PDF的降价版本。转换质量取决于原始文档的结构。 Markitdown MCP通常保留元素,例如:

  • 标题(不同级别)
  • 段落文字
  • 列表(子弹和编号)
  • 表(转换为Markdown语法)
  • 代码块

输出

Markitdown MCP可以将任何文档转换为Markdowns!

在输出中,我们可以看到它成功地检索了标题,内容以及降价格式的普通文本。

因此,运行本地服务器进行测试有助于评估不同的文档类型。

也观看:

LLM管道中的实际用例

集成标记MCP可以改善几个AI工作流程:

  • 知识基础建设:将文档转换为降价。将此内容摄入知识库或抹布系统。
  • LLM内容准备:将源文件转换为Markdown。为LLM摘要或分析任务准备一致的输入。
  • 文档数据提取:将带有表的文档转换为Markdown。这简化了解析结构化数据。
  • 文档自动化:生成技术手册。将源文件(例如Word文档)转换为静态站点生成器的Markdown。

结论

Markitdown MCP提供了一种基于服务器的功能,用于文档转换的方法。它处理多种格式。它产生结构化的降价输出。将其与LLMS集成可以使文档处理任务的自动化。这种方法支持可扩展的文档实践。使用服务器进行测试使评估直接。通过其在这些工作流程中的实际应用,最好理解MAKITDOWN的MCP。

探索Markitdown MCP GitHub存储库以获取更多信息。

常见问题

Q1。 Markitdown MCP的主要功能是什么?

Ans。 Markitdown MCP将PDF和Word文件等文档转换为结构化标记。它为此任务使用基于服务器的协议。

Q2。标记MCP服务器可以处理哪些文件格式?

Ans。服务器处理PDF,DOCX,PPTX和HTML文件。其他格式可以根据核心库支持。

Q3。 Langchain如何使用Markitdown MCP?

Ans。 Langchain使用特殊工具与服务器进行通信。然后,代理可以通过此服务器请求文档转换。

Q4。 Markitdown MCP开源吗?

Ans。是的,它是Microsoft的开源软件。用户负责任何服务器托管成本。

Q5。我可以运行标记MCP服务器以进行测试吗?

Ans。是的,用于测试的服务器可以在本地运行。使用STDIO或SSE模式进行开发和评估。

以上是Markitdown MCP可以将任何文档转换为Markdowns!的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
AI内部部署的隐藏危险:治理差距和灾难性风险AI内部部署的隐藏危险:治理差距和灾难性风险Apr 28, 2025 am 11:12 AM

Apollo Research的一份新报告显示,先进的AI系统的不受检查的内部部署构成了重大风险。 在大型人工智能公司中缺乏监督,普遍存在,允许潜在的灾难性结果

构建AI测谎仪构建AI测谎仪Apr 28, 2025 am 11:11 AM

传统测谎仪已经过时了。依靠腕带连接的指针,打印出受试者生命体征和身体反应的测谎仪,在识破谎言方面并不精确。这就是为什么测谎结果通常不被法庭采纳的原因,尽管它曾导致许多无辜者入狱。 相比之下,人工智能是一个强大的数据引擎,其工作原理是全方位观察。这意味着科学家可以通过多种途径将人工智能应用于寻求真相的应用中。 一种方法是像测谎仪一样分析被审问者的生命体征反应,但采用更详细、更精确的比较分析。 另一种方法是利用语言标记来分析人们实际所说的话,并运用逻辑和推理。 俗话说,一个谎言会滋生另一个谎言,最终

AI是否已清除航空航天行业的起飞?AI是否已清除航空航天行业的起飞?Apr 28, 2025 am 11:10 AM

航空航天业是创新的先驱,它利用AI应对其最复杂的挑战。 现代航空的越来越复杂性需要AI的自动化和实时智能功能,以提高安全性,降低操作

观看北京的春季机器人比赛观看北京的春季机器人比赛Apr 28, 2025 am 11:09 AM

机器人技术的飞速发展为我们带来了一个引人入胜的案例研究。 来自Noetix的N2机器人重达40多磅,身高3英尺,据说可以后空翻。Unitree公司推出的G1机器人重量约为N2的两倍,身高约4英尺。比赛中还有许多体型更小的类人机器人参赛,甚至还有一款由风扇驱动前进的机器人。 数据解读 这场半程马拉松吸引了超过12,000名观众,但只有21台类人机器人参赛。尽管政府指出参赛机器人赛前进行了“强化训练”,但并非所有机器人均完成了全程比赛。 冠军——由北京类人机器人创新中心研发的Tiangong Ult

镜子陷阱:人工智能伦理和人类想象力的崩溃镜子陷阱:人工智能伦理和人类想象力的崩溃Apr 28, 2025 am 11:08 AM

人工智能以目前的形式并不是真正智能的。它擅长模仿和完善现有数据。 我们不是在创造人工智能,而是人工推断 - 处理信息的机器,而人类则

新的Google泄漏揭示了方便的Google照片功能更新新的Google泄漏揭示了方便的Google照片功能更新Apr 28, 2025 am 11:07 AM

一份报告发现,在谷歌相册Android版7.26版本的代码中隐藏了一个更新的界面,每次查看照片时,都会在屏幕底部显示一行新检测到的面孔缩略图。 新的面部缩略图缺少姓名标签,所以我怀疑您需要单独点击它们才能查看有关每个检测到的人员的更多信息。就目前而言,此功能除了谷歌相册已在您的图像中找到这些人之外,不提供任何其他信息。 此功能尚未上线,因此我们不知道谷歌将如何准确地使用它。谷歌可以使用缩略图来加快查找所选人员的更多照片的速度,或者可能用于其他目的,例如选择要编辑的个人。我们拭目以待。 就目前而言

加固芬特的指南 - 分析Vidhya加固芬特的指南 - 分析VidhyaApr 28, 2025 am 09:30 AM

增强者通过教授模型根据人类反馈进行调整来震撼AI的开发。它将监督的学习基金会与基于奖励的更新融合在一起,使其更安全,更准确,真正地帮助

让我们跳舞:结构化运动以微调我们的人类神经网让我们跳舞:结构化运动以微调我们的人类神经网Apr 27, 2025 am 11:09 AM

科学家已经广泛研究了人类和更简单的神经网络(如秀丽隐杆线虫中的神经网络),以了解其功能。 但是,出现了一个关键问题:我们如何使自己的神经网络与新颖的AI一起有效地工作

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中