Zulip MCP Server
The Zulip MCP Server acts as a bridge between the Zulip chat platform and AI assistants like Claude. Essentially, it gives an AI the ability to "talk" and "listen" within …
About Zulip MCP Server
How to Use
1. Installation
To install and set up the Zulip MCP server, you must first configure a bot within your Zulip workspace:
- Create a Zulip Bot:
- Log in to your Zulip instance.
- Navigate to Settings > Personal > Bots.
- Click "Add a new bot".
- Select "Generic bot" type and fill in the required information.
- Click "Create bot".
- Gather Credentials:
- Bot Email address
- Bot API key (displayed upon creation)
- Zulip instance URL (e.g.,
https://example.zulipchat.com)
- Permissions: Ensure the bot is subscribed to the specific channels (streams) it needs to access.
For Docker users, you can build the image locally:
docker build -t mcp/zulip .
2. Configuration
Add the following configuration to your MCP settings file (e.g., claude_desktop_config.json).
Using 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"
}
}
}
}
Using 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"
}
}
}
}
3. Available Tools
zulip_list_channels: List available channels (streams). Optional inputs:include_private,include_web_public,include_subscribed.zulip_post_message: Post a new message to a stream. Required inputs:channel_name,topic,content.zulip_send_direct_message: Send a DM to one or more users. Required inputs:recipients(array of emails/IDs),content.zulip_add_reaction: Add an emoji reaction to a message. Required inputs:message_id,emoji_name.zulip_get_channel_history: Get recent messages from a channel and topic. Required inputs:channel_name,topic.zulip_get_topics: Get topics within a specific channel. Required input:channel_id.zulip_subscribe_to_channel: Subscribe the bot to a channel. Required input:channel_name.zulip_get_users: Retrieve a list of users in the Zulip organization.
4. Example Prompts
(Note: While not explicitly listed as a section in the content, the following are inferred from the available tools):
- "List all the public channels in my Zulip workspace."
- "Post a message to the 'Engineering' stream under the 'Sprint Planning' topic saying 'The update is complete'."
- "Send a direct message to user@example.com saying 'Hello from Claude'."
- "Show me the last 10 messages from the 'General' channel in the 'Announcements' topic."
- "Add a 'thumbs_up' reaction to message ID 12345."
Use Cases
Use Case 1: Automated Daily Standup and Topic Summarization
Problem: In fast-moving engineering teams, team members often struggle to catch up on long discussion threads across multiple Zulip streams and topics, leading to "notification fatigue" or missed decisions.
Solution: An AI assistant can use the Zulip MCP to fetch recent message history across specific channels and topics to generate concise executive summaries, highlighting action items and key decisions.
Example: A user asks, "What were the main takeaways from the #backend-dev 'database-migration' topic today?" The AI uses zulip_get_channel_history, processes the messages, and provides a bulleted summary of the consensus reached by the team.
Use Case 2: Seamless Code-to-Chat Integration for Developers
Problem: Developers often need to share code snippets, error logs, or refactoring ideas with their team. Switching back and forth between a code editor (like Cursor) and the Zulip desktop app breaks cognitive flow.
Solution: Using this MCP within an AI-integrated IDE, a developer can command the AI to post code directly to a relevant Zulip stream or send it to a specific colleague for review without leaving the environment.
Example: After finishing a function, the developer tells the AI: "Post this function to the #code-review channel under the 'Auth-Module' topic and ask @SeniorDev for feedback." The AI uses zulip_get_users to identify the recipient and zulip_post_message to share the code.
Use Case 3: Intelligent Knowledge Base Retrieval
Problem: Zulip serves as a repository of tribal knowledge, but searching for specific technical answers using standard keyword searches can be difficult if the user doesn't remember the exact phrasing.
Solution: The AI can act as a semantic search layer. It can browse topics and message history to find answers to complex questions, effectively turning the chat history into a searchable wiki.
Example: A new employee asks the AI, "How do we handle environment variables for the staging server?" The AI uses zulip_get_topics and zulip_get_channel_history to find past discussions in the #dev-ops stream, then explains the process based on those historical conversations.
Use Case 4: Automated Incident Triage and Notification
Problem: When a system alert occurs, DevOps engineers need to quickly notify the right people and acknowledge the issue to prevent duplicate alerts, which often requires manual typing and tagging in Zulip.
Solution: An AI assistant can be triggered by an incident to automatically post details to an incident stream, tag the on-call engineer, and even add an initial "eyes" emoji reaction to signify the system has acknowledged the event.
Example: Upon a server failure, the AI is instructed to: "Post the error log to #production-alerts, tag the SRE team, and react to the message with a 🚨." The AI uses zulip_post_message and zulip_add_reaction to execute the workflow instantly.
Use Case 5: Team Sentiment and Engagement Check-in
Problem: Managers of remote teams may find it difficult to gauge the "pulse" of the team or ensure that important announcements are being seen and acknowledged.
Solution: The AI can scan a specific announcement topic to see who has reacted to a post and who hasn't, then send friendly direct message reminders to those who might have missed it.
Example: A manager asks, "Who hasn't acknowledged the 'New Vacation Policy' post in #general?" The AI uses zulip_get_channel_history to check for reactions on the specific message ID, compares it against the list from zulip_get_users, and offers to send a DM (zulip_send_direct_message) to the remaining staff.
Reviews (0)
No reviews yet. Be the first to share your experience!
Similar MCPs you might like
Discover more Model Context Protocol servers.
YouTube Video Summarizer MCP
The YouTube Video Summarizer MCP acts like a smart bridge between video content and AI …
Zen MCP Server
The Zen MCP Server acts as a universal bridge, allowing users to connect their primary …
Zapier
Zapier MCP acts as a universal bridge that connects AI assistants like Claude and ChatGPT …
ZenML
The ZenML MCP server acts as a smart bridge that allows AI assistants to understand …
ZenHub
This ZenHub MCP server acts as a bridge between AI assistants and the ZenHub project …
Zoom MCP Server
The Zoom MCP Server acts as a digital bridge between AI assistants and Zoom, allowing …