Reference all twelve Discord tools the agent uses for embeds, pings, file sending, forks, reminders, and chains.
ollim-bot gives the agent twelve Discord tools for sending messages, sending files, managing forks, reporting findings, scheduling reminders, and scheduling follow-ups — all without direct access to the Discord API.The agent also has access to a docs server — a remote server at docs.ollim.ai/mcp that lets it look up its own documentation and architecture.
Available in all contexts. Send a rich embed message with optional action buttons.
Parameter
Type
Required
Default
Description
title
string
Yes
—
Embed title
description
string
No
—
Embed body text
color
string
No
"blue"
blue (info), green (success), red (urgent), yellow (warning), purple (fork)
fields
array
No
[]
Objects with name (string, required), value (string, required), inline (boolean, optional)
buttons
array
No
[]
Objects with label (string, required), action (string, required), style (string, optional). Max 5.
critical
boolean
No
false
Bypasses per-session limit, busy check, and ping budget when true
Button actions follow a type:payload format:
Action
Description
task_done:<task_id>
Mark a Google Task as complete
task_del:<task_id>
Delete a Google Task
event_del:<event_id>
Delete a Google Calendar event
dismiss:
Delete the embed message
agent:<prompt>
Send a prompt back to the agent
Button styles:success, danger, primary, secondary.Availability: Main session, interactive forks, and background forks. In background forks, the embed is blocked if allow-ping is false, the user is mid-conversation (unless critical is true), or the ping budget is exhausted. A source tag (bg or fork) is added to the embed footer when not in the main session.
Background-fork-only. Send a plain text alert prefixed with [bg].
Parameter
Type
Required
Default
Description
message
string
Yes
—
The message to send
critical
boolean
No
false
Bypasses per-session limit, busy check, and ping budget when true
Availability: Background forks only. Not available in the main session or interactive forks. Subject to the same allow-ping, busy check, and ping budget gates as discord_embed.
Available in all contexts. Send a file from the local filesystem as a Discord DM attachment — documents, images, logs, or any file you need. Max 25 MB (Discord limit).
Parameter
Type
Required
Default
Description
file_path
string
Yes
—
Path to the file (absolute or ~/...)
message
string
No
—
Optional message to accompany the file
critical
boolean
No
false
Set true only when the user would be devastated if they missed this
The tool validates that the path points to an existing regular file via path.is_file(), supports tilde expansion, and enforces Discord’s 25 MB size limit.Availability: Main session, interactive forks, and background forks. In background forks, the tool is blocked if allow-ping is false, subject to the ping budget, and prefixes messages with [bg].
All three output tools register the message so that replies are correctly routed back to the fork that sent them.
Availability: Main session only. Returns an error if already inside any fork (interactive or background). The fork interrupts the current agent turn immediately.
Request to promote the current interactive fork to the main session. Instead of executing directly, this tool sends a yellow confirmation embed to Discord with three buttons:
Button
Style
Action
Confirm
Green
Promotes the fork to the main session
Report Instead
Blurple
Switches to report mode
Dismiss
Grey
Deletes the embed and continues the fork
The save only happens when you click Confirm — the agent cannot assume the save succeeded. This prevents unintended saves when the agent calls the tool proactively.Takes no parameters.Availability: Interactive forks only. Returns an error in background forks or the main session.
Most forks don’t qualify — see exit strategies
for when to use this vs. other options.
Report a summary from the current fork to the main session. The summary is injected into the next main-session interaction via pending_updates.json.
Parameter
Type
Required
Default
Description
message
string
Yes
—
Short summary of what was found
Interactive fork
Background fork
Sets the exit action to REPORT. The fork is discarded after the agent finishes responding — further tool calls delay the exit.
Appends the update and marks the fork as reported. The fork continues running. Blocked if update-main-session is set to blocked in the background fork config.
Availability: Interactive forks and background forks. Returns an error in the main session.
Exit the current interactive fork. The fork is discarded and the main session resumes. No context is preserved.Takes no parameters.Availability: Interactive forks only. Returns an error in background forks or the main session.
Schedule a one-shot reminder. Provide either delay_minutes or run_at — not both.
Parameter
Type
Required
Default
Description
prompt
string
Yes
—
Instructions for the agent at fire time
delay_minutes
integer
No
—
Fire in N minutes from now
run_at
string
No
—
ISO datetime (e.g. 2026-03-13T15:00). Uses bot timezone if no offset.
description
string
No
""
Short summary shown in the reminder list
foreground
boolean
No
false
Use only when the user wants to watch tool actions stream. Background with ping_user handles notifications.
max_chain
integer
No
0
Max follow-up chain depth (0 = plain one-shot)
Availability: Main session, interactive forks, and background forks. Reminder tools are not gated by allow-ping — they are data operations, not output operations.
List all pending reminders with their IDs, scheduled times, modes, and descriptions. Takes no parameters.Availability: Main session, interactive forks, and background forks.
Schedule a follow-up reminder that continues the current chain. Used by reminders with max-chain to create self-continuing check-in sequences.
Parameter
Type
Required
Default
Description
minutes_from_now
integer
Yes
—
Minutes until the next check fires
The tool creates a new reminder with the chain depth incremented by one. The tool forwards all configuration from the current chain: background, model, thinking, isolated, update-main-session, allow-ping, allowed-tools, and skills.Returns an error if:
No active reminder context exists (the tool was called outside a reminder-triggered session)
The chain depth has reached max-chain — the error includes recovery
guidance: “follow-up limit reached — this was the last check. If the
task still needs attention, ping the user now.”
If the task is done or no follow-up is needed, don’t call follow_up_chain. The chain ends naturally.