Milanote logo

Milanote automation

Export a Milanote board to Markdown with AI

The outline, the brief or the research lives on a Milanote board with a sub-board per chapter or per client. Getting it into a repo, a manuscript or a backup folder means opening each board and clicking Export, one at a time.

Cotlet does it in your own Milanote account with list_boards, get_board and export_board, called by your AI agent, an n8n workflow or a script.

Hosted · nothing to install or maintain

Official options

Can Milanote do this on its own?

Milanote has no API to export boards (checked 12 Oct 2026). The Export button on each board produces PDF, PNG, Word, Markdown or Plain text, and Generate ZIP collects the board's images and files. Your Home board cannot be exported at all, and there is no scheduled export, no export of a whole workspace and no way to start an export from code.

By hand

How you do it in Milanote today

  1. Open the board in Milanote and click Export at the top right of the board.
  2. Pick a format from the Milanote Export menu: PDF Standard, PDF Large, PNG, Word, Markdown or Plain text; the file downloads once the export has processed.
  3. Open each sub-board and export it the same way, because the Milanote help center describes export for one board at a time and says nothing about including nested boards.
  4. For the images and files on a board, choose Generate ZIP in the same Export menu; on a board with many large files Milanote emails you when the ZIP is ready.
  5. Rename and move every download into the right folder by hand, and repeat the whole round whenever the board changes.

With an agent

How to export a Milanote board to Markdown with AI

Prompt

Export my Novel outline board and each of its chapter sub-boards as Markdown into ./outline, one file per board.
  1. 01

    Map the tree before exporting

    The agent finds the board with list_boards, then reads it with get_board to collect the sub-board cards inside. It asks whether you want only the top board or every level below it, and how deep to go.

  2. 02

    Handle the Home board

    If you name your Home board, the agent does not try, since Milanote refuses that export. It exports the boards that sit on Home instead and tells you which ones it covered.

  3. 03

    Pick the format by destination

    Markdown for a repo or a static site, Word for a client or an editor, Plain text for search or an AI prompt. For a large board it warns that PDF and PNG are squeezed onto a single page and suggests Word instead.

  4. 04

    One file per board, stable names

    Each export_board call becomes its own file named after the board, with sub-boards in folders that follow the nesting. A second run overwrites the same paths, so a git diff shows what changed on the board since last time.

  5. 05

    Flag the files separately

    Generate ZIP is a separate action in Milanote's Export menu for a board's images and files. The agent lists the boards that hold images or files and points you to Generate ZIP for those originals.

What you get back

Example data

Exported 7 boards from Novel outline as Markdown into ./outline.
outline/novel-outline.md (top board, 41 cards).
outline/act-one/ch-01-the-letter.md to ch-04-the-ferry.md.
outline/research.md, which holds 12 images: use Generate ZIP in Milanote for those.
Skipped: none. Home was not requested.

Other ways to ask

  • Every Friday at 6 pm, export every board inside Clients as Markdown into backups/milanote/ with today's date in the folder name.
  • Export the Q1 campaign brief as a Word file for the client, just that board, no sub-boards.
  • Give me the Plain text of the Research board so I can paste it into a prompt.

Before you automate it

What Milanote allows, and what to know first

  • Milanote does not allow exporting a Home board; its help center suggests copying the items into a new board and exporting that.
  • Milanote PDF and PNG exports are limited to a single page, so a large board comes out small, while a Word export stacks the content over several pages.
  • Milanote's Generate ZIP downloads all images and files from a board, and for boards with many large files Milanote emails you when the ZIP is ready.
  • Milanote's help center says an empty export is usually caused by an ad blocker or a similar browser extension.

Every tool here only reads, so it can run on a schedule from n8n, Make, Zapier or cron without waiting for your OK.

Sources: Milanote Help: Exporting your work · Milanote Help: Nesting boards · Milanote Help: What happens if I cancel or downgrade

REST

Call export_board from a script

curl

curl https://cotlet.dev/api/v1/milanote/export_board \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"board_id":"b_2Xn9Dc","format":"markdown"}'

Example response

{
  "board_id": "b_2Xn9Dc",
  "format": "markdown",
  "content": "# Novel outline\n\n## Act one\n\n- Maya finds the letter\n- The ferry leaves without her\n"
}

MCP: add https://cotlet.dev/mcp/v1 with the same key; the tool is milanote_export_board. Example data.

Schedule it in n8n, Make, Zapier or cron

Tools

Milanote tools this automation uses

Cotlet Milanote tools used to export a Milanote board to Markdown with AI
Tool Parameters
list_boards parent_board_id, limit
get_board board_id, include_comments
export_board board_id, format
All 11 Milanote tools with descriptions

Frequently asked questions

Does a Markdown export include what is on the sub-boards?

Milanote's help center does not say. That is why the agent exports each sub-board as its own file instead of relying on the parent export.

Can I still export after going back to the free plan?

Yes. Milanote says that after a downgrade you can still view, edit or export anything you already added; the only thing you lose is adding more cards.

Give your agent access to Milanote.

Free 7-day trial with 5,000 credits, no card needed. Cotlet is independent and not affiliated with Milanote.