Skip to main content
Glama
oviron

slack-personal-mcp

by oviron

slack_schedule_message

Schedule a Slack message to post as yourself at a chosen future time, using timezone-aware ISO 8601 or Unix timestamps up to 120 days ahead.

Instructions

Schedule a message AS THE USER (chat.scheduleMessage, chat:write). post_at: ISO 8601 with a timezone (2026-10-23T09:00:00+03:00) or unix seconds, up to 120 days ahead. Other arguments and the style gate as in slack_send_message.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYes
formatNomarkdown
post_atYes
thread_tsNo
workspaceYes
channel_idYes
allow_promiseNo
reply_broadcastNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.3

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare a non-readOnly, open-world, non-idempotent write; the description adds genuinely new behavior: it posts as the user under chat:write, the post_at must carry a timezone, and the horizon is capped at 120 days. The 120-day limit and identity/scope disclosure are exactly the kind of pre-call constraints annotations cannot convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, none wasted: the action and identity come first, the tricky time parameter second, and the delegation pointer last. The dense parentheticals carry real information rather than filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Annotations cover the safety profile and an output schema exists, so the description need not explain returns. It fills the highest-risk gaps (identity, timezone format, scheduling horizon) but leaves the channel/thread/format semantics to a sibling's description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 8 parameters, but post_at — the only non-obvious one — gets a concrete format example, timezone requirement, unix-seconds alternative, and the 120-day cap. The remaining seven (text, channel_id, workspace, format, thread_ts, allow_promise, reply_broadcast) are deferred entirely to 'as in slack_send_message,' which requires opening another tool's docs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Schedule a message'), names the underlying API (chat.scheduleMessage) and scope (chat:write), and stresses AS THE USER. It is distinguishable from slack_send_message by the scheduling verb, though the distinction is left implicit rather than stated as a contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Scheduling versus immediate sending is implied by the verb, and the description points to slack_send_message for 'other arguments and the style gate.' It never explicitly says when to pick this over slack_send_message or how it relates to slack_list_scheduled/slack_cancel_scheduled, so the agent must infer the workflow.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.