Slack MCP Server

by AVIMBU

Integrations

  • Provides the ability to interact with a Slack workspace by posting messages to channels and retrieving a list of all workspace users

Slack Model Context Protocol Server

This is a connector to allow Claude Desktop (or any MCP client) to interact with your Slack workspace to post messages and query a list of all users.

Local Development

In order to run this client locally, add the following configuration to your Claude Desktop MCP Server config file:

{ "mcpServers": { "mcp-slack-local": { "command": "node", "args": ["/path/to/project/dist/index.js"], <---- replace this with your project path "env": { "SLACK_BOT_USER_OAUTH_TOKEN": "test-bot-token", "SLACK_TEAM_ID": "test-team-id" } }, } }

After this, you should be able to test this implementation in your Claude Desktop App using example prompts like:

  • "Can you list all users of my Slack team?"
  • "Can you send a welcome message to my Slack Channel with the ID <channel id>?"

Running the server locally:

node dist/index.js

With the build in another terminal

npm run watch

Slack Permission Scopes

The following permissions are already implemented:

PermissionDescriptionImplemented
app_configurations:readRead app configuration info via App Manifest APIs
app_configurations:writeWrite app configuration info and create apps via App Manifest APIs
app_mentions:readView messages that directly mention @your_slack_app in conversations that the app is in
assistant:writeAllow your slack app to act as an AI Assistant
bookmarks:readList bookmarks
bookmarks:writeCreate, edit, and remove bookmarks
calls:readView information about ongoing and past calls
calls:writeStart and manage calls in a workspace
canvases:readyour slack app will be able to access contents of canvases created inside Slack.
canvases:writeyour slack app will be able to create, edit and remove canvases.
channels:historyView messages and other content in public channels that your slack app has been added to
channels:joinJoin public channels in a workspace
channels:manageManage public channels that your slack app has been added to and create new ones
channels:readView basic information about public channels in a workspace
channels:write.invitesInvite members to public channels
channels:write.topicSet the description of public channels
chat:writePost messages in approved channels & conversations
chat:write.customizeSend messages as @your_slack_app with a customized username and avatar
chat:write.publicSend messages to channels @your_slack_app isn't a member of
commandsAdd shortcuts and/or slash commands that people can use
conversations.connect:manageAllows your slack app to manage Slack Connect channels
conversations.connect:readReceive Slack Connect invite events sent to the channels your slack app is in
conversations.connect:writeCreate Slack Connect invitations for channels that your slack app has been added to, and accept invitations sent to your slack app
datastore:readView and see data from Slack App Datastore
datastore:writeWrite data to Slack App Datastore
dnd:readView Do Not Disturb settings for people in a workspace
emoji:readView custom emoji in a workspace
files:readView files shared in channels and conversations that your slack app has been added to
files:writeUpload, edit, and delete files as your slack app
groups:historyView messages and other content in private channels that your slack app has been added to
groups:readView basic information about private channels that your slack app has been added to
groups:writeManage private channels that your slack app has been added to and create new ones
groups:write.invitesInvite members to private channels
groups:write.topicSet the description of private channels
im:historyView messages and other content in direct messages that your slack app has been added to
im:readView basic information about direct messages that your slack app has been added to
im:writeStart direct messages with people
im:write.topicSet the description in direct messages
incoming-webhookCreate one-way webhooks to post messages to a specific channel
links.embed:writeEmbed video player URLs in messages and app surfaces
links:readView URLs in messages
links:writeShow previews of URLs in messages
metadata.message:readAllows your slack app to read message metadata in channels that your slack app has been added to
mpim:historyView messages and other content in group direct messages that your slack app has been added to
mpim:readView basic information about group direct messages that your slack app has been added to
mpim:writeStart group direct messages with people
mpim:write.topicSet the description in group direct messages
noneExecute methods without needing a scope
pins:readView pinned content in channels and conversations that your slack app has been added to
pins:writeAdd and remove pinned messages and files
reactions:readView emoji reactions and their associated content in channels and conversations that your slack app has been added to
reactions:writeAdd and edit emoji reactions
reminders:readView reminders created by your slack app
reminders:writeAdd, remove, or mark reminders as complete
remote_files:readView remote files added by the app in a workspace
remote_files:shareShare remote files on a user's behalf
remote_files:writeAdd, edit, and delete remote files on a user's behalf
search:read.filesSearch a workspace's content in files
search:read.imSearch a workspace's content in direct messages
search:read.mpimSearch a workspace's content in group direct messages
search:read.privateSearch a workspace's content in private channels
search:read.publicSearch a workspace's content in public channels
team.billing:readAllows your slack app to read the billing plan for workspaces your slack app has been installed to
team.preferences:readAllows your slack app to read the preferences for workspaces your slack app has been installed to
team:readView the name, email domain, and icon for workspaces your slack app is connected to
tokens.basicExecute methods without needing a scope
triggers:readRead new Platform triggers
triggers:writeCreate new Platform triggers
usergroups:readView user groups in a workspace
usergroups:writeCreate and manage user groups
users.profile:readView profile details about people in a workspace
users:readView people in a workspace
users:read.emailView email addresses of people in a workspace
users:writeSet presence for your slack app
workflow.steps:executeAdd steps that people can use in Workflow Builder
workflows.templates:readRead a workflow template
workflows.templates:writeWrite a workflow template

Contact

If you have questions, feel free to contact us via AVIMBU.

-
security - not tested
F
license - not found
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

A connector enabling Claude Desktop or any MCP client to interact with Slack workspaces to post messages and query user lists.

  1. Local Development
    1. Slack Permission Scopes
      1. Contact

        Related MCP Servers

        • A
          security
          A
          license
          A
          quality
          MCP Server for the Slack API, enabling Claude to interact with Slack workspaces.
          Last updated -
          8
          7,787
          44,966
          JavaScript
          MIT License
          • Apple
        • -
          security
          A
          license
          -
          quality
          Provides Discord integration capabilities to MCP clients like Claude Desktop.
          Last updated -
          12
          53
          Python
          MIT License
          • Apple
        • A
          security
          A
          license
          A
          quality
          Enables interaction with Slack workspaces as a user, supporting channel listing, message posting, threading, reactions, and user management via the Slack API.
          Last updated -
          8
          3
          JavaScript
          MIT License
        • -
          security
          F
          license
          -
          quality
          An MCP server that enables LLMs to access Slack's search functionality to retrieve users, channels, messages, and thread replies from a Slack workspace.
          Last updated -
          TypeScript

        View all related MCP servers

        ID: x20zczf7og