Zabbix MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Zabbix MCP ServerWhat problems are currently active?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Zabbix AI CLI — Zabbix MCP server and CLI for AI agents
zabbix-ai-cli is a Zabbix MCP server and command-line client in one Go
binary. It gives Claude Code, Claude Desktop, Codex, Cursor and any other
Model Context Protocol client task-shaped access to Zabbix — what is broken
right now, why a host is silent, why an alert never arrived — with bounded
output, a stable JSON contract, and no change to Zabbix without a person's
approval.
It is for the people who get paged: SRE and DevOps teams running Zabbix who want an agent to triage an incident without handing it the whole API.
Requires Zabbix 6.4 or newer. Bearer-token authentication arrived in 6.4 and is the only scheme implemented; earlier versions expect the token in the request body instead.
It never contacts a language model. The AI decides, this program executes, Zabbix monitors.
zabbix-ai-cli login
zabbix-ai-cli problems list
zabbix-ai-cli host investigate server01
zabbix-ai-cli alert why 757474
zabbix-ai-cli mcpWhy not another Zabbix API wrapper
Wrapping host.get, problem.get and history.get hands the agent the API's
sharp edges along with its power. On a current Zabbix 7.4 server:
problem.gethas noselectHosts, so a problem list arrives without hosts.history.getdefaults to the numeric-unsigned table and returns nothing for a float item — silently, with no error.item.lastvalueanditem.lastclockstill exist and have returned a constant"0"for several major releases.host.availablewas removed in 5.4; availability lives on the interface.event.acknowledgetakes a bitmask whose own documentation contradicts itself.searchWildcardsEnabled: truedisables implicit substring matching, turning a name fragment into an exact match that quietly finds nothing.
Every one of those produces a confident, wrong answer rather than an error. This tool absorbs them behind commands that describe the task instead of the endpoint.
Related MCP server: Zabbix MCP Server
What it does
Command | Answers |
| What is broken now — including suppressed problems, with the maintenance window that hides them named |
| One call: host state, active problems, recent events, silent and unsupported items, maintenance |
| A handful of fields instead of twelve thousand characters of configuration |
| Why a notification did or did not arrive — suppression, delivery attempts, actions, media types, per-recipient severity filters |
| Turns a notification pasted out of chat into event, host and trigger identifiers |
| Monitored hosts Zabbix cannot poll, with the error it recorded |
| Values with the right history type, human units and |
| Open, extend, end or remove windows, with host patterns like |
| The escape hatch, under the same approval rules |
Safety
Read operations run immediately. Nothing else does.
Caller | Read | Write | Destructive |
CLI, a person at a terminal | immediate | plan, then | plan, then |
MCP, an agent | immediate | plan, then | plan, then |
There is no MCP parameter that applies a change, and adding one would not help: a confirmation an agent can send is a confirmation prompt injection can send. The approval lives at a terminal, outside the model's context.
$ zabbix-ai-cli maintenance create "ms*" --for 2h
PLAN pl_cc89d2e87d15
Create maintenance "ms* (2h0m)" for 2h0m, 2026-08-21T05:39:00Z to 2026-08-21T07:39:00Z
Affects:
host ms1.8qw.ru
host ms10.8qw.ru
...
Risk: write
Expires: 2026-08-21T05:54:22Z
Nothing has changed yet.
To apply it: zabbix-ai-cli approve pl_cc89d2e87d15Before a plan runs, its parameters are re-hashed, its deadline checked and its preconditions re-read from Zabbix. A window that has been replaced since the plan was made is refused, not deleted. Every applied change is appended to an audit log.
This matters more than a refusal would. When the tool this replaces blocked a write, the work was done anyway with a token copied out of a container — losing the audit trail without preventing anything. A permitted path that is recorded beats a refusal that gets routed around.
Install
Prebuilt archives and the
ghcr.ioimage are published with each tagged release. Until the first tag lands, build from source with either method below.
For a host-native binary, use Go 1.25 or newer:
go install github.com/stufently/zabbix-ai-cli/cmd/zabbix-ai-cli@latest
# Or build the current checkout.
mkdir -p bin
go build -trimpath -o bin/zabbix-ai-cli ./cmd/zabbix-ai-cliThe Make targets are container-first and do not require Go on the host:
make build # Linux binary in ./bin, built inside Docker
make docker # Linux container image for the MCP serverConfigure
zabbix-ai-cli login --profile prodIt asks for the URL and the API token, verifies the token against the server, and stores it. The token is never accepted as a flag, because flag values are visible in shell history and in the process list; pipe it in instead:
printf %s "$TOKEN" | zabbix-ai-cli login --profile prod --url https://zabbix.example.com --token-stdinWrites are off until a profile is granted the scope for them:
zabbix-ai-cli profile scopes prod --add maintenanceSee docs/authentication.md for the resolution order and the headless and container cases.
Add the Zabbix MCP server to your AI client
The MCP client never sees the Zabbix token. It is resolved inside the server process from the profile you configured, so the credential never enters a model's context or a client's configuration file.
Claude Code
claude mcp add zabbix -- zabbix-ai-cli mcp --profile prod
zabbix-ai-cli skills install claudeClaude Desktop
claude_desktop_config.json:
{
"mcpServers": {
"zabbix": {
"command": "zabbix-ai-cli",
"args": ["mcp", "--profile", "prod"]
}
}
}Codex
# ~/.codex/config.toml
[mcp_servers.zabbix]
command = "zabbix-ai-cli"
args = ["mcp", "--profile", "prod"]zabbix-ai-cli skills install codexCursor, Windsurf, VS Code and other MCP clients
Any client that speaks stdio takes the same two fields — command
zabbix-ai-cli, arguments ["mcp", "--profile", "prod"]. For a client that
wants HTTP instead:
zabbix-ai-cli mcp --http 127.0.0.1:8000It refuses a routable address unless you pass --allow-remote together with a
bearer token, because an unauthenticated MCP endpoint is an unauthenticated
route into Zabbix. See docs/mcp.md.
Docker
docker run --rm -i \
-e ZABBIX_AI_CLI_URL=https://zabbix.example.com \
-e ZABBIX_AI_CLI_TOKEN_FILE=/run/secrets/zabbix \
-v /path/to/token:/run/secrets/zabbix:ro \
ghcr.io/stufently/zabbix-ai-cli:latest mcpMCP tools
Fourteen tools, not two hundred. A large tool surface costs an agent context before it has done anything, and most of it is never called.
zabbix_problems zabbix_metrics_latest zabbix_unreachable
zabbix_problem zabbix_metrics_history zabbix_maintenance_list
zabbix_hosts zabbix_alert_why zabbix_api_call
zabbix_host_status zabbix_resolve zabbix_plan_create
zabbix_host_investigate zabbix_plan_statusWrite operations do not get one tool each. zabbix_plan_create takes an
operation enum generated from the same registry the CLI is built from, so the
tool surface does not grow as operations are added.
JSON contract
{
"ok": true,
"data": {},
"warnings": [],
"meta": {
"returned": 50,
"total": 381,
"truncated": true,
"truncated_reason": "row_limit",
"partial": false,
"zabbix_version": "7.4.10"
}
}Errors carry a stable code, whether retrying is worthwhile, and what to do next:
{
"ok": false,
"error": {
"code": "AUTHENTICATION_FAILED",
"message": "Zabbix rejected the configured API token",
"retryable": false,
"suggestion": "run 'zabbix-ai-cli login' to configure a new token"
}
}zabbix-ai-cli schema prints every operation, its parameters and its JSON Schema,
so an agent can learn the tool programmatically instead of guessing at flags.
Full details in docs/json-output.md.
Documentation
FAQ
What is a Zabbix MCP server?
An MCP server is a small program that exposes a system to an AI client over the
Model Context Protocol. A Zabbix MCP server lets Claude, Codex, Cursor and
similar clients query Zabbix — problems, hosts, items, events, maintenance — as
tools, instead of the model guessing at curl calls against the JSON-RPC API.
Can an AI agent change my Zabbix through this?
Not on its own. Read operations run immediately. Every write produces a plan and
stops. Applying that plan is a command a person runs in their own terminal:
zabbix-ai-cli approve <plan-id>. There is no MCP parameter that applies
anything, and a test fails the build if one is ever added.
Does it send my monitoring data to an AI provider?
No. This program never contacts a language model. It talks to Zabbix and prints JSON. Whatever your MCP client does with that output is between you and your client.
Which Zabbix versions are supported?
Zabbix 6.4 and newer, because bearer-token authentication arrived in 6.4. Developed and tested against Zabbix 7.4.
Do I need Go installed?
No. make build compiles inside Docker and needs nothing on the host but
Docker itself. go install is there for a host-native binary, and each tagged
release publishes archives for Linux, macOS and Windows with checksums, along with a
container image on ghcr.io.
How is this different from an MCP server that wraps the Zabbix API?
A thin wrapper hands the agent the API's sharp edges: problem.get without
hosts, history.get silently returning nothing for float items, lastvalue
frozen at "0". Those produce confident wrong answers rather than errors. This
tool answers questions — "what is broken", "why did this alert not arrive" — and
absorbs the traps behind them. It also ships fourteen tools rather than two
hundred, because a large tool surface spends an agent's context before it does
any work.
Can I still call the raw Zabbix API?
Yes, through api call, under the same approval rules. Methods that hand out
credentials or execute code are refused outright — including the long way round,
such as creating a script and having an action run it.
Does it work without an AI client at all?
Yes. It is a normal CLI with human-readable tables, JSON output and documented exit codes, so it is equally usable from a shell or a CI job.
Compatibility
Zabbix 6.4 and newer. Bearer-token authentication arrived in 6.4 and is the only scheme implemented. Version-dependent behaviour is asserted explicitly, so an incompatibility is reported rather than returning an empty result.
Developed and tested against Zabbix 7.4.
License
Apache-2.0. See LICENSE.
Zabbix is a trademark of Zabbix LLC. This project is an independent open-source project and is not affiliated with or endorsed by Zabbix LLC.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenance🔌 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.3244GPL 3.0
- FlicenseNot gradedqualityDmaintenanceEnables users to monitor and query Zabbix infrastructure through natural language by providing access to current problems, active triggers, and system health status via the Zabbix API.
- AlicenseCqualityCmaintenanceExposes the complete Zabbix API functionality through the Model Context Protocol, mapping API methods to tools for managing hosts, triggers, and monitoring data. It enables seamless integration and control of Zabbix monitoring environments via natural language interfaces.100MIT
- AlicenseNot gradedqualityAmaintenanceExposes the complete Zabbix API to MCP-compatible AI assistants, enabling natural language management of hosts, problems, and templates across multiple instances. It provides 220 tools for comprehensive monitoring and configuration with support for read-only modes and secure authentication.175AGPL 3.0
Related MCP Connectors
See, price, and control every tool call your AI agents make: policy checks, cost, and audit tools.
SaaS intelligence for AI agents. 5 unified tools cover 1,000+ services with 91-96% token savings.
Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/stufently/zabbix-ai-cli'
If you have feedback or need assistance with the MCP directory API, please join our Discord server