# ZulipChat MCP Server [Health: Active]

**Category:** 💬 Communication  
**Repository:** https://github.com/akougkas/zulipchat-mcp  
**GitHub Stars:** 30  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/zulipchat-mcp-server

## Description
ZulipChat MCP: Connect AI to Zulip with 60+ tools for messaging, streams, events, and analytics

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "zulipchat-mcp-server": {
    "command": "uvx",
    "args": ["zulipchat-mcp"]
  }
}
```

## Documentation

## What ZulipChat MCP Server MCP server does

ZulipChat MCP Server MCP server gives an MCP-compatible AI client access to a Zulip workspace. The default tool set covers common messaging and workspace tasks: sending and editing messages, retrieving messages, adding reactions, searching conversation history, inspecting streams and topics, resolving users, and checking the connected account.

The server also supports agent-oriented communication. An assistant can bind a session to a Zulip topic, register an agent, exchange messages, request user input, and wait for responses. With two Zulip configuration files, it can switch between a regular user identity and a bot identity during the same session.

## How it works

The process reads Zulip credentials from a zuliprc file supplied with `--zulip-config-file`. It communicates with MCP clients over stdio by default, which fits local configurations for clients such as Claude Desktop, Cursor, Windsurf, Gemini CLI, and Claude Code. HTTP transport is also available for remote deployments and can use a bearer token for access control.

Only the core tools are registered unless extended mode is enabled. This keeps the default tool surface smaller for clients that mainly need messaging, search, reactions, user lookup, and session communication. The `--extended-tools` option, or `ZULIPCHAT_EXTENDED_TOOLS=1`, exposes additional capabilities.

## Setup and configuration

Install and run the package with:

```bash
uvx zulipchat-mcp --zulip-config-file ~/.zuliprc
```

The zuliprc file can be downloaded from Zulip under Settings, Personal, Account & privacy, and API key. An interactive setup command is also provided:

```bash
uvx --from zulipchat-mcp zulipchat-mcp-setup
```

Useful options include `--zulip-bot-config-file` for a second identity, `--transport http` for HTTP mode, `--host` and `--port` for binding, `--auth-token` for HTTP bearer authentication, `--unsafe` for administrative tools, and `--debug` for debug logging.

AI analytics tools can use a server-side Anthropic provider when `ANTHROPIC_API_KEY` is set. `ANTHROPIC_MODEL` can override the default model. Without that key, the analytics tools return structured summaries for the connected client to analyze instead.

## Tools and capabilities

Core capabilities include:

- Send, edit, retrieve, and react to Zulip messages.
- Search messages with stream, sender, and time-related filters.
- Inspect streams, stream details, and stream topics.
- Resolve users by name and retrieve user information.
- Manage message flags and switch between configured identities.
- Coordinate agent sessions through topics, messages, approvals, and responses.

Extended mode adds scheduled messages, drafts, event registration and retrieval, event listening, file uploads and management, presence information, user groups, advanced search, daily summaries, user muting, and analytics tools. The exact extended tool set is larger than the default core set.

## Limitations and notes

A Zulip account configuration is required for normal operation. HTTP deployments use bearer authentication only when configured with an auth token; the Zulip credentials remain necessary for workspace access.

DuckDB state persistence is single-writer. Multi-replica HTTP deployments therefore need distinct DuckDB paths per instance or a single-instance deployment. LLM-based analytics additionally depend on the optional Anthropic API key; without it, they do not generate server-side LLM output.

The ZulipChat MCP Server MCP server is intended for MCP clients and does not replace Zulip itself. Client-specific configuration is still required to register the local or remote MCP process.

_Full upstream README: https://allmcps.com/mcp/zulipchat-mcp-server/readme_

