Zulip MCP Server
Interaja com workspaces do Zulip usando a API do Zulip.
Documentação
Servidor MCP do Zulip
Servidor MCP para a API do Zulip, permitindo que assistentes de IA como o Claude interajam com espaços de trabalho do Zulip.
Ferramentas
-
zulip_list_channels- Lista os canais (streams) disponíveis na organização do Zulip
- Entradas opcionais:
include_private(booleano, padrão: false): Se deve incluir streams privadosinclude_web_public(booleano, padrão: true): Se deve incluir streams públicos da webinclude_subscribed(booleano, padrão: true): Se deve incluir streams aos quais o bot está inscrito
- Retorna: Lista de streams com seus IDs e informações
-
zulip_post_message- Publica uma nova mensagem em um canal (stream) do Zulip
- Entradas obrigatórias:
channel_name(string): O nome do stream para publicartopic(string): O tópico dentro do streamcontent(string): O conteúdo da mensagem a ser publicada
- Retorna: Confirmação de publicação da mensagem e ID
-
zulip_send_direct_message- Envia uma mensagem direta para um ou mais usuários
- Entradas obrigatórias:
recipients(string[]): Endereços de e-mail ou IDs de usuário dos destinatárioscontent(string): O conteúdo da mensagem a ser enviada
- Retorna: Confirmação de envio da mensagem e ID
-
zulip_add_reaction- Adiciona uma reação de emoji a uma mensagem
- Entradas obrigatórias:
message_id(número): O ID da mensagem para reagiremoji_name(string): Nome do emoji sem dois-pontos
- Retorna: Confirmação da reação
-
zulip_get_channel_history- Obtém mensagens recentes de um canal (stream) e tópico
- Entradas obrigatórias:
channel_name(string): O nome do streamtopic(string): O nome do tópico
- Entradas opcionais:
limit(número, padrão: 20): Número de mensagens a recuperaranchor(string, padrão: "newest"): ID da mensagem para começar
- Retorna: Lista de mensagens com seu conteúdo e metadados
-
zulip_get_topics- Obtém tópicos em um canal (stream)
- Entradas obrigatórias:
channel_id(número): O ID do stream
- Retorna: Lista de tópicos no stream
-
zulip_subscribe_to_channel- Inscreve o bot em um canal (stream)
- Entradas obrigatórias:
channel_name(string): O nome do stream para se inscrever
- Retorna: Confirmação de inscrição
-
zulip_get_users- Obtém a lista de usuários na organização do Zulip
- Retorna: Lista de usuários com suas informações básicas
Configuração
-
Crie um Bot do Zulip:
- Faça login na sua instância do Zulip
- Navegue até Configurações > Pessoal > Bots
- Clique em "Adicionar um novo bot"
- Selecione o tipo "Bot genérico"
- Preencha as informações necessárias
- Clique em "Criar bot"
-
Permissões:
- Por padrão, os bots do Zulip têm permissões limitadas
- Certifique-se de inscrever o bot em todos os streams que ele precisa acessar
- Se você precisar que o bot tenha mais permissões, considere usar uma conta de usuário completa
-
Obtenha as credenciais da API:
- Endereço de e-mail do bot
- Chave da API do bot (exibida quando você cria o bot)
- URL da instância do Zulip (ex.: https://example.zulipchat.com)
Uso com o Claude Desktop
Adicione o seguinte ao seu claude_desktop_config.json:
npx
{
"mcpServers": {
"zulip": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-zulip"
],
"env": {
"ZULIP_EMAIL": "your-bot@example.zulipchat.com",
"ZULIP_API_KEY": "your-bot-api-key",
"ZULIP_URL": "https://example.zulipchat.com"
}
}
}
}
docker
{
"mcpServers": {
"zulip": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ZULIP_EMAIL",
"-e",
"ZULIP_API_KEY",
"-e",
"ZULIP_URL",
"mcp/zulip"
],
"env": {
"ZULIP_EMAIL": "your-bot@example.zulipchat.com",
"ZULIP_API_KEY": "your-bot-api-key",
"ZULIP_URL": "https://example.zulipchat.com"
}
}
}
}
Solução de problemas
Se você encontrar erros de permissão, verifique se:
- A chave da API do bot está correta
- O bot foi inscrito nos canais que precisa acessar
- A URL do Zulip está correta e acessível
Build
Build do Docker:
docker build -t mcp/zulip .
Licença
Copyright 2025 Monadical
Licenciado sob a Licença Apache, Versão 2.0 (a "Licença"); você não pode usar este arquivo exceto em conformidade com a Licença. Você pode obter uma cópia da Licença em
http://www.apache.org/licenses/LICENSE-2.0
A menos que exigido pela lei aplicável ou acordado por escrito, o software distribuído sob a Licença é distribuído "COMO ESTÁ", SEM GARANTIAS OU CONDIÇÕES DE QUALQUER TIPO, expressas ou implícitas. Consulte a Licença para as permissões específicas e limitações sob a Licença.
Este produto inclui componentes de software de terceiros. Consulte os arquivos LICENSE e NOTICE para obter detalhes.