Slack User
Interaja com workspaces do Slack como um usuário através da API do Slack.
Documentação
Servidor MCP Slack User
Servidor MCP para a API do Slack, permitindo que o Claude interaja com workspaces do Slack como usuário.
Ferramentas
-
slack_list_channels- Lista canais públicos no workspace
- Entradas opcionais:
limit(número, padrão: 100, máximo: 200): Número máximo de canais a retornarcursor(string): Cursor de paginação para a próxima página
- Retorna: Lista de canais com seus IDs e informações
-
slack_post_message- Publica uma nova mensagem em um canal do Slack
- Entradas obrigatórias:
channel_id(string): O ID do canal onde publicartext(string): O texto da mensagem a publicar
- Retorna: Confirmação de publicação da mensagem e timestamp
-
slack_reply_to_thread- Responde a um tópico de mensagem específico
- Entradas obrigatórias:
channel_id(string): O canal que contém o tópicothread_ts(string): Timestamp da mensagem paitext(string): O texto da resposta
- Retorna: Confirmação da resposta e timestamp
-
slack_add_reaction- Adiciona uma reação de emoji a uma mensagem
- Entradas obrigatórias:
channel_id(string): O canal que contém a mensagemtimestamp(string): Timestamp da mensagem para reagirreaction(string): Nome do emoji sem dois-pontos
- Retorna: Confirmação da reação
-
slack_get_channel_history- Obtém mensagens recentes de um canal
- Entradas obrigatórias:
channel_id(string): O ID do canal
- Entradas opcionais:
limit(número, padrão: 10): Número de mensagens a recuperar
- Retorna: Lista de mensagens com seu conteúdo e metadados
-
slack_get_thread_replies- Obtém todas as respostas em um tópico de mensagem
- Entradas obrigatórias:
channel_id(string): O canal que contém o tópicothread_ts(string): Timestamp da mensagem pai
- Retorna: Lista de respostas com seu conteúdo e metadados
-
slack_get_users- Obtém lista de usuários do workspace com informações básicas de perfil
- Entradas opcionais:
cursor(string): Cursor de paginação para a próxima páginalimit(número, padrão: 100, máximo: 200): Número máximo de usuários a retornar
- Retorna: Lista de usuários com seus perfis básicos
-
slack_get_user_profile- Obtém informações detalhadas de perfil para um usuário específico
- Entradas obrigatórias:
user_id(string): O ID do usuário
- Retorna: Informações detalhadas do perfil do usuário
Configuração
-
Crie um App do Slack:
- Visite a página de Apps do Slack
- Clique em "Create New App"
- Escolha "From scratch"
- Dê um nome ao seu app e selecione seu workspace
-
Configure os Escopos do Token de Usuário: Navegue até "OAuth & Permissions" e adicione estes escopos:
channels:history- Visualizar mensagens e outros conteúdos em canais públicoschannels:read- Visualizar informações básicas de canaischat:write- Enviar mensagens como você mesmoreactions:write- Adicionar reações de emoji a mensagensusers:read- Visualizar usuários e suas informações básicas
-
Instale o App no Workspace:
- Clique em "Install to Workspace" e autorize o app
- Salve o "User OAuth Token" que começa com
xoxp-.
-
Para tokens de nível organizacional, obtenha seu Team ID (começa com um
T) seguindo esta orientação. É opcional para tokens de workspace comuns.
Trate os tokens OAuth como segredos. Não os envie para repositórios, não os coloque em issues ou pull requests, nem os cole em configurações compartilhadas. Rotacione um token imediatamente se ele for exposto.
Uso com Claude Desktop
Adicione o seguinte ao seu claude_desktop_config.json:
Instalação Local
Primeiro instale e construa o servidor:
git clone https://github.com/lars-hagen/slack-user-mcp.git
cd slack-user-mcp
npm install
npm run build
Em seguida, configure o Claude Desktop:
{
"mcpServers": {
"slack": {
"command": "npm",
"args": [
"run",
"--prefix",
"/path/to/slack-user-mcp",
"start"
],
"env": {
"SLACK_TOKEN": "xoxp-your-user-token"
}
}
}
}
NPX
Este projeto não está publicado no npm. Não use um nome de pacote npx para ele. Clone e construa localmente conforme mostrado acima e, em seguida, use a configuração local.
Docker
{
"mcpServers": {
"slack": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SLACK_TOKEN",
"slack-user-mcp"
],
"env": {
"SLACK_TOKEN": "xoxp-your-user-token"
}
}
}
}
Construa a imagem primeiro com docker build -t slack-user-mcp .. Adicione -e SLACK_TEAM_ID e SLACK_TEAM_ID ao env somente ao usar um token de nível organizacional.
Instalação via Smithery
Para instalar o Slack User Server para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install @lars-hagen/slack-user-mcp --client claude
Solução de Problemas
Se você encontrar erros de permissão, verifique se:
- Todos os escopos necessários foram adicionados ao seu app do Slack
- O app está instalado corretamente no seu workspace
- O token e, quando necessário, o ID do workspace foram copiados corretamente para sua configuração
- O app foi adicionado aos canais que precisa acessar
- Você está usando um User OAuth Token (começa com
xoxp-) em vez de um Bot Token
Build
Build Docker:
docker build -t slack-user-mcp .
Status de manutenção
Este projeto recebe manutenção focada e de melhor esforço. Não possui SLA de suporte. Por favor, relate preocupações de segurança de forma privada, conforme descrito em SECURITY.md.
Licença
Este servidor MCP é licenciado sob a Licença MIT. Isso significa que você é livre para usar, modificar e distribuir o software, sujeito aos termos e condições da Licença MIT. Para mais detalhes, consulte o arquivo LICENSE no repositório do projeto.