Skip to content
Agentmart
Submit a tool

ZulipChat MCP Server

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

Connector by akougkas · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 33
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/akougkas-zulipchat

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

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

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
24 read · 29 write · 2 delete · 7 not yet classified
Secrets
1 (API keys, tokens or passwords)
Install scripts
None found
Runs as
Python package

Tools by what they do 62

Read from the source code; the running server may list different tools.

Read 24 · Look things up without changing anything.

  • advanced_search
  • check_messages_match_narrow
  • get_events
  • get_message
  • get_own_user
  • get_presence
  • get_scheduled_messages
  • get_stream_info
  • get_stream_topics
  • get_streams
  • get_user_by_email
  • get_user_by_id
Show 12 more tools
  • get_user_group_members
  • get_user_groups
  • get_user_presence
  • get_user_status
  • get_users
  • is_user_group_member
  • list_command_types
  • list_instances
  • list_sessions
  • poll_agent_events
  • search_messages
  • server_info

Write 29 · Create, change, send or run things.

  • add_reaction
  • agent_message
  • close_agent_session
  • create_scheduled_message
  • cross_post_message
  • edit_message
  • ensure_agent_session
  • execute_chain
  • manage_files
  • mark_all_as_read
  • mark_messages_unread
  • mark_stream_as_read
Show 17 more tools
  • mark_topic_as_read
  • mute_user
  • register_agent
  • register_events
  • request_user_input
  • resolve_user
  • send_agent_status
  • send_message
  • star_messages
  • start_task
  • unmute_user
  • unstar_messages
  • update_message_flags_for_narrow
  • update_scheduled_message
  • update_status
  • update_task_progress
  • upload_file

Delete 2 · Delete, drop, revoke or wipe things.

  • delete_scheduled_message
  • remove_reaction

Not yet classified 7 · We could not tell from the name and description.

  • agents_channel_topic_ops
  • complete_task
  • construct_narrow
  • deregister_events
  • switch_identity
  • teleport_chat
  • wait_for_response

Secrets and settings it asks for

Secrets: values you paste in that let it act as you.

  • ZULIP_API_KEY

Other settings (environment variables or headers).

  • ZULIP_EMAIL
  • ZULIP_SITE

Network hosts it talks to 7

  • agent-plugins.org · found in code
  • anthropic.com · found in code
  • github.com · found in code
  • mcp.internal · found in code
  • raw.githubusercontent.com · found in code
  • yourorg.zulipchat.com · found in code
  • zulip.com · found in code

Files it touches

  • /home/you/.zuliprc
  • Your home directory (~)
  • ~/.zuliprc
  • Any path the agent passes to its tools

Tools (62)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • add_reaction

    Add emoji reaction to message with comprehensive validation

  • advanced_search

    Multi-faceted search across messages, users, streams with basic aggregations

  • agent_message

    Send a session-scoped message into the bound Zulip topic.

  • agents_channel_topic_ops

    Topic operations in Agents-Channel only (BOT identity protection)

  • check_messages_match_narrow

    Check whether messages match a narrow filter

  • close_agent_session

    Close a session binding and optionally announce the result.

  • complete_task

    Complete a tracked task.

  • construct_narrow

    Construct narrow filter following Zulip API patterns

  • create_scheduled_message

    Create a scheduled message using Zulip's native API

  • cross_post_message

    Share/duplicate message across multiple streams with attribution

  • delete_scheduled_message

    Delete (cancel) a scheduled message

  • deregister_events

    Deregister event queue

  • edit_message

    Edit message content, topic, or move between streams with propagation control

  • ensure_agent_session

    Create or refresh the Zulip topic binding for an agent session.

  • execute_chain

    Execute sophisticated command chains for workflow automation: supports sequential command execution with shared context, includes 4 command types (send_message, wait_for_response, search_messages, conditional_action), provides conditional branching with Python expressions, maintains execution context across commands, integrates with v0.4 tools (advanced_search adapter), handles async operations with fallback loops, and returns comprehensive execution summary with final context. Ideal for complex multi-step workflows like interactive conversations, data processing pipelines, and automated respo…

