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

  1. 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 privados
      • include_web_public (booleano, padrão: true): Se deve incluir streams públicos da web
      • include_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
  2. zulip_post_message

    • Publica uma nova mensagem em um canal (stream) do Zulip
    • Entradas obrigatórias:
      • channel_name (string): O nome do stream para publicar
      • topic (string): O tópico dentro do stream
      • content (string): O conteúdo da mensagem a ser publicada
    • Retorna: Confirmação de publicação da mensagem e ID
  3. 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ários
      • content (string): O conteúdo da mensagem a ser enviada
    • Retorna: Confirmação de envio da mensagem e ID
  4. zulip_add_reaction

    • Adiciona uma reação de emoji a uma mensagem
    • Entradas obrigatórias:
      • message_id (número): O ID da mensagem para reagir
      • emoji_name (string): Nome do emoji sem dois-pontos
    • Retorna: Confirmação da reação
  5. zulip_get_channel_history

    • Obtém mensagens recentes de um canal (stream) e tópico
    • Entradas obrigatórias:
      • channel_name (string): O nome do stream
      • topic (string): O nome do tópico
    • Entradas opcionais:
      • limit (número, padrão: 20): Número de mensagens a recuperar
      • anchor (string, padrão: "newest"): ID da mensagem para começar
    • Retorna: Lista de mensagens com seu conteúdo e metadados
  6. 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
  7. 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
  8. 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

  1. 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"
  2. 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
  3. 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:

  1. A chave da API do bot está correta
  2. O bot foi inscrito nos canais que precisa acessar
  3. 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.