Skip to main content
Glama

Milanote MCP Server and API by Cotlet

Export board

export_board
Read-onlyIdempotent

Export a board as Markdown, plain text, Word, PDF or PNG, as the Export menu does. Runs Milanote's own export of one board. markdown and plain_text return the text in content; word, pdf and png return only file_url. Text formats follow the board's reading order and leave out comments and sub-board contents; pdf and png are a picture of the canvas. Anyone with file_url can download the file, and Milanote deletes it after about a day.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "board_id": "<board_id>",
      "format": "<format>"
    },
    "name": "export_board"
  }
}

Input Schema

NameRequiredDescriptionDefault
formatYesmarkdown, plain_text, word, pdf or png.
board_idYesBoard ID from list_boards, or the board URL.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only say readOnly/idempotent/non-destructive; the description adds the materially important side effect that a publicly downloadable file_url is created and deleted after about a day. It also discloses what is omitted from text exports (comments, sub-board contents) and that pdf/png render the canvas as a picture.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The capability and format list come first, followed by output shape, then the limitations and privacy/expiry caveat. Dense but every clause carries an operational fact with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With only two parameters and no output schema, the description fully compensates by explaining both return channels (content vs file_url), the export's scope limits, and the file's lifetime and accessibility. Nothing an agent needs before calling is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, yet the description still adds behavior per format value: markdown and plain_text populate content, while word, pdf and png return only file_url. That is decision-relevant information the enum alone does not convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Export a board') and enumerates the exact five formats produced, plus the mapping to Milanote's own Export menu. This is clearly distinguishable from get_board or duplicate_board among the siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'as the Export menu does' and 'Runs Milanote's own export of one board' anchor when this applies, and the format breakdown implies which variant to pick. It never explicitly contrasts with get_board for plain reading, so it stops short of full when/when-not routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.