Skip to main content
Glama

Milanote MCP Server and API by Cotlet

Get board

get_board
Read-onlyIdempotent

Every card on a board: notes, links, images, files, to-do lists, columns and sub-boards. Returns one entry per card with its type, ID and content, so other tools can point at it. Order is the board's: the canvas top to bottom, then the Unsorted panel (section says which). Notes come back as plain text. To-do lists list each task with its done state and due date (due_time only when one was set). Cards inside a column carry column_id; color and labels (by name) appear when a card has them. Sub-boards appear as cards with their own board_id; call get_board again to open one. Drawings, lines and tables come back with their type and ID only. include_comments adds comment threads with author, text and time.

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>"
    },
    "name": "get_board"
  }
}

Input Schema

NameRequiredDescriptionDefault
board_idYesBoard ID from list_boards, or the board URL.
include_commentsNoAlso return comment threads with their comments. Default: false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already cover the read-only/idempotent safety profile, and the description adds the behavioral details an agent actually needs: deterministic board ordering (canvas top-to-bottom, then Unsorted with a section marker), notes returned as plain text, due_time present only when set, and the important limitation that drawings, lines and tables come back with type and ID only. These are non-obvious traits that cannot be inferred from structured fields.

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

Conciseness4/5

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

Roughly 110 words, all informational, with the return shape front-loaded before the per-type field details. It is a single dense paragraph; splitting the per-card-type notes and the ordering/recursion rules would improve scanability, but there is little 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?

There is no output schema, so the description must carry the return-value burden, and it does: it enumerates entry shape, per-type payloads, ordering, conditional fields, and a documented gap (drawings/lines/tables). Combined with annotations covering safety, nothing an agent needs to call this correctly is missing.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3, but the description adds meaning beyond the schema's terse 'Also return comment threads': it specifies that comment threads include author, text and time. It also implies the board_id may be a URL via the schema, which is not restated here, so the gain is modest rather than exhaustive.

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

Purpose4/5

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

The description states precisely what is returned: every card on a board with notes, links, images, files, to-do lists, columns and sub-boards, plus a clear entry-per-card shape (type, ID, content). It doesn't distinguish itself explicitly from siblings like list_boards or search_boards, leaving the agent to infer that distinction from the schema's 'Board ID from list_boards' hint.

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?

Gives real routing guidance for the tricky case: sub-boards appear as cards with their own board_id, so 'call get_board again to open one' tells the agent how to traverse recursion. It also explains the include_comments switch. It stops short of explicit exclusions or comparisons to list_boards/search_boards, so no 5.

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.