Claude Code drafts it. You approve it. PostDelegate posts it.Slack: Text and image messages to the channel you pick.
How to post to Slack from Claude Code
- Add PostDelegate to Claude Code. Add the PostDelegate MCP server with the command below. Run /mcp inside Claude Code and authenticate the postdelegate server. Your browser opens to sign in.
Terminal
claude mcp add postdelegate --transport http "https://app.postdelegate.com/mcp-oauth-dynamic" - Connect Slack in PostDelegate. On the calendar page choose Add Channel, then Slack. Choose the workspace and allow PostDelegate. It asks to see the workspace's channels and members, join public channels and post messages. You need to be allowed to add apps to the workspace.
- Ask Claude Code for a draft. Describe the post in plain words. Claude Code checks your Slack channel's rules, creates the post and sends back a preview link.
Teach Claude Code the posting rules
Save the PostDelegate skill to ~/.claude/skills/postdelegate/SKILL.md. Call it with /postdelegate, or just ask for a post and Claude Code loads it. Agent files has the steps.
What to ask Claude Code
Mention any Slack setting in plain words and Claude Code fills it in. Claude Code can also read text files in your project, such as a changelog or a draft in Markdown.
- Draft a Slack message for #general about Friday’s all-hands and show me the preview link.
- Schedule a reminder in #team for Monday at 9:00: “Post your goals for the week.”
- Summarise the merged pull requests listed in RELEASES.md into a Slack update for #engineering, as a draft.
What Claude Code can do on your Slack channel
- Check the rules first. Before writing, it reads your Slack channel's length limit (4,000 characters) and required settings.
- Draft, schedule or post. It creates a draft, a scheduled post or an immediate post, and runs the same checks as the app.
- Use your media. It attaches files from your media library or adds one from a public link.
- Review and fix. It lists what is scheduled, changes the Slack settings of a post that has not gone out, and deletes posts you no longer want.
Slack is a workplace chat app, and scheduled messages are useful for announcements, reminders and updates that should land at a set time. PostDelegate sends each post as a message to the channel you choose, and text uses Slack's own formatting.
Slack settings Claude Code can fill in
| Setting | Notes |
|---|---|
| Channel | Required. Choose the Slack channel to post to. PostDelegate joins a public channel on its own before posting. |
Before you start
- PostDelegate cannot join private channels by itself. Invite the PostDelegate app to the channel in Slack, then pick it again.
- Messages are sent from the PostDelegate app, not your own Slack account.
The Slack channel guide has every field, and MCP tools lists exactly what an assistant can and cannot do.
Questions
Will Claude Code publish to Slack without asking me?
Do I need an API key to connect Claude Code?
Does it cost extra to use Claude Code with PostDelegate?
Can Claude Code attach images or video to a Slack post?
Does the message come from my own Slack account?
Can I schedule a message to a private Slack channel?
Slack from other assistants
Other networks from Claude Code
- YouTube
- Bluesky
- Mastodon
- Google Business Profile
- Telegram
- Discord
- Tumblr
- Lemmy
- Nostr
- Twitch
- Kick
- Dribbble
- DEV.to
- Medium
- WordPress
- Hashnode
- Listmonk (email)
Prefer to plan Slack posts yourself? See the Slack scheduler.