Reference: tools
Every tool a bot has comes from the gateway. The agent sees them as
mcp__huskarl__<name>, for example mcp__huskarl__gmail_send. Which ones a bot
gets depends on what it is connected to. The list is set when the agent starts.
The classes and their defaults are in Concepts. Tools that wait for approval have "Waits for the user's approval." in their description.
Only bots connected to Gmail get the Gmail tools, and only bots connected to Outlook get the Outlook tools. Bots connected to neither get Testpost. See Mail.
| Tool | Class | Arguments |
|---|---|---|
gmail_list_inbox |
Read | query (Gmail search), max (1–50) |
gmail_read_message |
Read | id |
gmail_read_attachment |
Read | id, name |
gmail_create_draft |
Draft | to, cc, subject, body, in_reply_to |
gmail_archive |
Change internally | id |
gmail_send |
Send | to, cc, bcc, subject, body, in_reply_to |
outlook_list_inbox |
Read | query, max (1–50) |
outlook_read_message |
Read | id |
outlook_read_attachment |
Read | id, name |
outlook_create_draft |
Draft | to, cc, subject, body, in_reply_to |
outlook_archive |
Change internally | id |
outlook_send |
Send | to, cc, bcc, subject, body, in_reply_to |
testpost_list_inbox |
Read | none |
testpost_read_message |
Read | id |
testpost_read_attachment |
Read | id, name |
testpost_create_draft |
Draft | to, subject, body, in_reply_to |
testpost_archive |
Change internally | id |
testpost_send |
Send | to, subject, body, in_reply_to |
to, subject and body are required for drafts and sending. The recipients in
to, cc and bcc are what the domain rules look at.
Browser
Only for bots with sites. See Browser.
| Tool | Class | Arguments |
|---|---|---|
browser_open |
Read | url |
browser_snapshot |
Read | none |
browser_read |
Read | none |
browser_back |
Read | none |
browser_screenshot |
Read | none |
browser_fill |
Draft | ref, text |
browser_type |
Draft | text |
browser_click |
Change internally, or stricter depending on what the click hits | ref, label |
browser_click_at |
Change internally, or stricter depending on what the click hits | x, y, label |
browser_request_login |
Draft | site, reason |
Routines
All bots. See Routines.
| Tool | Class | Arguments |
|---|---|---|
routines_create |
Change internally | name, prompt, schedule, and optionally only_when (new_mail, run_finished, webhook, new_files, before_meeting), after_bot, folder and minutes |
routines_list |
Read | none |
routines_delete |
Change internally | id |
Approvals
All bots. See Approvals and rules.
| Tool | Class | Arguments |
|---|---|---|
approvals_list |
Read | none |
approvals_propose_decision |
Draft | ids, approve, note |
approvals_propose_decision decides nothing. It puts a confirmation card in the
thread.
Memory
All bots. See Memory.
| Tool | Class | Arguments |
|---|---|---|
memory_list |
Read | none |
memory_remember |
Draft | text |
memory_update |
Draft | id, text |
memory_forget |
Change internally | id |
Documents
All bots. See Documents.
| Tool | Class | Arguments |
|---|---|---|
documents_save |
Draft | name (its ending says what it is), content, append (for .csv, .md, .txt) |
Teams
Bots connected to Microsoft Teams. See Mail.
| Tool | Class | Arguments |
|---|---|---|
teams_list_chats |
Read | none |
teams_read_chat |
Read | chat, max (1–50) |
teams_send |
Send | chat, text |
GitHub
Bots connected to GitHub. See GitHub.
| Tool | Class | Arguments |
|---|---|---|
github_list_repos |
Read | none |
github_list_issues |
Read | repo, state (open, closed, all), labels, since, max (1–100) |
github_search |
Read | query, repo, max (1–50) |
github_read_issue |
Read | repo, number, max comments (1–100) |
github_read_pull |
Read | repo, number |
github_commits |
Read | repo, from, to, max (1–250) |
github_releases |
Read | repo, max (1–20) |
github_comment |
Send | repo, number, body |
github_label |
Send | repo, number, add, remove |
github_close |
Send | repo, number, reason (completed, not_planned), comment |
github_create_issue |
Send | repo, title, body, labels |
github_draft_release |
Send | repo, tag, name, body, target |
Félagi (your own tasks)
Bots connected to Félagi with a personal token. See Félagi.
| Tool | Class | Arguments |
|---|---|---|
felagi_my_issues |
Read | status |
felagi_search |
Read | query |
felagi_read_issue |
Read | issue |
felagi_my_time |
Read | from, to |
felagi_comment |
Send | issue, body |
felagi_set_status |
Send | issue, status (backlog, todo, in_progress, in_review, on_hold, done, canceled) |
felagi_log_time |
Send | issue, duration, spent_on, note |
Elyra Workspace
Bots connected to Elyra Workspace. See Elyra Workspace.
| Tool | Class | Arguments |
|---|---|---|
workspace_list_projects |
Read | none |
workspace_list_threads |
Read | project |
workspace_read_thread |
Read | thread_id, max_chars (500–50000) |
workspace_wait |
Read | thread_id, timeout_seconds (1–300) |
workspace_start |
Send | project, prompt, title, provider, worktree (default true) |
workspace_send |
Send | thread_id, text |
Calendar
Bots connected to a mailbox. See Mail.
| Tool | Class | Arguments |
|---|---|---|
calendar_list |
Read | days (1–14, 1 by default) |
calendar_book |
Send with attendees, otherwise Change internally | subject, start, minutes or end, attendees, location, notes |
Folders
Only bots with a routine that watches a folder. See Routines.
| Tool | Class | Arguments |
|---|---|---|
files_list |
Read | folder (optional) |
files_read |
Read | name, folder (optional when the bot has one folder) |
files_done |
Change internally | name, folder (optional) |
Colleagues
Only bots with "Can give tasks to other bots (Chief)" on. See Chief.
| Tool | Class | Arguments |
|---|---|---|
team_list |
Read | none |
team_ask |
Change internally | bot, task, may (look, draft or own, the default), only_to (a domain), max_tokens |
What does not exist
On purpose, there are no tools to delete mail, create filters or rules, forward,
move mail to other folders, approve proposals or change policy. A call to a tool
that is not in the list gives unknown tool <name>.