mpeirone/zabbix-mcp-server

📊 Monitoring
0 Views
0 Installs

🐍 ☁️ 🐧 🪟 🍎 - Zabbix integration for hosts, items, triggers, templates, problems, data and more.

Quick Install

One-Click IDE Configuration
claude_desktop_config.json
{
  "mcpServers": {
    "mpeirone-zabbix-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "mpeirone-zabbix-mcp-server"
      ]
    }
  }
}
Or

Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.

Documentation Overview

Zabbix MCP Server

License: GPL v3 Python 3.10+ SafeSkill

A lightweight Model Context Protocol (MCP) server that provides complete access to the entire Zabbix API through just 3 tools. Compatible with Zabbix 6.0+.

zabbix-mcp-server MCP server

Why Zabbix MCP Server?

  • Complete API Coverage - Access every Zabbix API method (100+) through a unified interface
  • Lightweight Context - Only 3 tools instead of 50+ individual tools, keeping LLM context minimal
  • Always Up-to-Date - Works with current and future Zabbix API methods automatically
  • Zabbix 6.0+ Compatible - Supports Zabbix 6.0, 6.4, 7.0, and newer versions

The 3 Tools

ToolPurpose
zabbix_apiExecute any Zabbix API method
zabbix_api_docsGet documentation for any API method
zabbix_api_listDiscover available API objects and methods

Quick Start

Option 1: Claude Code Integration

Add to your Claude Code MCP configuration:

claude mcp add zabbix \
  --env ZABBIX_URL=https://your-zabbix-server.com \
  --env ZABBIX_TOKEN=your_api_token \
  -- uvx --from git+https://github.com/mpeirone/zabbix-mcp-server@main zabbix-mcp

Option 2: Run with uv

git clone https://github.com/mpeirone/zabbix-mcp-server.git
cd zabbix-mcp-server
uv sync

# Configure environment
export ZABBIX_URL=https://your-zabbix-server.com
export ZABBIX_TOKEN=your_api_token

# Start the server
uv run python scripts/start_server.py

Test Connection

uv run python scripts/test_server.py

Option 3: Run with docker

git clone https://github.com/mpeirone/zabbix-mcp-server.git
cd zabbix-mcp-server

# Using docker-compose
docker compose up -d

# Or build manually
docker build -t zabbix-mcp-server .
docker run -e ZABBIX_URL=https://zabbix.example.com -e ZABBIX_TOKEN=your_token zabbix-mcp-server

Environment Variables

Required

VariableDescriptionExample
ZABBIX_URLZabbix server URLhttps://your-zabbix-server.com

Authentication (choose one)

VariableDescription
ZABBIX_TOKENAPI token (recommended)
ZABBIX_USER + ZABBIX_PASSWORDUsername and password

Security

VariableDefaultDescription
READ_ONLYfalseSet to true to allow only read operations
VERIFY_SSLtrueEnable/disable SSL verification
ZABBIX_API_WHITELIST.*Comma-separated regex patterns for allowed API methods
ZABBIX_API_BLACKLIST(empty)Comma-separated regex patterns for blocked API methods
ZABBIX_SKIP_VERSION_CHECKfalseSkip Zabbix version compatibility check
ZABBIX_API_TIMEOUT30API request timeout in seconds

Transport

VariableDefaultDescription
ZABBIX_MCP_TRANSPORTstdioTransport type: stdio or streamable-http
ZABBIX_MCP_HOST127.0.0.1HTTP server host (when using streamable-http)
ZABBIX_MCP_PORT8000HTTP server port (when using streamable-http)
ZABBIX_MCP_STATELESS_HTTPfalseStateless HTTP mode
AUTH_TYPE-Must be no-auth for HTTP transport (when using streamable-http)

Debug

VariableDefaultDescription
DEBUGfalseSet to true for verbose logging

Usage Examples

Get Hosts

zabbix_api(method='host.get', params={'output': ['hostid', 'name']})

Get Problems

zabbix_api(method='problem.get', params={'output': 'extend', 'recent': True})

Create Host

zabbix_api(method='host.create', params={
    'host': 'server-01',
    'groups': [{'groupid': '1'}],
    'interfaces': [{'type': 1, 'main': 1, 'useip': 1, 'ip': '192.168.1.100', 'port': '10050'}]
})

Get Method Documentation

zabbix_api_docs(method='host.create')

List Available Methods

zabbix_api_list()              # All objects and methods
zabbix_api_list(object='host')  # Host methods only

Security Features

Read-Only Mode

Set READ_ONLY=true to block all write operations:

export READ_ONLY=true

Only get, version, check, and export operations will be allowed.

API Method Filtering

Control which API methods can be called using whitelist/blacklist patterns:

# Allow only host.* and item.get methods
export ZABBIX_API_WHITELIST="host\..*,item\.get"

# Block all delete and create operations
export ZABBIX_API_BLACKLIST=".*\.delete,.*\.create"

Both support comma-separated regex patterns. Blacklist is checked first.

MCP Client Configuration

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "zabbix": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/mpeirone/zabbix-mcp-server@main", "zabbix-mcp"],
      "env": {
        "ZABBIX_URL": "https://zabbix.example.com",
        "ZABBIX_TOKEN": "your_api_token"
      }
    }
  }
}

Troubleshooting

Connection Issues

  • Verify ZABBIX_URL is accessible
  • Check authentication credentials
  • Ensure Zabbix API is enabled

Permission Errors

  • Verify Zabbix user permissions
  • Check if READ_ONLY mode is enabled

Method Blocked

If you see "Method is not in whitelist" or "Method is blacklisted":

  • Review ZABBIX_API_WHITELIST and ZABBIX_API_BLACKLIST patterns
  • Ensure your regex patterns match the full method name (e.g., host.get)

Debug Mode

export DEBUG=true
uv run python scripts/start_server.py

Contributing

See CONTRIBUTING.md for development guidelines.

License

GPLv3 License - see LICENSE for details.

Acknowledgments

Related MCP Servers

aayushmdesai/mcp-dotnet-diagnostics

🏠 🍎 🐧 - Live .NET runtime diagnostics for AI assistants. Ask Claude to diagnose memory leaks, GC pressure, LOH fragmentation, and thread starvation in any running .NET process — no code changes required. Install: dotnet tool install -g mcp-dotnet-diagnostics

📊 Monitoring0 views
adanb13/cirdan

🐍 🏠 🍎 🪟 🐧 - AI infrastructure cartographer & MCP server: fingerprints, graphs, and watches the live infrastructure an agent can reach (Docker, Kubernetes, cloud, IaC) and detects incidents.

📊 Monitoring0 views
agentkitai/agentlens

📇 🏠 ☁️ 🍎 🪟 🐧 - Tamper-evident observability for AI agents: a SHA-256 hash-chained audit log with chain verification and signed export (EU AI Act Art. 12). Instrument any agent with zero code via npx -y @agentlensai/mcp; also ingests OpenTelemetry GenAI traces.

📊 Monitoring0 views
alilxxey/openobserve-community-mcp

🐍 🏠 🍎 🪟 🐧 - Read-only MCP server for OpenObserve Community Edition via REST API. Search logs, traces, stream schemas, and dashboards without requiring the Enterprise license.

📊 Monitoring0 views

Engagement

Views
0
Installs
0
Upvotes
0

Views and upvotes are unique per visitor network (hashed IP). Installs count copy actions.

Status

Health: Not checked yet

We have not completed a health check for this listing yet.

No check timestamp yet.

Unclaimed listing (imported or pending owner verification). Claim it →
★ Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Claim this listing

Promote this listing

Optional paid placement. Free listings stay free forever.

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.