Parametry konfiguracji: serwer Zabbix MCP
Przegląd
serwer MCP Zabbix to proces umożliwiający agentom AI pracę z Zabbix za pomocą protokołu Model Context Protocol (MCP).
W tej sekcji wymieniono parametry obsługiwane przez plik konfiguracyjny serwera MCP Zabbix (zabbix_mcp_server.conf).
Parametry są wymienione bez dodatkowych informacji. Kliknij parametr, aby wyświetlić pełne szczegóły.
| Parametr | Opis |
|---|---|
| AllowedIP | Lista adresów IP klientów MCP rozdzielonych przecinkami, opcjonalnie w notacji CIDR, lub nazw DNS klientów MCP. |
| AllowTool | Reguła wieloznaczna zezwalająca na użycie narzędzia. |
| AllowToolRegexp | Reguła wyrażenia regularnego zezwalająca na użycie narzędzi. |
| DebugLevel | Poziom debugowania. |
| DenyTool | Reguła wieloznaczna odmawiająca użycia narzędzia. |
| DenyToolRegexp | Reguła wyrażenia regularnego odmawiająca użycia narzędzi. |
| FrontendURL | Punkt końcowy API Zabbix. |
| IgnoreURLCertErrors | Określa sposób obsługi błędów walidacji certyfikatu TLS podczas uzyskiwania dostępu do API Zabbix. |
| ListenIP | Adres IP, na którym nasłuchiwać. |
| ListenPort | Port, na którym nasłuchiwać. |
| LogFile | Nazwa pliku dziennika. |
| LogFileSize | Maksymalny rozmiar pliku dziennika. |
| LogType | Typ danych wyjściowych dziennika. |
| MaxResponseSize | Maksymalny rozmiar odpowiedzi zwracanej przez narzędzie odczytu. |
| PidFile | Nazwa pliku PID. |
| Timeout | Maksymalny czas (w sekundach) oczekiwania na odpowiedź z API Zabbix. |
| TLSAccept | Typ akceptowanych połączeń przychodzących. |
| TLSCertFile | Pełna ścieżka do pliku zawierającego certyfikat serwera lub łańcuch certyfikatów. |
| TLSKeyFile | Pełna ścieżka do pliku zawierającego klucz prywatny serwera. |
| ToolPrefix | Prefiks dodawany do nazw wszystkich narzędzi. |
Wszystkie parametry są opcjonalne, chyba że wyraźnie zaznaczono, że dany parametr jest wymagany.
Należy pamiętać, że:
- Wartości domyślne odzwierciedlają wartości domyślne procesu, a nie wartości w dostarczonych plikach konfiguracyjnych;
- Wartości obsługują zmienne środowiskowe w formacie
${NAME}; - Zabbix obsługuje pliki konfiguracyjne wyłącznie w kodowaniu UTF-8 bez BOM;
- Komentarze rozpoczynające się od
#są obsługiwane tylko na początku wiersza.
Szczegóły parametrów
AllowedIP
Lista rozdzielanych przecinkami adresów IP, opcjonalnie w notacji CIDR, lub nazw DNS klientów MCP. Połączenia przychodzące będą akceptowane wyłącznie z hostów wymienionych na tej liście.
Przykład:
AllowedIP=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,mcp-client.example.com
Wymagane: tak
AllowTool
Reguła z symbolem wieloznacznym zezwalająca na użycie narzędzia. Parametr można określić wielokrotnie.
Wzorce z symbolami wieloznacznymi używają składni klucza pozycji, w której * oznacza dowolne znaki. Reguła jest dopasowywana do zwykłej nazwy narzędzia i ignoruje ToolPrefix.
Wszystkie reguły AllowTool, DenyTool, AllowToolRegexp i DenyToolRegexp tworzą jedną listę w kolejności, w jakiej zostały określone; pierwsza pasująca reguła decyduje o wyniku. Narzędzie, do którego nie pasuje żadna reguła, jest dozwolone.
Przykład:
AllowTool=host_get
AllowToolRegexp
Reguła wyrażenia regularnego zezwalająca na używanie narzędzi. Parametr można określić wielokrotnie.
Wyrażenia regularne używają składni RE2 i dopasowują dowolną część zwykłej nazwy narzędzia, chyba że zastosowano kotwice.
Przykład:
AllowToolRegexp=^(host|hostgroup|trigger|problem)_get$
DebugLevel
Określ poziom debugowania:
- 0 - podstawowe informacje o uruchamianiu i zatrzymywaniu procesów Zabbix;
- 1 - informacje krytyczne;
- 2 - informacje o błędach;
- 3 - ostrzeżenia;
- 4 - debugowanie (generuje dużą ilość informacji);
- 5 - rozszerzone debugowanie (generuje jeszcze więcej informacji).
Wartość domyślna: 3
Zakres: 0-5
DenyTool
Reguła z symbolem wieloznacznym, która blokuje narzędzie. Parametr można określić wielokrotnie.
Zablokowane narzędzie nie jest uwzględniane na liście narzędzi i nie można go wywołać.
Szczegółowe informacje zawiera sekcja AllowTool.
Przykład:
DenyTool=maintenance_delete
DenyToolRegexp
Reguła wyrażenia regularnego, która blokuje narzędzia. Parametr można określić wielokrotnie.
Szczegółowe informacje zawiera sekcja AllowToolRegexp.
Przykład:
DenyToolRegexp=^problem_(close|suppress)$
FrontendURL
Punkt końcowy API Zabbix: adres URL frontend Zabbix kończący się ciągiem api_jsonrpc.php.
Przykład:
FrontendURL=https://zabbix.example.com/api_jsonrpc.php
Wymagane: tak
IgnoreURLCertErrors
Określa sposób obsługi błędów walidacji certyfikatu TLS podczas uzyskiwania dostępu do API Zabbix:
false - nie ignoruj błędów certyfikatu;
true - ignoruj błędy certyfikatu (używaj tylko w środowisku deweloperskim).
Wartość domyślna: false
ListenIP
Adres IP, na którym nasłuchiwać.
Wartość domyślna: 0.0.0.0
ListenPort
Port, na którym nasłuchuje. Ścieżka punktu końcowego MCP to /mcp.
Wartość domyślna: 8443
Zakres: 1024-32767
LogFile
Nazwa pliku dziennika.
Wartość domyślna: /tmp/zabbix_mcp_server.log
Wymagane: Nie
LogFileSize
Maksymalny rozmiar pliku dziennika w MB.
0 - wyłącza automatyczną rotację dziennika.
Wartość domyślna: 1
Zakres: 0-1024
LogType
Typ danych wyjściowych dziennika:
- file - zapisuje dziennik w pliku określonym przez parametr LogFile;
- system - zapisuje dziennik w syslog;
- console - zapisuje dziennik na standardowym wyjściu.
Wartość domyślna: file
MaxResponseSize
Maksymalny rozmiar odpowiedzi zwracanej przez narzędzie odczytu. Osiągnięcie tego limitu lub wartości argumentu limit narzędzia — w zależności od tego, co nastąpi wcześniej — zatrzymuje odpowiedź.
Obsługuje przyrostki jednostek.
Wartość domyślna: 64K
Zakres: 16K-256K
PidFile
Nazwa pliku PID.
Wartość domyślna: /tmp/zabbix_mcp_server.pid
Limit czasu
Maksymalny czas (w sekundach) oczekiwania na odpowiedź z API Zabbix.
Wartość domyślna: 10
Zakres: 3-30
TLSAccept
Jakie połączenia przychodzące akceptować:
- unencrypted - akceptowanie połączeń bez szyfrowania (domyślnie);
- cert - akceptowanie połączeń TLS z certyfikatem.
Wartość domyślna: unencrypted
TLSCertFile
Pełna ścieżka do pliku zawierającego certyfikat serwera lub łańcuch certyfikatów.
Wymagane: Tak, jeśli parametr TLSAccept jest ustawiony na cert; w przeciwnym razie nie
TLSKeyFile
Pełna ścieżka do pliku zawierającego klucz prywatny serwera.
Wymagane: Tak, jeśli parametr TLSAccept ma wartość cert; w przeciwnym razie nie
ToolPrefix
Prefiks dodawany do nazw wszystkich narzędzi, na przykład w celu uniknięcia konfliktów nazw z narzędziami innych serwerów MCP. Na przykład przy ustawieniu ToolPrefix=zbx_ narzędzie host_get jest udostępniane jako zbx_host_get.
Dozwolone znaki: litery, cyfry, podkreślenie (_), łącznik (-) i kropka (.).
Reguły dostępu do narzędzi odnoszą się do nazw narzędzi bez prefiksu.
Przykład:
ToolPrefix=zbx_