logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

zulip-communication-bridge-mcp

Facilitates programmatic access to Zulip collaboration environments, allowing for orchestration of workspace elements such as stream/channel administration, message dissemination (public or private), engagement via emoji responses, and retrieval of communication archives for automated interaction.

Author

zulip-communication-bridge-mcp logo

Monadical-SAS

Apache License 2.0

Quick Info

GitHub GitHub Stars 4
NPM Weekly Downloads 0
Tools 1
Last Updated 2026-02-19

Tags

zuliptoolsautomationzulip workspacesinteraction zulipbusiness tools

Zulip API Interfacing Module (MCP Server)

This specialized MCP server bridges AI agents, such as Claude, to a designated Zulip organization instance, enabling comprehensive interaction with its messaging infrastructure via the Zulip REST API.

Functionality Catalog (Tool List)

  1. zulip_list_channels
  2. Purpose: Retrieve a manifest of all accessible conversation streams (channels) within the organization.
  3. Parameters:
    • include_private (Boolean, Defaults: false): Toggle visibility of restricted streams.
    • include_web_public (Boolean, Defaults: true): Determine if publicly viewable streams should be listed.
    • include_subscribed (Boolean, Defaults: true): Specify inclusion of streams where the bot holds a subscription.
  4. Output: A structured collection detailing stream identifiers and attributes.

  5. zulip_post_message

  6. Purpose: Inject a new textual communication into a specified stream under a defined topic.
  7. Parameters:
    • channel_name (String, Required): Identifier of the target stream.
    • topic (String, Required): Subject header for the message thread.
    • content (String, Required): The body of the transmission.
  8. Output: Confirmation of successful message transmission, including the unique message ID.

  9. zulip_send_direct_message

  10. Purpose: Deliver a private message to one or more designated participants.
  11. Parameters:
    • recipients (String Array, Required): List of target user identifiers (email or internal ID).
    • content (String, Required): The content of the private communication.
  12. Output: Confirmation of private message delivery along with its ID.

  13. zulip_add_reaction

  14. Purpose: Append an emoji annotation to an existing message.
  15. Parameters:
    • message_id (Number, Required): The unique identifier of the message to be modified.
    • emoji_name (String, Required): The symbol to apply (e.g., 'thumbs_up').
  16. Output: Status report confirming the reaction placement.

  17. zulip_get_channel_history

  18. Purpose: Fetch recent message records from a specific stream and topic combination.
  19. Parameters:
    • channel_name (String, Required): The designated stream.
    • topic (String, Required): The associated conversation thread.
    • limit (Number, Defaults: 20): Maximum count of messages to retrieve.
    • anchor (String, Defaults: "newest"): Reference point (message ID) for chronological fetching.
  20. Output: A sequence of message objects containing textual data and metadata.

  21. zulip_get_topics

  22. Purpose: Enumerate all active conversation topics within a given stream.
  23. Parameters:
    • channel_id (Number, Required): The numerical identifier for the stream.
  24. Output: A directory of topics present in the specified stream.

  25. zulip_subscribe_to_channel

  26. Purpose: Enroll the operational bot identity into a specific stream, granting access.
  27. Parameters:
    • channel_name (String, Required): The name of the stream for subscription.
  28. Output: A report confirming the successful subscription action.

  29. zulip_get_users

  30. Purpose: Compile a roster of all registered personnel within the entire Zulip domain.
  31. Parameters: None required.
  32. Output: An array containing summarized data for all organizational users.

Initial Deployment Prerequisites

  1. Bot Provisioning:
  2. Access your Zulip administration settings or personal settings page.
  3. Navigate to the Bot Management section.
  4. Initiate the creation of a new bot instance (Generic type recommended).
  5. Finalize the creation process.

  6. Authorization Scoping:

  7. By default, newly created bots possess minimal operational privileges.
  8. Ensure the bot is explicitly added (subscribed) to every stream it must monitor or interact with.
  9. For unrestricted access, consider provisioning a full user account token instead of a standard bot token.

  10. Credential Acquisition:

  11. Bot Identifier (The associated email address).
  12. Bot's Secret Key (API Key, generated upon creation).
  13. Instance Hostname (The full URL of your Zulip server, e.g., https://mycompany.zulipchat.com).

Integration with Claude Desktop Environment

Configure your local deployment file (claude_desktop_config.json) as follows:

Execution via Node Package Manager (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" } } } }

Execution via Containerization (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" } } } }

Troubleshooting Guidance

If operational failures related to access rights occur, please confirm the following: 1. Validity and correctness of the supplied Bot API Key. 2. Bot subscription status to the required communication streams. 3. Accessibility and accuracy of the specified Zulip host URL.

Compilation Artifact

For creating a local Docker image:

bash docker build -t mcp/zulip .

Licensing

This software package is distributed under the terms of the MIT License.

Contextual Relevance to Business Operations

Business operational tooling encompasses the entire spectrum of applications, frameworks, and methodologies employed by enterprises to navigate dynamic markets, maintain competitive standing, and enhance overall organizational output. These systems are departmentally specific yet functionally classified—covering planning, workflow control, record keeping, personnel management, and strategic decision support.

The modern landscape of corporate software, driven by rapid technological shifts, presents a challenge in tool selection. Managers must adopt a strategic methodology, customizing chosen applications to fit organizational imperatives rather than blindly adopting the newest solution. Key drivers in this evolution include cost optimization, sales expansion, deep customer insight acquisition, and precision product delivery.

Historically, business software evolved from rudimentary Management Information Systems (MIS) through comprehensive Enterprise Resource Planning (ERP) suites, extending into modern cloud-based platforms that integrate Customer Relationship Management (CRM). While IT investments correlate with performance, maximal value extraction depends critically on effective deployment strategies and precise alignment between the selected toolset and the company's unique requirements.

Recent global surveys indicate widespread adoption of tools focused on strategic direction setting, customer interaction management (CRM), workforce feedback loops, comparative performance analysis (benchmarking), integrated performance measurement (Balanced Scorecard), defining core capabilities, operational structuring (outsourcing), adaptive methodologies (Change Management), logistics oversight (Supply Chain), and foundational identity setting (Mission/Vision statements).

See Also

`