Ask your agent to write the report as Markdown, then to convert that file to PDF and DOCX. With the GroupDocs.Conversion.Mcp server, Claude, Cursor or GitHub Copilot do both steps in one conversation, locally, and the second step runs through a layout engine, not a browser:
Write the release summary to summary.md, then convert it to PDF and Word.
The step-by-step version with config and troubleshooting is in the documentation: How to export Markdown to PDF or Word with an MCP server.
Why does AI-written content need an export step?
Agents write Markdown natively. The people who receive the result usually do not want Markdown: a client expects a PDF, a colleague expects a Word file they can edit and comment on. Closing that gap has meant a headless browser printing HTML, a LaTeX toolchain, or pasting into a word processor by hand. Each adds a dependency to maintain or a manual step to repeat every week.
An MCP conversion server removes the dependency. The agent already holds the Markdown, so it writes it to a file and asks the engine to convert that file.
What does the delivery workflow look like?
Follow these steps for any recurring document, such as a weekly status report, a meeting summary or a release note.
-
Point the server at a delivery folder. Set
GROUPDOCS_MCP_STORAGE_PATHto a folder the agent can write into and convert from. Optionally setGROUPDOCS_MCP_OUTPUT_PATHto keep finished files apart from drafts. -
Give the agent the source material. Paste notes, or tell it which files to summarize.
-
Ask for the Markdown file by name.
Write this week’s summary to status.md.
-
Ask for the exports.
Convert status.md to PDF, and also to DOCX.
Typically the agent calls
convertonce for each target, withformat: "pdf"and thenformat: "docx". -
Review the output in the folder. The reply names each saved file.
-
Re-run next week. The server does not replace earlier exports, so last week’s files stay intact and the new ones get distinct names.
| Step | The agent decides | The engine does |
|---|---|---|
| Content | What the summary says and how it is headed | Nothing |
| File name and formats | status.md, then PDF and DOCX |
Nothing |
| Rendering | Calls convert with format set |
Lays out tables, lists and code blocks |
| Result | Reads the saved file name from the reply | Writes a native PDF and a native DOCX |
What does the engine do that a browser print does not?
Markdown to PDF is hard at the edges: multi-page tables, nested lists, code blocks, images and page breaks. A browser print pipeline approximates a page layout. The GroupDocs.Conversion engine typesets it and is the same rendering used in enterprise document workflows. Output comes in both formats from one source. The DOCX is a native, editable Word document with styles for headings, lists and tables, not an embedded image of a page.
How do you set it up?
Register the server once in Claude Desktop, Claude Code, Cursor or VS Code with GitHub Copilot; the config file for each client is listed in the docs hub. The entry below is the Claude Desktop form.
{
"mcpServers": {
"groupdocs-conversion": {
"type": "stdio",
"command": "dnx",
"args": ["GroupDocs.Conversion.Mcp", "--yes"],
"env": {
"GROUPDOCS_MCP_STORAGE_PATH": "/path/to/reports",
"GROUPDOCS_MCP_OUTPUT_PATH": "/path/to/reports/delivered"
}
}
}
}
dnx needs the .NET 10 SDK. A Docker image is also available: ghcr.io/groupdocs-conversion/conversion-net-mcp:latest. Restart your client after registering.
Other prompts that work:
Convert meeting-notes.md to DOCX so the team can edit it.
Export this Markdown report as both PDF and Word.
Example session
This is an abridged, illustrative session built from the documented behavior of the convert tool, not a screenshot.
You: Write the release summary to summary.md, then convert it to PDF.
Agent: [writes summary.md to the storage folder]
Agent: [calls convert with file.filePath = "summary.md", format = "pdf"]
Agent: Done. The PDF is saved as summary.pdf in your output folder.
What if the delivery must run without a chat?
A chat session is the wrong trigger for a job that must run every Friday at 17:00. The same engine is available as a library for .NET, and the n8n walkthrough shows an automation tool calling the server instead of a person typing. Use the chat workflow when a human reviews each report, and the scripted one when nobody should have to.
What are the limits?
- Evaluation mode. Without a license, converted output carries an evaluation watermark, so a report delivered to a client needs a license first. One server process also opens at most 15 documents. Ask “what is the license status of the conversion server?” to run
get_license_statusbefore the first real delivery. - No review of the content. The engine formats what it receives. If the agent wrote something wrong, the PDF will contain it, so check the Markdown for facts before you export.
- Check your hardest layout first. Export one real report with your widest table and your longest code block before you automate the weekly run.
FAQ
Can Claude save its own answer as a PDF?
Yes. Ask it to write the answer to a .md file in your storage folder, then convert that file. That is two tool calls from one prompt.
Does Markdown to DOCX produce a real Word document? Yes. The output is a native, editable DOCX, not a picture of the page.
Do I need a headless browser or LaTeX to export Markdown to PDF? No. The conversion runs through the GroupDocs.Conversion engine on your machine, so neither is required.
Go deeper
- Documentation, canonical how-to: How to export Markdown to PDF or Word with an MCP server
- Documentation hub: GroupDocs.Conversion MCP Server
- Start here: Why your AI agent should not convert documents by itself
- Related: 3 ways to turn PDFs into LLM-ready Markdown (and why local wins)
- Related: A whole folder, one prompt: batch conversion with Claude and MCP
- Announcement: Your AI Agent Can Now Convert Documents — Locally. Introducing GroupDocs.Conversion MCP
- On-premise and security model: 3 architectures for AI document processing, and the one that keeps files inside your network
- Questions: GroupDocs Conversion forum
- Source: GroupDocs.Conversion.Mcp on GitHub