loading…
Search for a command to run...
loading…
An MCP server that provides comprehensive access to the Slack Web API, enabling AI agents to search messages, manage channels, and create canvases. It features
An MCP server that provides comprehensive access to the Slack Web API, enabling AI agents to search messages, manage channels, and create canvases. It features 13 core tools and over 300 dynamic methods for complete automation of Slack workspace operations.
Operations-first Slack MCP server for Codex/Claude Code over stdio.
slack-max-api-mcpoperations (default): 21 operations-first tools onlydeveloper: operations tools + gateway_* + core Slack API toolslegacy: fixed core tools + optional catalog method tools (final count depends on method-tool settings)Environment:
SLACK_TOOL_EXPOSURE_MODE=operations|developer|legacySLACK_SMART_COMPAT_CORE_TOOLS=true|falseSLACK_ENABLE_METHOD_TOOLS=true|falseSLACK_MAX_METHOD_TOOLS=<number>smart is still accepted as an alias for developer.
The default surface is now operations-first and keeps raw API wrappers out of the main tool list:
ops_policy_info: runtime policy/audit guardrailsops_access_policy_info: active access profile, effective rules, pending requests, active grantsops_access_policy_set: switch active access-control profile (open, readonly, restricted)ops_access_request: create a scoped elevation request for read/write/admin/delete accessops_access_approve: approve a pending elevation request and activate a time-boxed grantops_access_revoke: revoke one grant or all active grantsops_playbook_list: built-in operations playbooksops_state_overview: inspect local operations state (incidents, digests, broadcasts, followups)ops_incident_create: create + optionally announce a tracked incidentops_incident_update: persist a status change and optionally post a thread updateops_incident_close: close a tracked incident with stored resolutionops_broadcast_prepare: prepare and store a broadcast draft before sendingops_playbook_run: run standardized workflows (incident_open, support_digest, release_broadcast)ops_channel_snapshot: activity/participant/thread snapshot for a channelops_unanswered_threads: find stale or unanswered question-like threadsops_sla_breach_scan: detect SLA breach threads across multiple channelsops_sla_followup: auto follow-up replies for SLA breaches with duplicate-suppression stateops_broadcast_message: send a prepared draft or direct operational announcementops_recent_failures: list recent human-readable failures from local diagnostics stateops_explain_error: explain one recorded failure with troubleshooting hintsops_audit_log_read: inspect local JSONL audit logsThese tools let teams run repeatable Slack operations without rebuilding multi-step API call chains, and they persist local operational state to make incidents/broadcasts/followups first-class records.
config/operations.jsonSLACK_OPERATIONS_CONFIG_PATH=<path>~/.slack-max-api-mcp/operations-state.jsonSLACK_OPERATIONS_STATE_PATH=<path>The operations config controls incident templates, digest defaults, broadcast templates, and follow-up suppression windows.
open, readonly, and restricted.ops_access_request, then explicitly approve it with ops_access_approve.ops_recent_failures and ops_explain_error.Codex, run ops_playbook_run with playbook=incident_open on #incident-war-room.
title is "DB Latency Spike", severity is "sev2", owner is "@oncall-db", dry_run=true.
Codex, run ops_playbook_run with playbook=support_digest for channels #support-kor and #support-global.
lookback_hours=24, sla_minutes=60, report_channel=#support-ops, dry_run=true.
Codex, run ops_sla_followup for channels #support-kor and #support-global.
sla_minutes=90, lookback_hours=24, max_messages=20, dry_run=true.
Codex, run ops_incident_create on #incident-war-room.
title is "API Error Spike", summary is "5xx rate above threshold", owner is "@oncall-api", dry_run=true.
Codex, run ops_state_overview with collection=incidents and limit=10.
SLACK_ENABLE_AUDIT_LOG=true|false (default: true)SLACK_AUDIT_LOG_PATH=<path> (default: ~/.slack-max-api-mcp/audit.log)SLACK_METHOD_ALLOWLIST=chat.postMessage,conversations.historySLACK_METHOD_DENYLIST=users.deletePhotoSLACK_METHOD_ALLOW_PREFIXES=chat.,conversations.SLACK_METHOD_DENY_PREFIXES=admin.If allowlist/allow-prefix is set, methods outside that policy are blocked.
npm install -g slack-max-api-mcp@latest
Codex:
codex mcp add slack-max -- npx -y slack-max-api-mcp
codex mcp list
Claude Code:
claude mcp add slack-max -- npx -y slack-max-api-mcp
claude mcp list
setx SLACK_CLIENT_ID "YOUR_CLIENT_ID"
setx SLACK_CLIENT_SECRET "YOUR_CLIENT_SECRET"
npx -y slack-max-api-mcp oauth login --profile my-workspace --team T1234567890
Helper commands:
npx -y slack-max-api-mcp oauth list
npx -y slack-max-api-mcp oauth use <profile_key_or_name>
npx -y slack-max-api-mcp oauth current
Run on central server:
setx SLACK_CLIENT_ID "YOUR_CLIENT_ID"
setx SLACK_CLIENT_SECRET "YOUR_CLIENT_SECRET"
setx SLACK_ONBOARD_SERVER_HOST "0.0.0.0"
setx SLACK_ONBOARD_SERVER_PORT "8790"
setx SLACK_ONBOARD_PUBLIC_BASE_URL "https://onboard.example.com"
npx -y slack-max-api-mcp onboard-server start
Run on team member PC:
npx -y slack-max-api-mcp onboard run
This flow opens browser OAuth via central server and saves tokens to local token store.
Default onboard server URL is https://43.202.54.65.sslip.io.
Use --server (or SLACK_ONBOARD_SERVER_URL) only when overriding it.
setx SLACK_BOT_TOKEN "xoxb-..."
setx SLACK_USER_TOKEN "xoxp-..."
token_override in tool inputSLACK_BOT_TOKEN / SLACK_USER_TOKEN / SLACK_TOKENSLACK_PROFILE or default profile).env.example fallback if SLACK_ALLOW_ENV_EXAMPLE_FALLBACK=truenpm install
npm run check
npm run build:catalog
npm run start
node src/slack-mcp-server.js help
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"slack-max-api-mcp": {
"command": "npx",
"args": []
}
}
}