Skip to main content
Glama
Palgenius

Claude Code ⇄ Slack

by Palgenius

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SLACK_APP_TOKENYesSlack app-level token starting with xapp- from the Socket Mode setup (step 2).
SLACK_BOT_TOKENYesBot User OAuth Token starting with xoxb- from the Install App step (step 6).
SLACK_CHANNEL_IDYesThe channel ID starting with C, e.g. C01ABCDEFGH (step 8).

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}
experimental
{
  "claude/channel": {}
}

Tools

Functions exposed to the LLM to take actions

NameDescription
send_slack_messageA

Send a message to a Slack channel. Use this to reply to webhook channel incoming messages from Slack. Returns the message timestamp (ts) — pass it to update_slack_message to rewrite this message later, which is how a progress or "working on it" marker is kept to one line instead of many.

update_slack_messageA

Rewrite a message already posted, given its timestamp from send_slack_message. Use it to keep a live status marker on one line: post "working on X", then update it as the work moves and once more when it is done. Far better than posting a new message per step. Only messages this bot posted can be rewritten.

send_slack_imageA

Upload a local image or file into a Slack channel, so it appears inline rather than as a link. Use for screenshots, diagrams and charts. The path must be a file on this machine.

slack_progressA

A live checklist in Slack, kept to one message that rewrites itself as the work moves. Call once with steps to post the board and get back a ts; call again with that ts and update to change a step. Use it for any job with several stages — it replaces a run of "doing X now" messages with one line per step that people can glance at. Statuses: pending, active (the one running now), done, failed, skipped.

create_slack_canvasA

Create a Slack canvas in a channel from markdown. Use for reference material people will come back to — a checklist, a runbook, a spec — rather than a message that scrolls away. Supports headings, lists, checkboxes, bold and code.

slack_statusA

Check whether the Slack bridge is actually working end to end: is this server connected, is the mention watcher running (without it nothing inbound reaches this session), how many messages are waiting, and what other projects are connected to the same Slack app. Call this first whenever Slack seems unresponsive, or after starting a session, instead of guessing.

check_slack_inboxA

Read Slack messages that @mentioned the bot and have not been read yet. Use this when the session cannot receive channel notifications (started without --channels), or to catch up on anything missed. Each message comes back with its channel id, so you can reply with send_slack_message.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4/5.0

Scored across 7 tools

Disambiguation4/5

Each tool has a fairly distinct purpose: reading, sending, updating, uploading images, progress checklist, canvas creation, and diagnostics. There is mild overlap between slack_progress and update_slack_message since both rewrite an existing message, but descriptions clearly explain when to use each (progress board vs. single status line).

Naming Consistency3/5

Conventions are mixed: check_slack_inbox, send_slack_message, update_slack_message, send_slack_image, create_slack_canvas use verb_slack_noun, while slack_progress and slack_status invert to noun-first. Still readable, but not a predictable pattern across the set.

Tool Count5/5

Seven tools map cleanly onto the Slack bridge's needs—inbound read, outbound send/update, file upload, progress, canvas, and health—without redundancy or thinness.

Completeness4/5

Covers read, reply, edit, upload, structured progress, persistent canvas, and diagnostics, which is strong lifecycle coverage. Missing a few likely operations like reacting to messages, listing channels, or deleting messages, but these are minor gaps agents can work around.

Maintenance

ActivityMaintained
ResponsivenessNo issues