Documentation Index
Fetch the complete documentation index at: https://docs.getaptly.com/llms.txt
Use this file to discover all available pages before exploring further.
MCP tools
Auto-generated from src/mcp/**/*.tools.ts. Do not edit by hand — run /mcp-docs to regenerate.
board
search-boards-by-name
Search for boards by name, optionally filtered by type
- Scopes:
boards:read
- Throttle:
1
Parameters
| Name | Type | Required | Default | Description |
|---|
name | string | no | — | The name of the board to search for |
aptletType | enum: ticket | deal | location | adsource | reviews | screening | answers | no | — | Filter by board type |
limit | number | no | 10 | Number of results to return |
offset | number | no | 0 | Number of results to skip |
add-tab-view-to-board
Create a page and attach it as a tab view to a board
- Scopes:
boards:write
- Throttle:
5
Parameters
| Name | Type | Required | Default | Description |
|---|
aptletUuid | string | yes | — | The UUID of the board to add the page to |
tabViewName | string | yes | — | The name of tab view |
files | array<object> | yes | — | List of files with name and content ({ name: string, content: string }) |
create-card
Create a new card
- Scopes:
boards:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
aptletUuid | string | yes | — | The UUID of the board to create a card of |
name | string | yes | — | The name of the card |
description | string | no | — | The description of the card |
assignee | string | no | — | The assignee ID of the card |
createdConduit | string | no | "aptly-mcp" | The conduit through which the card was created |
Create a comment on a card
- Scopes:
boards:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
cardId | string | yes | — | The ID of the card to comment on |
content | string | yes | — | The comment content |
mentions | array<string> | no | — | User IDs mentioned in the comment |
search-cards
Search for cards by a search query, optionally filtered by board UUID
- Scopes:
boards:read
- Throttle:
1
Parameters
| Name | Type | Required | Default | Description |
|---|
query | string | no | — | Search term matched against the searchIndex field |
aptletUuid | string | no | — | Filter cards by board UUID |
limit | number | no | 10 | Number of results to return |
offset | number | no | 0 | Number of results to skip |
get-card-tasks
Get tasks for a card
- Scopes:
boards:read
- Throttle:
1
Parameters
| Name | Type | Required | Default | Description |
|---|
cardId | string | yes | — | The ID of the card to get tasks for |
limit | number | no | 10 | Number of results to return |
offset | number | no | 0 | Number of results to skip |
create-card-task
Create a task for a card
- Scopes:
boards:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
cardId | string | yes | — | The ID of the card to create the task for |
title | string | yes | — | The task title |
checked | boolean | yes | — | Whether the task is completed |
dueAt | string | no | — | Due date in ISO 8601 format |
assign-user-to-card-task
Assign a user to a card task
- Scopes:
boards:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
taskId | string | yes | — | The ID of the task to assign |
assigneeId | string | yes | — | The ID of the user to assign to the task |
calendar
get-user-calendars
Get all calendars the authenticated user can access (owned + shared), without events.
- Scopes:
inboxes:read
- Throttle:
1
No parameters.
get-user-calendars-with-events
Get all calendars the authenticated user can access (owned + shared) along with their events. Optionally filter events by a date range; recurring event instances overlapping the range are included.
- Scopes:
inboxes:read
- Throttle:
2
Parameters
| Name | Type | Required | Default | Description |
|---|
dateFrom | string (ISO 8601 datetime) | no | — | Only include events ending on or after this ISO 8601 datetime (e.g. 2026-04-01T00:00:00Z). Required together with dateTo. |
dateTo | string (ISO 8601 datetime) | no | — | Only include events starting on or before this ISO 8601 datetime (e.g. 2026-05-01T00:00:00Z). Required together with dateFrom. |
create-calendar-event
Create a new calendar event in one of the user’s calendars
- Scopes:
inboxes:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
calendarId | string | yes | — | ID of the calendar to create the event in (from get-user-calendars-with-events) |
cardId | string | no | — | ID of the card to associate the event with |
title | string | yes | — | Event title |
description | string | no | — | Event description |
location | string | no | — | Event location (formatted address or free-form text) |
start | string (ISO 8601 datetime) | yes | — | Event start ISO 8601 datetime (e.g. 2026-05-12T15:00:00Z) |
end | string (ISO 8601 datetime) | yes | — | Event end ISO 8601 datetime (e.g. 2026-05-12T16:00:00Z) |
allDay | boolean | no | false | Whether the event spans the entire day |
attendees | array<object> | no | — | Event attendees ({ email: string (email), name?: string, response: enum: unknown | needsAction | accepted | declined | tentative (default needsAction) }) |
inbox
get-user-email-inboxes
Get all email inboxes available for the authenticated user
- Scopes:
inboxes:read
- Throttle:
1
No parameters.
get-user-phone-inboxes
Get all phone (SMS/voice) inboxes available for the authenticated user
- Scopes:
inboxes:read
- Throttle:
1
No parameters.
search-emails
Search emails across From/To names and email addresses, subject, body, and attachment content. Optionally filter by inbox and date range.
- Scopes:
inboxes:read
- Throttle:
2
Parameters
| Name | Type | Required | Default | Description |
|---|
query | string | no | — | Search by From name/email, To name/email, subject, email body, or attachment content |
channelId | string | no | — | Filter emails by inbox id |
dateFrom | string (ISO 8601 datetime) | no | — | Filter emails published on or after this ISO 8601 datetime (e.g. 2026-04-01T00:00:00Z) |
dateTo | string (ISO 8601 datetime) | no | — | Filter emails published on or before this ISO 8601 datetime (e.g. 2026-04-17T23:59:59Z) |
limit | number | no | 100 | Number of results to return |
offset | number | no | 0 | Number of results to skip |
send-email
Send a new email message from one of the user’s email inboxes
- Scopes:
inboxes:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
channelId | string | yes | — | ID of the email inbox to send from |
to | array<object> | yes | — | Recipients ({ email: string (email), name?: string }) (min 1) |
cc | array<object> | no | — | CC recipients ({ email: string (email), name?: string }) |
bcc | array<object> | no | — | BCC recipients ({ email: string (email), name?: string }) |
subject | string | yes | — | Email subject |
body | string | yes | — | Email body (plain text) |
create-email-draft
Create a draft email in one of the user’s email inboxes
- Scopes:
inboxes:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
channelId | string | yes | — | ID of the email inbox to send from |
to | array<object> | yes | — | Recipients ({ email: string (email), name?: string }) (min 1) |
cc | array<object> | no | — | CC recipients ({ email: string (email), name?: string }) |
bcc | array<object> | no | — | BCC recipients ({ email: string (email), name?: string }) |
subject | string | yes | — | Email subject |
body | string | yes | — | Email body (plain text) |
send-sms
Send an SMS from one of the user’s phone inboxes
- Scopes:
inboxes:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
channelId | string | yes | — | ID of the phone inbox to send from |
to | array<object> | yes | — | SMS recipients ({ number: string, name?: string }) (min 1) |
body | string | yes | — | SMS message text |
archive-email
Archive an email thread
- Scopes:
inboxes:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
streamId | string | yes | — | The streamId of the email thread to archive (from search-emails results) |
reopen-email
Reopen an archived email thread
- Scopes:
inboxes:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
streamId | string | yes | — | The streamId of the email thread to reopen (from search-emails results) |
archive-phone-message
Archive a phone message thread
- Scopes:
inboxes:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
streamId | string | yes | — | The streamId of the phone message thread to archive (from search-phone-messages results) |
reopen-phone-message
Reopen an archived phone message thread
- Scopes:
inboxes:write
- Throttle:
3
Parameters
| Name | Type | Required | Default | Description |
|---|
streamId | string | yes | — | The streamId of the phone message thread to reopen (from search-phone-messages results) |
search-phone-messages
Search SMS and voice messages across From/To names and phone numbers, and message content. Optionally filter by inbox and date range.
- Scopes:
inboxes:read
- Throttle:
2
Parameters
| Name | Type | Required | Default | Description |
|---|
query | string | no | — | Search by From name/number, To name/number, or SMS message content |
channelId | string | no | — | Filter messages by phone inbox id |
dateFrom | string (ISO 8601 datetime) | no | — | Filter message published on or after this ISO 8601 datetime (e.g. 2026-04-01T00:00:00Z) |
dateTo | string (ISO 8601 datetime) | no | — | Filter message published on or before this ISO 8601 datetime (e.g. 2026-04-17T23:59:59Z) |
limit | number | no | 50 | Number of results to return |
offset | number | no | 0 | Number of results to skip |
knowledge
retrieve-knowledge-documents
Retrieve relevant knowledge documents from the knowledge base using a search query
Parameters
| Name | Type | Required | Default | Description |
|---|
query | string | yes | — | The search query to retrieve knowledge documents |
limit | number | no | 10 | Number of documents to return (min 5, max 20) |
person
get-persons-by-query
Find persons by their full name, email, phone number or address
- Scopes:
contacts:read
- Throttle:
1
Parameters
| Name | Type | Required | Default | Description |
|---|
query | string | yes | — | Search by full name, email, phone number, or address |
limit | number | no | 10 | Number of results to return |
offset | number | no | 0 | Number of results to skip |
user
get-company-users
Get all users in the authenticated user’s company. Returns each user’s id and full name.
- Scopes:
contacts:read
- Throttle:
1
No parameters.