trackmcp
Back to directory
mkusaka

mcp-server-slack-notify

View on GitHub

MCP server for sending notifications to Slack using OAuth bot tokens.

0 stars TypeScriptOthers Updated Jun 25, 2026

Documentation

@mkusaka/mcp-server-slack-notify

MCP server for sending notifications to Slack using OAuth bot tokens.

Features

  • Send formatted messages to Slack channels with title and description
  • Mention specific users automatically with the mention parameter
  • Support for Slack's markdown formatting
  • Clean message formatting with optional header
  • TypeScript support with full type safety

Installation

bash
npm install @mkusaka/mcp-server-slack-notify
# or
pnpm add @mkusaka/mcp-server-slack-notify

Configuration

Creating a Slack App

1. Create a new Slack app

    2. Configure OAuth scopes

      3. Install the app to your workspace

        4. Get your Bot Token

          5. Invite the bot to channels

            Environment Variables

            Set the following environment variables:

            • `SLACK_BOT_TOKEN` (required): Your Bot User OAuth Token from step 4
            • `SLACK_DEFAULT_CHANNEL` (optional): Default channel for notifications (e.g., `#general`)
            • `SLACK_MENTIONS` (optional): Default user IDs to mention in all messages (e.g., `U1234567890,U0987654321`)

            Usage with Claude Desktop

            Add to your Claude Desktop configuration:

            json
            {
              "mcpServers": {
                "slack-notify": {
                  "command": "npx",
                  "args": ["-y", "@mkusaka/mcp-server-slack-notify@latest"],
                  "env": {
                    "SLACK_BOT_TOKEN": "xoxb-your-token-here",
                    "SLACK_DEFAULT_CHANNEL": "#general",
                    "SLACK_MENTIONS": "U1234567890,U0987654321"
                  }
                }
              }
            }

            Usage with Claude Code

            You can add this MCP server to Claude Code using the following command:

            bash
            claude mcp add slack-notify -e SLACK_BOT_TOKEN=xoxb-your-token-here -e SLACK_DEFAULT_CHANNEL=#general -e SLACK_MENTIONS=U1234567890,U0987654321 -- npx -y @mkusaka/mcp-server-slack-notify@latest

            Or if you have the package installed globally:

            bash
            # Install globally first
            npm install -g @mkusaka/mcp-server-slack-notify
            
            # Then add to Claude Code
            claude mcp add slack-notify -e SLACK_BOT_TOKEN=xoxb-your-token-here -e SLACK_DEFAULT_CHANNEL=#general -e SLACK_MENTIONS=U1234567890,U0987654321 -- mcp-server-slack-notify

            To add with user scope (available across all projects):

            bash
            claude mcp add --scope user slack-notify -e SLACK_BOT_TOKEN=xoxb-your-token-here -e SLACK_DEFAULT_CHANNEL=#general -e SLACK_MENTIONS=U1234567890,U0987654321 -- npx -y @mkusaka/mcp-server-slack-notify@latest

            Available Tools

            send_slack_notification

            Sends a notification to a Slack channel.

            Parameters:

            • `channel` (optional): The Slack channel (e.g., #general or C1234567890)
            • `title` (optional): The notification title (if provided, displays with header formatting)
            • `description` (required): The notification body (supports Slack markdown)
            • `mention` (optional): User ID(s) to mention. Can be a single user ID (e.g., U1234567890) or multiple IDs separated by commas (e.g., U1234567890,U0987654321)

            Formatting Guide

            The description field supports Slack's mrkdwn formatting:

            • Mentions:
              • User: `` (use the user's ID)
              • Channel: `` (use the channel's ID)
              • @here: ``
              • @channel: ``
              • User groups: `` (use the subteam's ID)
              • Note: When using the `mention` parameter or `SLACK_MENTIONS` environment variable, user mentions are automatically added at the beginning of the message
            • Text formatting:
              • Bold: `*bold text*`
              • Italic: `_italic text_`
              • Strikethrough: `~strikethrough text~`
              • Code: `` `inline code` ``
              • Code block: ` ```code block``` `
              • Quote: `> quoted text`
              • Link: ``

            Development

            bash
            # Install dependencies
            pnpm install
            
            # Run tests
            pnpm test
            
            # Build
            pnpm build
            
            # Run in development mode
            pnpm start
            
            # Debug with MCP Inspector
            pnpm debug

            Testing

            The project includes comprehensive tests using Vitest with mocked Slack API calls.

            bash
            # Run tests
            pnpm test
            
            # Run tests in watch mode
            pnpm test:watch

            License

            MIT

            Frequently asked questions

            What is mcp-server-slack-notify?

            mcp-server-slack-notify is MCP server for sending notifications to Slack using OAuth bot tokens.

            How do I install mcp-server-slack-notify?

            Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

            Is mcp-server-slack-notify open source?

            Yes — it is hosted on GitHub at https://github.com/mkusaka/mcp-server-slack-notify.

            Related MCP tools

            Run your own MCP server? See who uses it and what to fix.

            Measure it with TrackMCP