Show 47 more tools
  • get_events

    Poll events from registered queue with long-polling

  • get_message

    Get a single message by ID

  • get_own_user

    Get information about current user

  • get_presence

    Get presence information for all users

  • get_scheduled_messages

    Get all scheduled messages for current user

  • get_stream_info

    Get detailed stream information (READ-ONLY protection)

  • get_stream_topics

    Get recent topics for a stream (READ-ONLY)

  • get_streams

    Get list of streams (READ-ONLY protection)

  • get_user_by_email

    Get specific user by email

  • get_user_by_id

    Get specific user by ID

  • get_user_group_members

    Get members of specific user group

  • get_user_groups

    Get all user groups in organization

  • get_user_presence

    Get presence information for specific user

  • get_user_status

    Get user's status text and emoji

  • get_users

    Get all users in organization

  • is_user_group_member

    Check if user is member of user group

  • list_command_types

    List all available command types for workflow construction: returns supported command types array including send_message (Zulip messaging), wait_for_response (user input polling), search_messages (message query with v0.4 integration), and conditional_action (branching logic with Python expressions). Essential reference for building command chains with execute_chain. Each command type supports specific parameters and context integration for sophisticated workflow automation and multi-step operations.

  • list_instances

    Compatibility wrapper returning agent sessions under the old name.

  • list_sessions

    List known agent sessions.

  • manage_files

    File management operations with Zulip API limitations

  • mark_all_as_read

    Mark all messages as read using modern narrow approach

  • mark_messages_unread

    Mark messages as unread using flexible narrow construction

  • mark_stream_as_read

    Mark all messages in a stream as read

  • mark_topic_as_read

    Mark all messages in a topic as read

  • mute_user

    Mute a user for your own notifications

  • poll_agent_events

    Poll owner control events; use auto_ack=False and ack_event_ids for replay. include_audit=True also exposes outbound and unauthorized audit records. mentions_stream instead reads bot mentions without a pre-existing session. direct_messages=True reads every direct or group-direct message the bot receives instead (no @-mention needed; the bot's own messages are excluded). The two modes are mutually exclusive and share after_message_id, wait_seconds<=25, limit<=50 and the host-owned next_after_message_id cursor. Each direct-message event lists recipients and reply_to (all participants except the…

  • register_agent

    Register or update a stable agent profile.

  • register_events

    Register for comprehensive real-time event streams

  • remove_reaction

    Remove emoji reaction from message

  • request_user_input

    Send a session-bound question or approval request to Zulip.

  • resolve_user

    Resolve display name to Zulip email with fuzzy matching. 'Jaime' -> jaime@org.zulipchat.com

  • search_messages

    Advanced search with fuzzy user matching and comprehensive filtering

  • send_agent_status

    Store an agent lifecycle status update.

  • send_message

    Send one message to a stream topic or users. Sends once; an identical repeat within two minutes is suppressed. The result reports sent_as.

  • server_info

    Get server information and capabilities

  • star_messages

    Star messages matching criteria

  • start_task

    Start a tracked task for an agent.

  • switch_identity

    Switch between user and bot identities

  • teleport_chat

    Send a message to a Zulip user or channel with identity-aware routing.

  • unmute_user

    Unmute a user for your own notifications

  • unstar_messages

    Unstar messages matching criteria

  • update_message_flags_for_narrow

    Update personal message flags for messages matching a narrow (modern approach)

  • update_scheduled_message

    Update a scheduled message's attributes

  • update_status

    Update your own status text and emoji

  • update_task_progress

    Update task progress.

  • upload_file

    Upload and optionally share a file (max 25 MiB). Supply exactly one source: file_content_base64 for binary data using standard padded base64, file_content for UTF-8 text, or a local file_path (stdio only).

  • wait_for_response

    Wait for a persisted agent request response.

Signals

Stars
33
Forks
16
Open issues
0
Weekly downloads
267
Last commit
Oct 9, 2026 (19 days ago)
Last release
Oct 9, 2026 (19 days ago)
Last package publish
Oct 9, 2026 (19 days ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.akougkas/zulipchat
Version
0.4.2
Auth
API key
Packages
pypi zulipchat-mcp
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 25, 2026

More from akougkas

Cite this page

ZulipChat MCP Server. Agent Mart. https://agentmart.dev/connectors/akougkas-zulipchat (last updated 2026-10-25)