Skip to main content

vibeMK 🚀

CheckMK Monitoring via LLM - Professional MCP Server

Python 3.10+ CheckMK 2.3+ License: GPL v3 MCP Compatible MCP SDK Code style: black Typed

🎯 Overview

vibeMK enables complete management of your CheckMK monitoring environment directly through LLM interfaces using natural language. This project is in the alpha stage and under development. I accept no liability for any damage resulting from the use of this software.

vibeMK - Current Features

Live Monitoring ✅

  • Host Status: Real-time host state (UP/DOWN/UNREACHABLE) with hard state detection
  • Service Status: Live service monitoring (OK/WARNING/CRITICAL/UNKNOWN)
  • Performance Metrics: Retrieve metrics data with automatic discovery
  • Current Problems: Auto-detect all active monitoring issues

Downtime Management ✅

  • Schedule Downtimes: Create host/service downtimes with flexible duration parsing ("2h", "1h30m")
  • List & Filter: View all downtimes or filter for active ones only

Problem Management ✅

  • Acknowledge Problems: Set acknowledgements for host/service issues (sticky/persistent options)
  • List Acknowledgements: View all current problem acknowledgements
  • Remove Acknowledgements: Delete by pattern or individual removal

Configuration Management ✅

  • Folders: Create/delete monitoring folder structures
  • Rules: Create rules for 2000+ CheckMK ruleset types with proper format handling
  • Time Periods: Create custom notification schedules (business hours, 24/7, etc.)
  • Host Groups: Organize hosts into logical groups

User & Security ✅

  • User Accounts: Create/manage user accounts with role assignment
  • Password Management: Set passwords with policy enforcement
  • Contact Groups: Manage notification groups
  • Host/Service Tags: Comprehensive tagging system

🚀 Quick Start

1. pipx install vibemk   (or: uv tool install vibemk, or pip install vibemk into a virtual environment)
2. Edit the configuration file of your LLM Client, e.g. Claude Desktop - claude_desktop_config.json (See examples)
3. Start your LLM Client
4. CheckMK automation user setup (Administrator permissions or a customized role if changes are to be made, read-only if only analyses are to be performed.)
5. voila - configure checkmk using natural language

Complete Installation Guide: See INSTALL.md for detailed step-by-step instructions. Upgrading from 0.3.x or older: git pull is not enough, see Upgrading. More Examples: See examples/llm_configs/ and INSTALL.md
Visual Examples: See examples/Screenshots/ for example prompts and usage patterns

🔌 Running it

Locally (default). The LLM client starts vibeMK itself over stdio. Nothing to host, nothing to secure -- the client already owns the process.

Centrally. One instance can serve many clients over Streamable HTTP, so they need neither Python nor vibeMK installed:

export VIBEMK_HTTP_TOKEN="$(python -c 'import secrets; print(secrets.token_urlsafe(32))')"
vibemk --transport http --port 8765

Clients connect to http://<host>:8765/mcp and send Authorization: Bearer <token>. The token is mandatory, and vibeMK binds to localhost unless told otherwise: the CheckMK account lives on the server, so whoever reaches the port inherits it. See INSTALL.md for what that means before you expose it.

💡 Practical Prompt Examples

# Add new server
"Create a new host 'web-server-05' in folder 'Servers' with IP 192.168.1.105 and discover all services"

# Schedule maintenance
"Schedule a 2-hour downtime for the service Check_MK on 'cephnode01' starting at 22:00 tomorrow for 'Debian Updates'"

# Downtimes 
"show me all current scheduled downtimes."

# Metric analysis
"Compare the “response_time” metric of the “HTTPS Webservice” service of the two hosts www.google.de and www.heise.de for the last ten minutes."

# Ruleset analysis
"analyze and compare the rulesets "Filesystems (used space and growth)" and see, if there are duplicates or if rules can be combined."

Advanced Usage: See examples/ExamplePrompts.md for complex scenarios and tips

📚 Checkmk version compatibility

CheckMK Version Compatibility Features
2.5.x ✅ Full All features available, tested against 2.5.0p14 (Raw and Ultimate)
2.4.x ✅ Full All features available
2.3.x ✅ Full All features available
2.2.x and older 🔴 Unsupported

Checkmk Edition Support

  • Raw Edition: Fully supported, including the BI and Event Console endpoints
  • Enterprise Edition: Adds the Agent Bakery and custom graphs
  • Cloud Edition: All Enterprise features

Edition availability follows the operationId of each endpoint in the Checkmk OpenAPI document: cmk.gui.cee.* is Enterprise-only, everything else is served by every edition including Raw.

Security considerations

  • To let a model look without touching, start vibeMK read-only: --read-only or VIBEMK_READ_ONLY=1. Only the tools that read are offered, and a call to any other is refused before it reaches CheckMK
  • Be aware of the potential security risks when you unleash AI on your checkmk
  • Use at your own risk
  • I accept no responsibility for actions performed by an AI

📄 License

This project is licensed under the GNU General Public License v3.0.


Happy Monitoring with CheckMK and LLMs! 🎉

Metadata

Release files for vibemk 0.6.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vibemk 0.6.3
File Size Uploaded
vibemk-0.6.3.tar.gz 210.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for vibemk 0.6.3
File Interpreter ABI Platform
vibemk-0.6.3-py3-none-any.whl Python 3 none any Details

Total release size: 392.1 kB

Release files / vibemk-0.6.3.tar.gz

Download URL vibemk-0.6.3.tar.gz
Size 210.3 kB
Tags Source
SHA-256 checksum
How to use checksums
91e5307eec055fba802d5968ca7d178e04ea411feb365af4a8561423c1cc1e56
BLAKE2b-256 checksum
How to use checksums
ee6a8d4bf80f0318bac157ab7f94d79811d1c05c7aa543918e30e31566aaf4ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 2, 2026.

Transparency log

Release files / vibemk-0.6.3-py3-none-any.whl

Download URL vibemk-0.6.3-py3-none-any.whl
Size 181.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fefd78b7607ac6053552923f702661760442517ffe15dd18fcfd4e863a49a5a7
BLAKE2b-256 checksum
How to use checksums
03583a93f239f7c271cf36b0d25431e033cbef76818e2ebfe816d60c728d3e69
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 2, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.6.3 This release

2 release files

0.6.2

2 release files

0.6.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page