trello · Capability
Trello REST API — Boards
Trello REST API — Boards. 17 operations. Lead operation: Create a Board. Self-contained Naftiko capability covering one Trello business surface.
What You Can Do
POST
Createboard
— Create a Board
/v1/boards
GET
Getboard
— Get a Board
/v1/boards/{id}
PUT
Updateboard
— Update a Board
/v1/boards/{id}
DELETE
Deleteboard
— Delete a Board
/v1/boards/{id}
GET
Getboardactions
— Get Actions for a Board
/v1/boards/{id}/actions
GET
Getboardcards
— Get Cards on a Board
/v1/boards/{id}/cards
GET
Getboardcardsfilter
— Get Filtered Cards on a Board
/v1/boards/{id}/cards/{filter}
GET
Getboardchecklists
— Get Checklists on a Board
/v1/boards/{id}/checklists
GET
Getboardlabels
— Get Labels on a Board
/v1/boards/{id}/labels
POST
Createboardlabel
— Create a Label on a Board
/v1/boards/{id}/labels
GET
Getboardlists
— Get Lists on a Board
/v1/boards/{id}/lists
POST
Createboardlist
— Create a List on a Board
/v1/boards/{id}/lists
GET
Getboardmembers
— Get Members of a Board
/v1/boards/{id}/members
PUT
Inviteboardmember
— Invite a Member to a Board
/v1/boards/{id}/members
PUT
Updateboardmember
— Update a Board Member
/v1/boards/{id}/members/{idmember}
DELETE
Removeboardmember
— Remove a Member from a Board
/v1/boards/{id}/members/{idmember}
GET
Getboardmemberships
— Get Memberships of a Board
/v1/boards/{id}/memberships
MCP Tools
create-board
Create a Board
get-board
Get a Board
read-only
idempotent
update-board
Update a Board
idempotent
delete-board
Delete a Board
idempotent
get-actions-board
Get Actions for a Board
read-only
idempotent
get-cards-board
Get Cards on a Board
read-only
idempotent
get-filtered-cards-board
Get Filtered Cards on a Board
read-only
idempotent
get-checklists-board
Get Checklists on a Board
read-only
idempotent
get-labels-board
Get Labels on a Board
read-only
idempotent
create-label-board
Create a Label on a Board
get-lists-board
Get Lists on a Board
read-only
idempotent
create-list-board
Create a List on a Board
read-only
get-members-board
Get Members of a Board
read-only
idempotent
invite-member-board
Invite a Member to a Board
idempotent
update-board-member
Update a Board Member
idempotent
remove-member-board
Remove a Member from a Board
idempotent
get-memberships-board
Get Memberships of a Board
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Trello REST API — Boards
description: 'Trello REST API — Boards. 17 operations. Lead operation: Create a Board. Self-contained Naftiko capability
covering one Trello business surface.'
tags:
- Trello
- Boards
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
TRELLO_API_KEY: TRELLO_API_KEY
capability:
consumes:
- type: http
namespace: rest-boards
baseUri: https://api.trello.com/1
description: Trello REST API — Boards business capability. Self-contained, no shared references.
resources:
- name: boards
path: /boards
operations:
- name: createboard
method: POST
description: Create a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: query
type: string
description: The name for the new board.
required: true
- name: defaultLabels
in: query
type: boolean
description: Whether to apply the default set of labels to the board.
- name: defaultLists
in: query
type: boolean
description: Whether to add the default set of lists to the board.
- name: desc
in: query
type: string
description: A description for the board.
- name: idOrganization
in: query
type: string
description: The ID or name of the organization (workspace) the board should belong to.
- name: idBoardSource
in: query
type: string
description: The ID of a board to copy into the new board.
- name: prefs_permissionLevel
in: query
type: string
description: The permissions level of the board.
- name: prefs_voting
in: query
type: string
description: Who can vote on the board.
- name: prefs_comments
in: query
type: string
description: Who can comment on cards on the board.
- name: prefs_background
in: query
type: string
description: The background color or image for the board.
- name: prefs_cardAging
in: query
type: string
description: The style of card aging to apply to the board.
- name: prefs_selfJoin
in: query
type: boolean
description: Whether workspace members can join the board themselves.
- name: boards-id
path: /boards/{id}
operations:
- name: getboard
method: GET
description: Get a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: actions
in: query
type: string
description: A comma-separated list of action types to include.
- name: boardStars
in: query
type: string
description: Whether to include board stars.
- name: cards
in: query
type: string
description: Filter cards to include.
- name: card_fields
in: query
type: string
description: A comma-separated list of card fields to include.
- name: checklists
in: query
type: string
description: Whether to include checklists.
- name: fields
in: query
type: string
description: A comma-separated list of board fields to include.
- name: labels
in: query
type: string
description: Whether to include labels.
- name: lists
in: query
type: string
description: Filter lists to include.
- name: members
in: query
type: string
description: Whether to include members.
- name: memberships
in: query
type: string
description: Whether to include memberships.
- name: organization
in: query
type: boolean
description: Whether to include the organization.
- name: updateboard
method: PUT
description: Update a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: query
type: string
description: The new name for the board.
- name: desc
in: query
type: string
description: The new description for the board.
- name: closed
in: query
type: boolean
description: Whether the board is closed (archived).
- name: subscribed
in: query
type: boolean
description: Whether the authenticated member is subscribed to the board.
- name: idOrganization
in: query
type: string
description: The ID of the organization to move the board to.
- name: prefs/permissionLevel
in: query
type: string
description: The permission level for the board.
- name: prefs/selfJoin
in: query
type: boolean
description: Whether workspace members can join the board themselves.
- name: prefs/cardCovers
in: query
type: boolean
description: Whether card covers are enabled.
- name: prefs/hideVotes
in: query
type: boolean
description: Whether votes are hidden until voting is complete.
- name: prefs/background
in: query
type: string
description: The background for the board.
- name: prefs/cardAging
in: query
type: string
description: The card aging style.
- name: labelNames/green
in: query
type: string
description: Name for the green label.
- name: labelNames/yellow
in: query
type: string
description: Name for the yellow label.
- name: labelNames/orange
in: query
type: string
description: Name for the orange label.
- name: labelNames/red
in: query
type: string
description: Name for the red label.
- name: labelNames/purple
in: query
type: string
description: Name for the purple label.
- name: labelNames/blue
in: query
type: string
description: Name for the blue label.
- name: deleteboard
method: DELETE
description: Delete a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: boards-id-actions
path: /boards/{id}/actions
operations:
- name: getboardactions
method: GET
description: Get Actions for a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: filter
in: query
type: string
description: A comma-separated list of action types to filter by.
- name: limit
in: query
type: integer
description: The maximum number of actions to return.
- name: boards-id-cards
path: /boards/{id}/cards
operations:
- name: getboardcards
method: GET
description: Get Cards on a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: fields
in: query
type: string
description: A comma-separated list of card fields to return.
- name: boards-id-cards-filter
path: /boards/{id}/cards/{filter}
operations:
- name: getboardcardsfilter
method: GET
description: Get Filtered Cards on a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: filter
in: path
type: string
description: The filter to apply to the cards.
required: true
- name: boards-id-checklists
path: /boards/{id}/checklists
operations:
- name: getboardchecklists
method: GET
description: Get Checklists on a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: boards-id-labels
path: /boards/{id}/labels
operations:
- name: getboardlabels
method: GET
description: Get Labels on a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: fields
in: query
type: string
description: A comma-separated list of label fields to return.
- name: limit
in: query
type: integer
description: Maximum number of labels to return.
- name: createboardlabel
method: POST
description: Create a Label on a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: query
type: string
description: The name for the label.
required: true
- name: color
in: query
type: string
description: The color for the label.
required: true
- name: boards-id-lists
path: /boards/{id}/lists
operations:
- name: getboardlists
method: GET
description: Get Lists on a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: cards
in: query
type: string
description: Filter cards within lists.
- name: card_fields
in: query
type: string
description: A comma-separated list of card fields to return.
- name: filter
in: query
type: string
description: Filter lists by status.
- name: fields
in: query
type: string
description: A comma-separated list of list fields to return.
- name: createboardlist
method: POST
description: Create a List on a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: query
type: string
description: The name for the new list.
required: true
- name: pos
in: query
type: string
description: The position of the list on the board.
- name: boards-id-members
path: /boards/{id}/members
operations:
- name: getboardmembers
method: GET
description: Get Members of a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: inviteboardmember
method: PUT
description: Invite a Member to a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: email
in: query
type: string
description: The email address of the member to invite.
required: true
- name: type
in: query
type: string
description: The type of membership.
- name: boards-id-members-idMember
path: /boards/{id}/members/{idMember}
operations:
- name: updateboardmember
method: PUT
description: Update a Board Member
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: idMember
in: path
type: string
description: The ID of the member to update.
required: true
- name: type
in: query
type: string
description: The new membership type.
required: true
- name: removeboardmember
method: DELETE
description: Remove a Member from a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: idMember
in: path
type: string
description: The ID of the member to remove.
required: true
- name: boards-id-memberships
path: /boards/{id}/memberships
operations:
- name: getboardmemberships
method: GET
description: Get Memberships of a Board
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: filter
in: query
type: string
description: Filter memberships by type.
authentication:
type: apikey
key: key
value: '{{env.TRELLO_API_KEY}}'
placement: query
exposes:
- type: rest
namespace: rest-boards-rest
port: 8080
description: REST adapter for Trello REST API — Boards. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/boards
name: boards
description: REST surface for boards.
operations:
- method: POST
name: createboard
description: Create a Board
call: rest-boards.createboard
with:
name: rest.name
defaultLabels: rest.defaultLabels
defaultLists: rest.defaultLists
desc: rest.desc
idOrganization: rest.idOrganization
idBoardSource: rest.idBoardSource
prefs_permissionLevel: rest.prefs_permissionLevel
prefs_voting: rest.prefs_voting
prefs_comments: rest.prefs_comments
prefs_background: rest.prefs_background
prefs_cardAging: rest.prefs_cardAging
prefs_selfJoin: rest.prefs_selfJoin
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}
name: boards-id
description: REST surface for boards-id.
operations:
- method: GET
name: getboard
description: Get a Board
call: rest-boards.getboard
with:
actions: rest.actions
boardStars: rest.boardStars
cards: rest.cards
card_fields: rest.card_fields
checklists: rest.checklists
fields: rest.fields
labels: rest.labels
lists: rest.lists
members: rest.members
memberships: rest.memberships
organization: rest.organization
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateboard
description: Update a Board
call: rest-boards.updateboard
with:
name: rest.name
desc: rest.desc
closed: rest.closed
subscribed: rest.subscribed
idOrganization: rest.idOrganization
prefs/permissionLevel: rest.prefs/permissionLevel
prefs/selfJoin: rest.prefs/selfJoin
prefs/cardCovers: rest.prefs/cardCovers
prefs/hideVotes: rest.prefs/hideVotes
prefs/background: rest.prefs/background
prefs/cardAging: rest.prefs/cardAging
labelNames/green: rest.labelNames/green
labelNames/yellow: rest.labelNames/yellow
labelNames/orange: rest.labelNames/orange
labelNames/red: rest.labelNames/red
labelNames/purple: rest.labelNames/purple
labelNames/blue: rest.labelNames/blue
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteboard
description: Delete a Board
call: rest-boards.deleteboard
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}/actions
name: boards-id-actions
description: REST surface for boards-id-actions.
operations:
- method: GET
name: getboardactions
description: Get Actions for a Board
call: rest-boards.getboardactions
with:
filter: rest.filter
limit: rest.limit
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}/cards
name: boards-id-cards
description: REST surface for boards-id-cards.
operations:
- method: GET
name: getboardcards
description: Get Cards on a Board
call: rest-boards.getboardcards
with:
fields: rest.fields
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}/cards/{filter}
name: boards-id-cards-filter
description: REST surface for boards-id-cards-filter.
operations:
- method: GET
name: getboardcardsfilter
description: Get Filtered Cards on a Board
call: rest-boards.getboardcardsfilter
with:
filter: rest.filter
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}/checklists
name: boards-id-checklists
description: REST surface for boards-id-checklists.
operations:
- method: GET
name: getboardchecklists
description: Get Checklists on a Board
call: rest-boards.getboardchecklists
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}/labels
name: boards-id-labels
description: REST surface for boards-id-labels.
operations:
- method: GET
name: getboardlabels
description: Get Labels on a Board
call: rest-boards.getboardlabels
with:
fields: rest.fields
limit: rest.limit
outputParameters:
- type: object
mapping: $.
- method: POST
name: createboardlabel
description: Create a Label on a Board
call: rest-boards.createboardlabel
with:
name: rest.name
color: rest.color
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}/lists
name: boards-id-lists
description: REST surface for boards-id-lists.
operations:
- method: GET
name: getboardlists
description: Get Lists on a Board
call: rest-boards.getboardlists
with:
cards: rest.cards
card_fields: rest.card_fields
filter: rest.filter
fields: rest.fields
outputParameters:
- type: object
mapping: $.
- method: POST
name: createboardlist
description: Create a List on a Board
call: rest-boards.createboardlist
with:
name: rest.name
pos: rest.pos
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}/members
name: boards-id-members
description: REST surface for boards-id-members.
operations:
- method: GET
name: getboardmembers
description: Get Members of a Board
call: rest-boards.getboardmembers
outputParameters:
- type: object
mapping: $.
- method: PUT
name: inviteboardmember
description: Invite a Member to a Board
call: rest-boards.inviteboardmember
with:
email: rest.email
type: rest.type
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}/members/{idmember}
name: boards-id-members-idmember
description: REST surface for boards-id-members-idMember.
operations:
- method: PUT
name: updateboardmember
description: Update a Board Member
call: rest-boards.updateboardmember
with:
idMember: rest.idMember
type: rest.type
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: removeboardmember
description: Remove a Member from a Board
call: rest-boards.removeboardmember
with:
idMember: rest.idMember
outputParameters:
- type: object
mapping: $.
- path: /v1/boards/{id}/memberships
name: boards-id-memberships
description: REST surface for boards-id-memberships.
operations:
- method: GET
name: getboardmemberships
description: Get Memberships of a Board
call: rest-boards.getboardmemberships
with:
filter: rest.filter
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: rest-boards-mcp
port: 9090
transport: http
description: MCP adapter for Trello REST API — Boards. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: create-board
description: Create a Board
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-boards.createboard
with:
name: tools.name
defaultLabels: tools.defaultLabels
defaultLists: tools.defaultLists
desc: tools.desc
idOrganization: tools.idOrganization
idBoardSource: tools.idBoardSource
prefs_permissionLevel: tools.prefs_permissionLevel
prefs_voting: tools.prefs_voting
prefs_comments: tools.prefs_comments
prefs_background: tools.prefs_background
prefs_cardAging: tools.prefs_cardAging
prefs_selfJoin: tools.prefs_selfJoin
outputParameters:
- type: object
mapping: $.
- name: get-board
description: Get a Board
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-boards.getboard
with:
actions: tools.actions
boardStars: tools.boardStars
cards: tools.cards
card_fields: tools.card_fields
checklists: tools.checklists
fields: tools.fields
labels: tools.labels
lists: tools.lists
members: tools.members
memberships: tools.memberships
organization: tools.organization
outputParameters:
- type: object
mapping: $.
- name: update-board
description: Update a Board
hints:
readOnly: false
destructive: false
idempotent: true
call: rest-boards.updateboard
with:
name: tools.name
desc: tools.desc
closed: tools.closed
subscribed: tools.subscribed
idOrganization: tools.idOrganization
prefs/permissionLevel: tools.prefs/permissionLevel
prefs/selfJoin: tools.prefs/selfJoin
prefs/cardCovers: tools.prefs/cardCovers
prefs/hideVotes: tools.prefs/hideVotes
prefs/background: tools.prefs/background
prefs/cardAging: tools.prefs/cardAging
labelNames/green: tools.labelNames/green
labelNames/yellow: tools.labelNames/yellow
labelNames/orange: tools.labelNames/orange
labelNames/red: tools.labelNames/red
labelNames/purple: tools.labelNames/purple
labelNames/blue: tools.labelNames/blue
outputParameters:
- type: object
mapping: $.
- name: delete-board
description: Delete a Board
hints:
readOnly: false
destructive: true
idempotent: true
call: rest-boards.deleteboard
outputParameters:
- type: object
mapping: $.
- name: get-actions-board
description: Get Actions for a Board
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-boards.getboardactions
with:
filter: tools.filter
limit: tools.limit
outputParameters:
- type: object
mapping: $.
- name: get-cards-board
description: Get Cards on a Board
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-boards.getboardcards
with:
fields: tools.fields
outputParameters:
- type: object
mapping: $.
- name: get-filtered-cards-board
description: Get Filtered Cards on a Board
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-boards.getboardcardsfilter
with:
filter: tools.filter
outputParameters:
- type: object
mapping: $.
- name: get-checklists-board
description: Get Checklists on a Board
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-boards.getboardchecklists
outputParameters:
- type: object
mapping: $.
- name: get-labels-board
description: Get Labels on a Board
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-boards.getboardlabels
with:
fields: tools.fields
limit: tools.limit
outputParameters:
- type: object
mapping: $.
- name: create-label-board
description: Create a Label on a Board
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-boards.createboardlabel
with:
name: tools.name
color: tools.color
outputParameters:
- type: object
mapping: $.
- name: get-lists-board
description: Get Lists on a Board
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-boards.getboardlists
with:
cards: tools.cards
card_fields: tools.card_fields
filter: tools.filter
fields: tools.fields
outputParameters:
- type: object
mapping: $.
- name: create-list-board
description: Create a List on a Board
hints:
readOnly: true
destructive: false
idempotent: false
call: rest-boards.createboardlist
with:
name: tools.name
pos: tools.pos
outputParameters:
- type: object
mapping: $.
- name: get-members-board
description: Get Members of a Board
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-boards.getboardmembers
outputParameters:
- type: object
mapping: $.
- name: invite-member-board
description: Invite a Member to a Board
hints:
readOnly: false
destructive: false
idempotent: true
call: rest-boards.inviteboardmember
with:
email: tools.email
type: tools.type
outputParameters:
- type: object
mapping: $.
- name: update-board-member
description: Update a Board Member
hints:
readOnly: false
destructive: false
idempotent: true
call: rest-boards.updateboardmember
with:
idMember: tools.idMember
type: tools.type
outputParameters:
- type: object
mapping: $.
- name: remove-member-board
description: Remove a Member from a Board
hints:
readOnly: false
destructive: true
idempotent: true
call: rest-boards.removeboardmember
with:
idMember: tools.idMember
outputParameters:
- type: object
mapping: $.
- name: get-memberships-board
description: Get Memberships of a Board
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-boards.getboardmemberships
with:
filter: tools.filter
outputParameters:
- type: object
mapping: $.