zabbix
🔌 Complete MCP server for Zabbix integration - Connect AI assistants to Zabbix monitoring with 40+ tools for hosts, items, triggers, templates, problems, and more. Features read-only mode and comprehensive API coverage.
claude mcp add --transport stdio mpeirone-zabbix-mcp-server uvx zabbix-mcp-server
How to use
This MCP server exposes Zabbix API functionality through a set of MCP-compatible tools. It provides operations for managing hosts, host groups, items, triggers, templates, problems and events, as well as data retrieval (history and trends) and various administrative tasks (users, proxies, maintenance, configurations, and more). Clients can call functions like host_get, host_create, item_get, problem_get, proxy_update, configuration_export, and apiinfo_version to interact with a Zabbix server via MCP protocol. The server is designed to work with MCP clients such as Claude Desktop, CLI tools, or custom integrations that understand the MCP command surface described in the repository. Transport is configurable (stdio by default or streamable-http) to fit different deployment contexts, including local development and web-based integrations.
How to install
Prerequisites:
- Python 3.10 or higher
- uvx (via uv) package manager when using the uvx deployment method
- Access to a Zabbix server with API enabled
Installation steps:
- Install the MCP server package from PyPI (example package name used by this project):
- pipx install zabbix-mcp-server or
- pip install zabbix-mcp-server
- If you are using uvx for execution, ensure the CLI entry point is available and install the package with uvx (per project guidance):
- uvx install zabbix-mcp-server
- Prepare configuration: copy environment and config templates if provided
- cp config/.env.example .env
- Edit .env with your Zabbix server details (URL, token or user/password, and transport settings)
- Run the MCP server in development:
- uv run python scripts/start_server.py or directly run the server module if preferred:
- uv run python src/zabbix_mcp_server.py
- Verify the server is up by testing a simple MCP call through your client (e.g., host_get).
Additional notes
Environment variables to consider:
- ZABBIX_URL: Zabbix API endpoint (required)
- ZABBIX_TOKEN: API token (preferred method for authentication)
- ZABBIX_USER / ZABBIX_PASSWORD: basic auth credentials (alternative)
- READ_ONLY: enable read-only mode (true/1/yes) to restrict to GET operations
- VERIFY_SSL: enable/disable SSL verification (default true)
- ZABBIX_MCP_TRANSPORT: transport type (stdio or streamable-http). When using streamable-http, set ZABBIX_MCP_HOST, ZABBIX_MCP_PORT and AUTH_TYPE (no-auth).
Common issues:
- Ensure Zabbix API permissions allow the requested operations.
- If using streamable-http, make sure AUTH_TYPE is set to no-auth as required.
- Provide correct ZABBIX_URL and validate SSL settings if using HTTPS.
- When running in Docker, ensure environment variables are passed to the container and that the container has network access to the Zabbix server.
MCP surface notes:
- The server exposes a comprehensive set of management and retrieval functions for hosts, groups, items, triggers, templates, problems/events, history, and configurations. Familiarize yourself with the exact function signatures in MCP_SETUP.md and the README to construct correct client requests.
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP