SharePoint Markdown 转 PDF:用 Agents 和 Flow Studio MCP 做一次极限测试
📢 本文同步发布於公众号:Power Platform · 最佳实践
🔗 原文链接:https://johnliu.net/blog/sharepoint-markdown-to-pdf-limit-test-with-agents-flow-studio-mcp/
SharePoint Markdown 转 PDF:用 Agents 和 Flow Studio MCP 做一次极限测试
更新:我写了一篇后续文章,包含完整可用的配置方案和兼容性结果:用 Power Automate 将 Markdown 转换为 PDF。
Microsoft 宣布 SharePoint 和 OneDrive 原生支持 Markdown 了。
这对人类来说很有意思,但对 agents 来说,意义更大。
于是我戴上 Flow Ninja 的帽子,让我的 agent——今天用的是 Codex——来对这个功能做一次极限测试。
当然,是通过 flow,走我们的 Flow Studio MCP。
Microsoft 说 Markdown 是 OneDrive 和 SharePoint 中的一等文件格式
我要你写一个 flow 创建一个 Markdown 文件并保存到站点,可以用默认文档库 然后尝试把这个 Markdown 文件转换成 PDF 或 DOC
测试是刻意贴近实际的:
第一次尝试:SharePoint HTTP
Codex 创建了一个 flow:
完成了。我创建并启动了以下 flow:
MCP Demo - Markdown SharePoint Convert Test
https://johnliu365.sharepoint.com/
我用 markdown-conversion-smoke-test.md 触发了它。
markdown-conversion-smoke-test.md
- Markdown 文件创建:成功
- 创建的文件媒体类型:
text/markdown - PDF 转换尝试:失败,但 SharePoint 返回了 HTTP 302,说明 PDF 转换端点会重定向到一个生成的内容流。Power Automate 的 SharePoint HTTP 操作把这个重定向当作失败处理,没有暴露或保存 PDF 内容体。
- DOCX 转换尝试:失败,HTTP 406,说明该端点不接受将 Markdown 转换为 DOCX。
所以第一个发现是:
SharePoint 接受 Markdown 作为一等存储文件,但标准 SharePoint 连接器路径无法直接将其保存为 PDF 或 DOCX。
PDF 看起来非常接近成功,因为有那个 302。转换并没有真正失败;只是连接器没有以有用的方式暴露重定向后的内容流。
DOCX 看起来则是不支持的。
我问 Codex 要了 flow 的 URL:
https://make.powerautomate.com/environments/[redacted]/flows/[redacted]/details
https://make.powerautomate.com/environments/[redacted]/flows/[redacted]/details
Flow 名称:MCP Demo - Markdown SharePoint Convert Test
第一个 flow 很有价值,因为它展示了问题的轮廓。
Markdown 文件本身没问题。
转换路径才是有意思的部分。
第二次尝试:跟随 302 重定向
你能试试用 Office 365 Send HTTP request 来转换并跟随 302 吗?
Codex 给出了更好的答案:
这次运行了 4 分 16 秒,成功了。
我更新/创建了这个 flow:
https://make.powerautomate.com/environments/[redacted]/flows/[redacted]/details
https://make.powerautomate.com/environments/[redacted]/flows/[redacted]/details
/drive/root:/markdown-conversion-smoke-test.md:/content?format=pdf
markdown-conversion-smoke-test-office365-http.pdf
所以我们有了一种生成 PDF 的新方法。真不错。
Markdown 文件创建成功了。
SharePoint 将其存储为:
Graph 转 PDF 成功了,因为 flow 使用了一个能看到 Location 头并跟随重定向的 HTTP 操作。
最终的 PDF 成功保存回了 SharePoint。
这意味着我们可以从 agent 创建 Markdown、存储它……


