Slack has an undocumented client API for managing drafts. It supports:
- list drafts
- create draft
- update draft
- delete draft
Reference:
https://github.com/karbassi/slack-mcp/blob/1c0f8cc503e5f1ebb7f43eb649eb4e07bd76eda0/src/slack_mcp/tools/undocumented.py#L112-L233
Adding this would let agents read and write drafts that show up natively in the user's Slack client, instead of only posting messages directly.
Problem
agent-slack message draft <target> [text] already exists, but it opens a browser editor for human-in-the-loop composing and is not connected to Slack's own drafts.
Adding Slack-native draft operations under the same draft name will likely confuse the LLM.
Options
-
Separate plural subcommand: add message drafts list / create / update / delete, keep the existing singular message draft as-is.
-
Rename and reuse draft: rename message draft to message compose (matches what it does), then use message draft <list | create | update | delete> for the Slack-native operations.
-
Replace: drop the browser editor and repurpose message draft for the Slack-native operations.
Wanted to align on direction with the team before opening any PRs. Open to other options too.
Slack has an undocumented client API for managing drafts. It supports:
Reference:
https://github.com/karbassi/slack-mcp/blob/1c0f8cc503e5f1ebb7f43eb649eb4e07bd76eda0/src/slack_mcp/tools/undocumented.py#L112-L233
Adding this would let agents read and write drafts that show up natively in the user's Slack client, instead of only posting messages directly.
Problem
agent-slack message draft <target> [text]already exists, but it opens a browser editor for human-in-the-loop composing and is not connected to Slack's own drafts.Adding Slack-native draft operations under the same
draftname will likely confuse the LLM.Options
Separate plural subcommand: add
message drafts list / create / update / delete, keep the existing singularmessage draftas-is.Rename and reuse
draft: renamemessage drafttomessage compose(matches what it does), then usemessage draft <list | create | update | delete>for the Slack-native operations.Replace: drop the browser editor and repurpose
message draftfor the Slack-native operations.Wanted to align on direction with the team before opening any PRs. Open to other options too.