Tools reference
The 16 tools Toolies gives AI assistants, what each one does and what it needs.
You never call these tools yourself: this is what your assistant can do on your behalf. Read-only tools work with any connection; tools that make changes need a connection approved with Allow changes and a role that allows editing content.
Workspace
Workspace overviewget_workspaceRead only
Summary of the Toolies workspace: plan and whether it is active, posts used and left this month, creators connected and allowed, scheduled and failing posts, the usual time zone, and links to each page. Call this first when you need context.
Try“How many posts do we have left this month?”
No parameters.
Creators
Find creatorslist_creatorsRead only
Lists the Instagram accounts (creators) connected to the workspace, with their IDs, @usernames, folder, connection status and post counts, plus the workspace's folders. Use it to turn a name like “Ava” into a creator_id, or to get every creator in a folder. Only creators with status connected can publish.
Try“Which creators need to be reconnected?”
| Parameter | Type | Description |
|---|---|---|
search | string | Part of a name or @username. |
status | all · connected · needs_attention · disconnected | needs_attention = the account must be reconnected or is being updated. Default: "all". |
folder | string | Only creators in this folder, by its name as list_creators shows it. "none" = creators outside any folder. |
page | number 1–10000 | Page number, starting at 1. Default: 1. |
Connect a creatorget_connect_linkRead only
Instagram accounts are connected through Instagram’s own sign-in in the Toolies app, never through chat. Returns the page where the user can connect a creator, and how many slots their plan has left.
Try“I want to add a new creator.”
No parameters.
Content
List uploadslist_mediaRead only
Lists videos and images in the content library, newest first, with their folder and how many posts already use each one. Filter with uploaded_after for “the clips I uploaded yesterday”, unused_only to find content that hasn’t been scheduled yet, and folder for one group of creators’ content.
Try“What did I upload yesterday that isn’t scheduled yet?”
| Parameter | Type | Description |
|---|---|---|
type | all · video · image | Default: "all". |
unused_only | boolean | Only media that no draft or scheduled post uses. Default: false. |
uploaded_after | string | A date (2026-10-05, read in the workspace zone) or an ISO 8601 date-time. |
search | string | Part of the file name. |
folder | string | Only uploads filed in this folder (its name, as list_creators shows it). "none" = uploads outside any folder. |
page | number 1–10000 | Page number, starting at 1. Default: 1. |
limit | number 1–100 | Default: 50. |
Import media from a linkimport_mediaMakes changes
Adds a video or image to the content library from a public HTTPS link (a direct file URL, not a web page). Videos: MP4 or MOV, H.264 or HEVC, 3 s to 15 min, up to 4K. Images: JPEG, PNG or WebP. 100 MB maximum. Returns the new media ID.
Try“Add this video to Toolies: https://cdn.example.com/clip.mp4”
| Parameter | Type | Description |
|---|---|---|
urlrequired | string | Direct HTTPS link to the file. |
name | string | File name to show in Toolies. |
folder | string | File the upload in this folder, by name. Usually the folder of the creator it is for. |
Upload filesget_upload_linkRead only
Files on the user’s device can’t travel through chat. Returns the Toolies page where they can drag in videos and images, with the accepted formats and the storage left.
Try“I have 10 new videos on my laptop.”
No parameters.
Delete mediadelete_mediaCan’t be undone
Permanently deletes a file from the content library. Refused while any post that isn’t cancelled uses it, published ones included. Ask the user before deleting.
Try“Delete the duplicate beach clip.”
| Parameter | Type | Description |
|---|---|---|
media_idrequired | ID | Media ID (a UUID returned by Toolies). |
Posts
List postslist_postsRead only
Lists posts with their status, creator, time and caption. Statuses: draft, scheduled, publishing, published, needs_attention (failed or blocked: check the error), cancelled. Filter by creator and by a from/to range.
Try“Did anything fail to post this week?”
| Parameter | Type | Description |
|---|---|---|
status | all · draft · scheduled · publishing · published · needs_attention · cancelled | all excludes cancelled posts. Default: "all". |
creator_id | ID | Creator ID (a UUID returned by Toolies). |
from | string | A date (2026-10-05, read in the workspace zone) or an ISO 8601 date-time. |
to | string | End of the range. A plain date includes that whole day. |
page | number 1–10000 | Page number, starting at 1. Default: 1. |
limit | number 1–100 | Default: 50. |
Post detailsget_postRead only
Everything about one post: full caption, media, schedule, status, error and, once published, its Instagram link and statistics.
Try“Why did Mia’s Tuesday Reel fail?”
| Parameter | Type | Description |
|---|---|---|
post_idrequired | ID | Post ID (a UUID returned by Toolies). |
Show calendarget_calendarRead onlyCalendar view
The publishing calendar day by day: every post with its local time, creator and status. Defaults to the next 7 days for the whole roster. Use it to spot empty days before planning.
Try“Show me next week for the whole roster.”
| Parameter | Type | Description |
|---|---|---|
start_date | date | First day (YYYY-MM-DD). Defaults to today. |
days | number 1–31 | Default: 7. |
creator_id | ID | Creator ID (a UUID returned by Toolies). |
timezone | string | IANA time zone such as Europe/Paris or America/New_York. Defaults to the workspace’s usual zone (see get_workspace). |
Create postcreate_postMakes changes
Creates one Reel, photo or carousel for a connected creator. action=draft saves it unscheduled; action=schedule publishes it automatically at scheduled_at (within 90 days); action=publish_now posts it within a minute. Each scheduled post counts toward the monthly quota.
Try“Post the gym clip on Ava’s account tomorrow at 7 pm.”
| Parameter | Type | Description |
|---|---|---|
creator_idrequired | ID | Creator ID (a UUID returned by Toolies). |
media_idsrequired | ID list (max 10) | Media IDs from list_media or import_media, in display order. |
caption | string | Instagram caption, up to 2,200 characters, hashtags included. |
title | string | Internal name shown in Toolies’s calendar, never published. Defaults to the start of the caption or the file name. |
kind | reel · image · carousel | reel = one video, image = one photo, carousel = 2–10 items. Inferred from the media when omitted. |
action | draft · schedule · publish_now | Defaults to schedule when scheduled_at is set, otherwise draft. |
scheduled_at | string | ISO 8601 date-time. With an offset (2026-10-05T18:30:00+02:00) it is exact; without one (2026-10-05T18:30) it is read in the given time zone. |
timezone | string | IANA time zone such as Europe/Paris or America/New_York. Defaults to the workspace’s usual zone (see get_workspace). |
Schedule postsschedule_postsMakes changesCalendar view
Schedules up to 50 posts in one go, e.g. a creator’s whole week. Each post is checked and scheduled on its own; the result says which succeeded and why any failed, so you can fix and retry only those. Confirm the plan with the user before scheduling many posts.
Try“Schedule Ava’s Reels for next week, two a day in the evening.”
| Parameter | Type | Description |
|---|---|---|
postsrequired | list of posts (max 50) | |
posts[].creator_idrequired | ID | Creator ID (a UUID returned by Toolies). |
posts[].media_idsrequired | ID list (max 10) | Media IDs from list_media or import_media, in display order. |
posts[].caption | string | Instagram caption, up to 2,200 characters, hashtags included. |
posts[].title | string | Internal name shown in Toolies’s calendar, never published. Defaults to the start of the caption or the file name. |
posts[].kind | reel · image · carousel | reel = one video, image = one photo, carousel = 2–10 items. Inferred from the media when omitted. |
posts[].scheduled_atrequired | string | ISO 8601 date-time. With an offset (2026-10-05T18:30:00+02:00) it is exact; without one (2026-10-05T18:30) it is read in the given time zone. |
posts[].timezone | string | IANA time zone such as Europe/Paris or America/New_York. Defaults to the workspace’s usual zone (see get_workspace). |
timezone | string | Zone for every post that doesn’t set its own. |
Edit postupdate_postMakes changes
Changes a draft, scheduled, failed or blocked post: caption, title, media, creator or time. Only the fields you pass change. action=draft unschedules it, action=schedule (re)schedules it. Posts already sent to Instagram can’t be edited.
Try“Move Saturday’s Reel to 8 pm and add #summer.”
| Parameter | Type | Description |
|---|---|---|
post_idrequired | ID | Post ID (a UUID returned by Toolies). |
caption | string | Instagram caption, up to 2,200 characters, hashtags included. |
title | string | Internal name shown in Toolies’s calendar, never published. Defaults to the start of the caption or the file name. |
media_ids | ID list (max 10) | Media IDs from list_media or import_media, in display order. |
creator_id | ID | Creator ID (a UUID returned by Toolies). |
kind | reel · image · carousel | reel = one video, image = one photo, carousel = 2–10 items. Inferred from the media when omitted. |
scheduled_at | string | ISO 8601 date-time. With an offset (2026-10-05T18:30:00+02:00) it is exact; without one (2026-10-05T18:30) it is read in the given time zone. |
timezone | string | IANA time zone such as Europe/Paris or America/New_York. Defaults to the workspace’s usual zone (see get_workspace). |
action | keep · draft · schedule | keep leaves a scheduled post scheduled and a draft a draft. Default: "keep". |
Cancel postcancel_postCan’t be undone
Cancels a draft or scheduled post so it never publishes, and gives its quota back. Posts already sent to Instagram can’t be cancelled. Ask the user first.
Try“Cancel everything scheduled for Lena on Friday.”
| Parameter | Type | Description |
|---|---|---|
post_idrequired | ID | Post ID (a UUID returned by Toolies). |
Insights
Post statisticsget_insightsRead only
Statistics Instagram reports for published posts (views, likes, comments and more), newest first, optionally for one creator. Figures refresh automatically; missing values mean Instagram hasn’t reported them yet, not zero.
Try“Which of Mia’s Reels did best last week?”
| Parameter | Type | Description |
|---|---|---|
creator_id | ID | Creator ID (a UUID returned by Toolies). |
page | number 1–10000 | Page number, starting at 1. Default: 1. |
Best posting timesget_best_timesRead only
Ranks hours of the day and days of the week by average performance of past posts (views when available), for one creator or the roster. Needs several published posts with statistics; says so when there isn’t enough data instead of guessing.
Try“When should Ava post to get the most views?”
| Parameter | Type | Description |
|---|---|---|
creator_id | ID | Creator ID (a UUID returned by Toolies). |
timezone | string | IANA time zone such as Europe/Paris or America/New_York. Defaults to the workspace’s usual zone (see get_workspace). |