trello · Capability
Trello REST API — Cards
Trello REST API — Cards. 16 operations. Lead operation: Create a Card. Self-contained Naftiko capability covering one Trello business surface.
What You Can Do
POST
Createcard
— Create a Card
/v1/cards
GET
Getcard
— Get a Card
/v1/cards/{id}
PUT
Updatecard
— Update a Card
/v1/cards/{id}
DELETE
Deletecard
— Delete a Card
/v1/cards/{id}
GET
Getcardactions
— Get Actions on a Card
/v1/cards/{id}/actions
POST
Createcardcomment
— Add a Comment to a Card
/v1/cards/{id}/actions/comments
GET
Getcardattachments
— Get Attachments on a Card
/v1/cards/{id}/attachments
POST
Createcardattachment
— Create an Attachment on a Card
/v1/cards/{id}/attachments
GET
Getcardchecklists
— Get Checklists on a Card
/v1/cards/{id}/checklists
POST
Createcardchecklist
— Create a Checklist on a Card
/v1/cards/{id}/checklists
POST
Addcardlabel
— Add a Label to a Card
/v1/cards/{id}/labels
DELETE
Removecardlabel
— Remove a Label from a Card
/v1/cards/{id}/labels/{idlabel}
POST
Addcardmember
— Add a Member to a Card
/v1/cards/{id}/members
DELETE
Removecardmember
— Remove a Member from a Card
/v1/cards/{id}/members/{idmember}
GET
Getcardstickers
— Get Stickers on a Card
/v1/cards/{id}/stickers
POST
Addcardsticker
— Add a Sticker to a Card
/v1/cards/{id}/stickers
MCP Tools
create-card
Create a Card
get-card
Get a Card
read-only
idempotent
update-card
Update a Card
idempotent
delete-card
Delete a Card
idempotent
get-actions-card
Get Actions on a Card
read-only
idempotent
add-comment-card
Add a Comment to a Card
get-attachments-card
Get Attachments on a Card
read-only
idempotent
create-attachment-card
Create an Attachment on a Card
get-checklists-card
Get Checklists on a Card
read-only
idempotent
create-checklist-card
Create a Checklist on a Card
read-only
add-label-card
Add a Label to a Card
remove-label-card
Remove a Label from a Card
idempotent
add-member-card
Add a Member to a Card
remove-member-card
Remove a Member from a Card
idempotent
get-stickers-card
Get Stickers on a Card
read-only
idempotent
add-sticker-card
Add a Sticker to a Card
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Trello REST API — Cards
description: 'Trello REST API — Cards. 16 operations. Lead operation: Create a Card. Self-contained Naftiko capability covering
one Trello business surface.'
tags:
- Trello
- Cards
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
TRELLO_API_KEY: TRELLO_API_KEY
capability:
consumes:
- type: http
namespace: rest-cards
baseUri: https://api.trello.com/1
description: Trello REST API — Cards business capability. Self-contained, no shared references.
resources:
- name: cards
path: /cards
operations:
- name: createcard
method: POST
description: Create a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: query
type: string
description: The name for the card.
- name: desc
in: query
type: string
description: The description for the card.
- name: pos
in: query
type: string
description: The position of the card in the list.
- name: due
in: query
type: string
description: The due date for the card.
- name: start
in: query
type: string
description: The start date for the card.
- name: dueComplete
in: query
type: boolean
description: Whether the due date is complete.
- name: idList
in: query
type: string
description: The ID of the list the card should be created in.
required: true
- name: idMembers
in: query
type: string
description: Comma-separated list of member IDs to add to the card.
- name: idLabels
in: query
type: string
description: Comma-separated list of label IDs to add to the card.
- name: urlSource
in: query
type: string
description: A URL to attach to the card.
- name: idCardSource
in: query
type: string
description: The ID of a card to copy into the new card.
- name: cards-id
path: /cards/{id}
operations:
- name: getcard
method: GET
description: Get a Card
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: actions
in: query
type: string
description: A comma-separated list of action types to include.
- name: attachments
in: query
type: string
description: Whether to include attachments.
- name: members
in: query
type: boolean
description: Whether to include members.
- name: checkItemStates
in: query
type: boolean
description: Whether to include check item states.
- name: checklists
in: query
type: string
description: Whether to include checklists.
- name: updatecard
method: PUT
description: Update a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: query
type: string
description: The new name for the card.
- name: desc
in: query
type: string
description: The new description for the card.
- name: closed
in: query
type: boolean
description: Whether the card is archived.
- name: idMembers
in: query
type: string
description: Comma-separated list of member IDs.
- name: idLabels
in: query
type: string
description: Comma-separated list of label IDs.
- name: idList
in: query
type: string
description: The ID of the list to move the card to.
- name: idBoard
in: query
type: string
description: The ID of the board to move the card to.
- name: pos
in: query
type: string
description: The new position of the card.
- name: due
in: query
type: string
description: The new due date for the card.
- name: start
in: query
type: string
description: The start date for the card.
- name: dueComplete
in: query
type: boolean
description: Whether the due date is complete.
- name: subscribed
in: query
type: boolean
description: Whether the authenticated member is subscribed to the card.
- name: cover
in: query
type: string
description: JSON string for the card cover.
- name: deletecard
method: DELETE
description: Delete a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: cards-id-actions
path: /cards/{id}/actions
operations:
- name: getcardactions
method: GET
description: Get Actions on a Card
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: cards-id-actions-comments
path: /cards/{id}/actions/comments
operations:
- name: createcardcomment
method: POST
description: Add a Comment to a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: text
in: query
type: string
description: The comment text.
required: true
- name: cards-id-attachments
path: /cards/{id}/attachments
operations:
- name: getcardattachments
method: GET
description: Get Attachments on a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: fields
in: query
type: string
description: A comma-separated list of attachment fields to return.
- name: createcardattachment
method: POST
description: Create an Attachment on a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: query
type: string
description: The name for the attachment.
- name: mimeType
in: query
type: string
description: The MIME type of the attachment.
- name: url
in: query
type: string
description: A URL to attach to the card.
- name: cards-id-checklists
path: /cards/{id}/checklists
operations:
- name: getcardchecklists
method: GET
description: Get Checklists on a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: createcardchecklist
method: POST
description: Create a Checklist on a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: query
type: string
description: The name for the checklist.
- name: idChecklistSource
in: query
type: string
description: The ID of a checklist to copy into the new checklist.
- name: pos
in: query
type: string
description: The position of the checklist on the card.
- name: cards-id-labels
path: /cards/{id}/labels
operations:
- name: addcardlabel
method: POST
description: Add a Label to a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: value
in: query
type: string
description: The ID of the label to add.
required: true
- name: cards-id-labels-idLabel
path: /cards/{id}/labels/{idLabel}
operations:
- name: removecardlabel
method: DELETE
description: Remove a Label from a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: idLabel
in: path
type: string
description: The ID of the label to remove.
required: true
- name: cards-id-members
path: /cards/{id}/members
operations:
- name: addcardmember
method: POST
description: Add a Member to a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: value
in: query
type: string
description: The ID of the member to add.
required: true
- name: cards-id-members-idMember
path: /cards/{id}/members/{idMember}
operations:
- name: removecardmember
method: DELETE
description: Remove a Member from a Card
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: cards-id-stickers
path: /cards/{id}/stickers
operations:
- name: getcardstickers
method: GET
description: Get Stickers on a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: addcardsticker
method: POST
description: Add a Sticker to a Card
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: image
in: query
type: string
description: The sticker image identifier.
required: true
- name: top
in: query
type: number
description: The top position of the sticker as a percentage.
required: true
- name: left
in: query
type: number
description: The left position of the sticker as a percentage.
required: true
- name: zIndex
in: query
type: integer
description: The z-index of the sticker.
required: true
- name: rotate
in: query
type: number
description: The rotation of the sticker in degrees.
authentication:
type: apikey
key: key
value: '{{env.TRELLO_API_KEY}}'
placement: query
exposes:
- type: rest
namespace: rest-cards-rest
port: 8080
description: REST adapter for Trello REST API — Cards. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/cards
name: cards
description: REST surface for cards.
operations:
- method: POST
name: createcard
description: Create a Card
call: rest-cards.createcard
with:
name: rest.name
desc: rest.desc
pos: rest.pos
due: rest.due
start: rest.start
dueComplete: rest.dueComplete
idList: rest.idList
idMembers: rest.idMembers
idLabels: rest.idLabels
urlSource: rest.urlSource
idCardSource: rest.idCardSource
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}
name: cards-id
description: REST surface for cards-id.
operations:
- method: GET
name: getcard
description: Get a Card
call: rest-cards.getcard
with:
fields: rest.fields
actions: rest.actions
attachments: rest.attachments
members: rest.members
checkItemStates: rest.checkItemStates
checklists: rest.checklists
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updatecard
description: Update a Card
call: rest-cards.updatecard
with:
name: rest.name
desc: rest.desc
closed: rest.closed
idMembers: rest.idMembers
idLabels: rest.idLabels
idList: rest.idList
idBoard: rest.idBoard
pos: rest.pos
due: rest.due
start: rest.start
dueComplete: rest.dueComplete
subscribed: rest.subscribed
cover: rest.cover
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deletecard
description: Delete a Card
call: rest-cards.deletecard
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}/actions
name: cards-id-actions
description: REST surface for cards-id-actions.
operations:
- method: GET
name: getcardactions
description: Get Actions on a Card
call: rest-cards.getcardactions
with:
filter: rest.filter
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}/actions/comments
name: cards-id-actions-comments
description: REST surface for cards-id-actions-comments.
operations:
- method: POST
name: createcardcomment
description: Add a Comment to a Card
call: rest-cards.createcardcomment
with:
text: rest.text
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}/attachments
name: cards-id-attachments
description: REST surface for cards-id-attachments.
operations:
- method: GET
name: getcardattachments
description: Get Attachments on a Card
call: rest-cards.getcardattachments
with:
fields: rest.fields
outputParameters:
- type: object
mapping: $.
- method: POST
name: createcardattachment
description: Create an Attachment on a Card
call: rest-cards.createcardattachment
with:
name: rest.name
mimeType: rest.mimeType
url: rest.url
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}/checklists
name: cards-id-checklists
description: REST surface for cards-id-checklists.
operations:
- method: GET
name: getcardchecklists
description: Get Checklists on a Card
call: rest-cards.getcardchecklists
outputParameters:
- type: object
mapping: $.
- method: POST
name: createcardchecklist
description: Create a Checklist on a Card
call: rest-cards.createcardchecklist
with:
name: rest.name
idChecklistSource: rest.idChecklistSource
pos: rest.pos
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}/labels
name: cards-id-labels
description: REST surface for cards-id-labels.
operations:
- method: POST
name: addcardlabel
description: Add a Label to a Card
call: rest-cards.addcardlabel
with:
value: rest.value
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}/labels/{idlabel}
name: cards-id-labels-idlabel
description: REST surface for cards-id-labels-idLabel.
operations:
- method: DELETE
name: removecardlabel
description: Remove a Label from a Card
call: rest-cards.removecardlabel
with:
idLabel: rest.idLabel
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}/members
name: cards-id-members
description: REST surface for cards-id-members.
operations:
- method: POST
name: addcardmember
description: Add a Member to a Card
call: rest-cards.addcardmember
with:
value: rest.value
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}/members/{idmember}
name: cards-id-members-idmember
description: REST surface for cards-id-members-idMember.
operations:
- method: DELETE
name: removecardmember
description: Remove a Member from a Card
call: rest-cards.removecardmember
with:
idMember: rest.idMember
outputParameters:
- type: object
mapping: $.
- path: /v1/cards/{id}/stickers
name: cards-id-stickers
description: REST surface for cards-id-stickers.
operations:
- method: GET
name: getcardstickers
description: Get Stickers on a Card
call: rest-cards.getcardstickers
outputParameters:
- type: object
mapping: $.
- method: POST
name: addcardsticker
description: Add a Sticker to a Card
call: rest-cards.addcardsticker
with:
image: rest.image
top: rest.top
left: rest.left
zIndex: rest.zIndex
rotate: rest.rotate
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: rest-cards-mcp
port: 9090
transport: http
description: MCP adapter for Trello REST API — Cards. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: create-card
description: Create a Card
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-cards.createcard
with:
name: tools.name
desc: tools.desc
pos: tools.pos
due: tools.due
start: tools.start
dueComplete: tools.dueComplete
idList: tools.idList
idMembers: tools.idMembers
idLabels: tools.idLabels
urlSource: tools.urlSource
idCardSource: tools.idCardSource
outputParameters:
- type: object
mapping: $.
- name: get-card
description: Get a Card
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-cards.getcard
with:
fields: tools.fields
actions: tools.actions
attachments: tools.attachments
members: tools.members
checkItemStates: tools.checkItemStates
checklists: tools.checklists
outputParameters:
- type: object
mapping: $.
- name: update-card
description: Update a Card
hints:
readOnly: false
destructive: false
idempotent: true
call: rest-cards.updatecard
with:
name: tools.name
desc: tools.desc
closed: tools.closed
idMembers: tools.idMembers
idLabels: tools.idLabels
idList: tools.idList
idBoard: tools.idBoard
pos: tools.pos
due: tools.due
start: tools.start
dueComplete: tools.dueComplete
subscribed: tools.subscribed
cover: tools.cover
outputParameters:
- type: object
mapping: $.
- name: delete-card
description: Delete a Card
hints:
readOnly: false
destructive: true
idempotent: true
call: rest-cards.deletecard
outputParameters:
- type: object
mapping: $.
- name: get-actions-card
description: Get Actions on a Card
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-cards.getcardactions
with:
filter: tools.filter
outputParameters:
- type: object
mapping: $.
- name: add-comment-card
description: Add a Comment to a Card
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-cards.createcardcomment
with:
text: tools.text
outputParameters:
- type: object
mapping: $.
- name: get-attachments-card
description: Get Attachments on a Card
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-cards.getcardattachments
with:
fields: tools.fields
outputParameters:
- type: object
mapping: $.
- name: create-attachment-card
description: Create an Attachment on a Card
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-cards.createcardattachment
with:
name: tools.name
mimeType: tools.mimeType
url: tools.url
outputParameters:
- type: object
mapping: $.
- name: get-checklists-card
description: Get Checklists on a Card
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-cards.getcardchecklists
outputParameters:
- type: object
mapping: $.
- name: create-checklist-card
description: Create a Checklist on a Card
hints:
readOnly: true
destructive: false
idempotent: false
call: rest-cards.createcardchecklist
with:
name: tools.name
idChecklistSource: tools.idChecklistSource
pos: tools.pos
outputParameters:
- type: object
mapping: $.
- name: add-label-card
description: Add a Label to a Card
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-cards.addcardlabel
with:
value: tools.value
outputParameters:
- type: object
mapping: $.
- name: remove-label-card
description: Remove a Label from a Card
hints:
readOnly: false
destructive: true
idempotent: true
call: rest-cards.removecardlabel
with:
idLabel: tools.idLabel
outputParameters:
- type: object
mapping: $.
- name: add-member-card
description: Add a Member to a Card
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-cards.addcardmember
with:
value: tools.value
outputParameters:
- type: object
mapping: $.
- name: remove-member-card
description: Remove a Member from a Card
hints:
readOnly: false
destructive: true
idempotent: true
call: rest-cards.removecardmember
with:
idMember: tools.idMember
outputParameters:
- type: object
mapping: $.
- name: get-stickers-card
description: Get Stickers on a Card
hints:
readOnly: true
destructive: false
idempotent: true
call: rest-cards.getcardstickers
outputParameters:
- type: object
mapping: $.
- name: add-sticker-card
description: Add a Sticker to a Card
hints:
readOnly: false
destructive: false
idempotent: false
call: rest-cards.addcardsticker
with:
image: tools.image
top: tools.top
left: tools.left
zIndex: tools.zIndex
rotate: tools.rotate
outputParameters:
- type: object
mapping: $.