
このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る
Run AI agents in Zulip as @mentionable bots — or wire into any MCP client.
概要
Run AI agents in Zulip as @mentionable bots — or wire into any MCP client. Also works as a Python library. 2. Add a .zuliprc file to your project root with your Zulip bot credentials. See Add a bot or integration for instructions on making a bot. The bot type must be "generic." 3. Add the MCP server to your .mcp.json: 4. Restart your MCP client. The Zulip tools should now be available. - Python >=3.10, managed with uv - A .zuliprc file for Zulip API auth (see Quickstart) - For listener mode: the selected backend CLI installed and authenticated (claude by default, codex with --backend codex, or opencode with --backend opencode) zulipmcp can also be imported directly as a Python library: Hermes uses the native hermes_plugin/zulip gateway adapter instead of the subprocess listener. Each stream/topic maps to its own persistent Hermes session, while zulipmcp remains available as the explicit Zulip API tool layer.
README
以下は原文 README の抜粋です。原文を見る。
zulipmcp
Run AI agents in Zulip as @mentionable bots — or wire into any MCP client. Also works as a Python library.
Quickstart
-
Install the package:
uv add zulipmcp --git https://github.com/windborne/zulipmcp.git -
Add a
.zuliprcfile to your project root with your Zulip bot credentials. See Add a bot or integration for instructions on making a bot. The bot type must be “generic.” -
Add the MCP server to your
.mcp.json:{ "mcpServers": { "zulip": { "command": "uv", "args": ["run", "python", "-m", "zulipmcp.mcp"] } } } -
Restart your MCP client. The Zulip tools should now be available.
Requirements
- Python >=3.10, managed with uv
- A
.zuliprcfile for Zulip API auth (see Quickstart) - For listener mode: the selected backend CLI installed and authenticated (
claudeby default,codexwith--backend codex, oropencodewith--backend opencode)
Entry Points
| Entry Point | Description |
|---|---|
uv run python -m zulipmcp.mcp |
MCP server for Claude Code, Codex, and other MCP clients |
uv run python -m zulipmcp.mcp --transport sse |
MCP server over SSE (for remote/web clients) |
uv run python -m zulipmcp.launch_agent |
Launch one MCP-backed coding session without a listener |
uv run python -m zulipmcp.listener |
Listener: watches for @mentions, spawns agent sessions |
Library Usage
zulipmcp can also be imported directly as a Python library:
import zulipmcp
# Fetch and format recent messages
messages = zulipmcp.get_messages(hours_back=24, channels=["engineering"])
print(zulipmcp.format_messages(messages))
# Send a message
zulipmcp.send_message("engineering", "general", "Hello from Python!")
# Configure MCP hooks before starting the server
zulipmcp.configure(
message_prefix=lambda: "[bot] ",
on_session_end=lambda session: print(f"Session ended in #{session.stream}"),
)
Hermes Gateway
Hermes uses the native hermes_plugin/zulip gateway
adapter instead of the subprocess listener. Each stream/topic maps to its own
persistent Hermes session, while zulipmcp remains available as the explicit
Zulip API tool layer.
- Mention the bot once to activate a topic; follow-ups do not need a mention.
- Each user message is a fresh Hermes turn with a fresh iteration budget.
- Typing, normal response delivery, status reactions, approval reactions,
インストール
This server does not publish a one-line install command.
Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →設定
{
"mcpServers": {
"zulip": {
"command": "uv",
"args": ["run", "python", "-m", "zulipmcp.mcp"]
}
}
}