Mmcp.market

LibreNMS MCP server

by mhajder·io.github.mhajder/librenms-mcp·v1.11.2

MCP server for LibreNMS network monitoring - query devices, ports, alerts, and manage infrastructure

B83/100grade B
What users say
No reviews yet
Be the first
Safety scan
B83/100

full report

Adoption
Established

37 stars191 downloads/wk

Reviews

Write one

Nobody has reviewed LibreNMS MCP yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

LibreNMS MCP tools (100, 11 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • alert_acknowledge

    Acknowledge an alert in LibreNMS by ID.

  • alert_get_by_id

    Get a specific alert from LibreNMS by ID.

  • alert_rule_add

    Add a new alert rule to LibreNMS.

  • alert_rule_deletewrite action

    Delete an alert rule from LibreNMS by ID.

  • alert_rule_edit

    Edit an existing alert rule in LibreNMS.

  • alert_rule_get

    Get details for a specific alert rule by ID.

  • alert_rules_list

    List all alert rules from LibreNMS.

  • alert_template_createwrite action

    Create a new alert template in LibreNMS.

  • alert_template_edit

    Edit an existing alert template in LibreNMS.

  • alert_template_get

    Get a specific alert template from LibreNMS by ID.

  • alert_templates_list

    List all alert templates from LibreNMS.

  • alert_unmute

    Unmute an alert in LibreNMS by ID.

  • alerts_get

    Get alerts from LibreNMS with optional filters.

  • arp_search

    Retrieve ARP entries from LibreNMS by search query.

  • bgp_session_edit

    Edit BGP session in LibreNMS by ID.

  • bgp_session_get

    Get BGP session from LibreNMS by ID.

  • bgp_sessions

    List BGP sessions from LibreNMS with optional filters.

  • bill_create_or_updatewrite action

    Create or update a bill in LibreNMS.

  • bill_deletewrite action

    Delete a bill from LibreNMS by ID.

  • bill_get

    Get a specific bill from LibreNMS by ID.

  • bill_graph

    Render a bill graph as an image.

  • bill_graph_data

    Get bill graph data from LibreNMS.

  • bill_history

    Get bill history from LibreNMS.

  • bill_history_graph

    Render a graph for a past billing period as an image.

  • bill_history_graph_data

    Get bill history graph data from LibreNMS.

  • bills_list

    List bills from LibreNMS with optional filters.

  • device_add

    Add a new device to LibreNMS.

  • device_availability

    Get device availability from LibreNMS.

  • device_deletewrite action

    Delete a device from LibreNMS by hostname.

  • device_discover

    Trigger device rediscovery in LibreNMS.

  • device_eventlog_add

    Add a custom event log entry for a device.

  • device_fdb

    List the forwarding database (learned MAC addresses) for a device.

  • device_get

    Get device details from LibreNMS by hostname.

  • device_graph

    Render a device-level graph as an image.

  • device_graphs_list

    List the graph types available for a device.

  • device_links

    Get network links for a specific device.

  • device_maintenance_status

    Check if a device is currently in maintenance mode.

  • device_nac

    List network access control (802.1X / MAB) sessions on a device.

  • device_outages

    Get device outages from LibreNMS.

  • device_ports

    List ports for a device from LibreNMS.

  • device_ports_get

    Get port info for a device by interface name.

  • device_rename

    Rename a device in LibreNMS.

  • device_set_maintenance

    Set device maintenance in LibreNMS.

  • device_updatewrite action

    Update device fields in LibreNMS.

  • device_vlans

    Get VLANs configured on a specific device.

  • devicegroup_add

    Add a new device group to LibreNMS.

  • devicegroup_add_devices

    Add devices to a device group in LibreNMS.

  • devicegroup_deletewrite action

    Delete a device group from LibreNMS by name.

  • devicegroup_devices

    List devices in a device group from LibreNMS.

  • devicegroup_remove_deviceswrite action

    Remove devices from a device group in LibreNMS.

  • devicegroup_set_maintenance

    Set maintenance for a device group in LibreNMS.

  • devicegroup_updatewrite action

    Update a device group in LibreNMS.

  • devicegroups_list

    List all device groups from LibreNMS.

  • devices_list

    List devices from LibreNMS with optional filters.

  • fdb_lookup

    Look up a MAC address in the forwarding database.

  • health_by_type

    Get health data by sensor type for a device.

  • health_list

    List available health graphs for a device.

  • health_sensor_get

    Get a specific sensor by ID for a device.

  • inventory_device

    Get inventory for a device from LibreNMS.

  • inventory_device_flat

    Get flattened inventory for a device from LibreNMS.

  • location_add

    Add a new location to LibreNMS.

  • location_deletewrite action

    Delete a location from LibreNMS by identifier.

  • location_edit

    Edit a location in LibreNMS.

  • location_get

    Get a specific location from LibreNMS by identifier.

  • location_set_maintenance

    Set maintenance mode for all devices in a location.

  • locations_list

    List locations from LibreNMS.

  • logs_alertlog

    Get alert logs for a device from LibreNMS.

  • logs_authlog

    Get authentication logs from LibreNMS.

  • logs_eventlog

    Get event logs for a device from LibreNMS.

  • logs_syslog

    Get syslogs for a device from LibreNMS.

  • logs_syslogsink

    Add a syslog entry to LibreNMS via API sink.

  • nac_list

    List network access control (802.1X / MAB) sessions across all devices.

  • ospf_list

    List all OSPF instances from LibreNMS.

  • ospf_ports

    List all OSPF ports/interfaces from LibreNMS.

  • oxidized_config_get

    Get the stored device configuration from Oxidized for a specific device.

  • oxidized_config_search

    Search all Oxidized device configurations for a string.

  • oxidized_list

    List devices tracked by Oxidized for config backup.

  • poller_group_get

    Get poller group(s) from LibreNMS.

  • port_description_get

    Get port description from LibreNMS by port ID.

  • port_description_updatewrite action

    Update port description in LibreNMS by port ID.

  • port_get

    Get port info from LibreNMS by port ID.

  • port_graph

    Render a per-port graph as an image, for example interface traffic.

  • port_group_add

    Add a port group to LibreNMS.

  • port_group_graph

    Render a traffic graph for one or more ports, by port ID.

  • port_group_list_ports

    List ports in a port group from LibreNMS.

  • port_groups_list

    List port groups from LibreNMS.

  • port_ip_info

    Get port IP info from LibreNMS by port ID.

  • port_security_device

    Get port security configuration for every port on a device.

  • port_security_list

    List port security configuration across all devices.

  • port_security_port

    Get port security configuration for a single port.

  • port_transceiver

    Get port transceiver info from LibreNMS by port ID.

  • ports_list

    Get all ports from LibreNMS with optional filters.

  • ports_search

    Search ports in LibreNMS by search string.

  • ports_search_field

    Search ports in LibreNMS by specific field.

  • ports_search_mac

    Search ports in LibreNMS by MAC address.

  • routing_ip_addresses

    List all IP addresses from LibreNMS.

  • sensors_list

    List all sensors across all devices.

  • switching_links

    List all links from LibreNMS.

  • switching_vlans

    List all VLANs from LibreNMS.

  • vrf_list

    List all VRF (Virtual Routing and Forwarding) instances from LibreNMS.

Public scan report

scanner v0.1.9 · 2026-09-20 · same rubric, same numbers if you re-run it

no findings
  • Code scan28 source files scanned; 28 source files scanned25/25
  • Live reliabilityno gateway calls yet and no remote to proben/a
  • Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 3 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 83/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

What the publisher says

From the LibreNMS MCP repository's README, as published. We do not edit it. Read it on GitHub

LibreNMS MCP Server

<!-- mcp-name: io.github.mhajder/librenms-mcp -->

LibreNMS MCP Server is a Python-based Model Context Protocol (MCP) server designed to provide advanced, programmable access to LibreNMS network monitoring data and management features. It exposes a modern API for querying, automating, and integrating LibreNMS resources such as devices, ports, alerts, inventory, locations, logs, and more. The server supports both read and write operations, robust security features, and is suitable for integration with automation tools, dashboards, and custom network management workflows.

Features

Core Features

  • Query LibreNMS devices, ports, inventory, locations, logs, and alerts with flexible filtering
  • Retrieve network topology, device status, and performance metrics
  • Access and analyze alert history, event logs, and system health
  • Monitor interface statistics, port status, and traffic data
  • Track endpoints and connected devices by MAC or IP address
  • Retrieve and manage device groups, port groups, and poller groups
  • Get detailed information about network services and routing

Management Operations

  • Create, update, and delete devices, ports, and groups (if enabled)
  • Manage alert rules, notifications, and device metadata
  • Configure read-only mode to restrict all write operations for safe monitoring
  • Support for bulk operations on devices and ports

Advanced Capabilities

  • Rate limiting and API security features
  • Real-time network monitoring and health tracking
  • Comprehensive logging and audit trails
  • SSL/TLS support and configurable timeouts
  • Optional tool-search transform for large tool catalogs
  • Extensible with custom middlewares and utilities

Installation

Prerequisites

  • Python 3.11 to 3.14
  • Access to a LibreNMS
  • Valid LibreNMS token with appropriate permissions

Quick Install from PyPI

The easiest way to get started is to install from PyPI:

# Using UV (recommended)
uvx librenms-mcp

# Or using pip
pip install librenms-mcp

Remember to configure the environment variables for your LibreNMS instance before running the server:

# Create environment configuration
export LIBRENMS_URL=https://domain.tld:8443
export LIBRENMS_TOKEN=your-librenms-token

For more details, visit: https://pypi.org/project/librenms-mcp/

Install from Source

  1. Clone the repository:
git clone https://github.com/mhajder/librenms-mcp.git
cd librenms-mcp
  1. Install dependencies:
# Using UV (recommended)
uv sync

# Or using pip
pip install -e .
  1. Configure environment variables:
cp .env.example .env
# Edit .env with your LibreNMS url and token
  1. Run the server:
# Using UV (recommended)
uv run librenms-mcp

# Or using the installed command directly
librenms-mcp

Using Docker

A Docker images are available on GitHub Packages for easy deployment.

# Normal STDIO image
docker pull ghcr.io/mhajder/librenms-mcp:latest

# MCPO image for usage with Open WebUI
docker pull ghcr.io/mhajder/librenms-mcpo:latest

Development Setup

For development with additional tools:

# Clone and install with development dependencies
git clone https://github.com/mhajder/librenms-mcp.git
cd librenms-mcp
uv sync --group dev

# Run tests
uv run pytest

# Run with coverage
uv run pytest --cov=src/

# Run linting and formatting
uv run ruff check .
uv run ruff format .

# Run type checking
uv run ty check .

# Setup pre-commit hooks
uv run prek install

Configuration

Environment Variables

# LibreNMS Connection Details
LIBRENMS_URL=https://domain.tld:8443
LIBRENMS_TOKEN=your-librenms-token

# SSL Configuration
LIBRENMS_VERIFY_SSL=true
LIBRENMS_TIMEOUT=30

# Read-Only Mode
# Set READ_ONLY_MODE true to disable all write operations (put, post, delete)
READ_ONLY_MODE=false

# Disabled Tags
# Comma-separated list of tags to disable tools for (empty by default)
# Example: DISABLED_TAGS=alert,bills
DISABLED_TAGS=

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Install directly

claude mcp add librenms-mcp -- uvx librenms-mcp
Add to Cursor

LibreNMS MCP: common questions

Is LibreNMS MCP server safe?
Mostly: it is graded B (83/100). Read the LibreNMS MCP safety report
How do I install LibreNMS MCP?
It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
Does LibreNMS MCP need an API key?
Yes. The registry entry asks for LIBRENMS_TOKEN, MCP_HTTP_BEARER_TOKEN, SENTRY_DSN.
Is LibreNMS MCP maintained?
The last commit was 3 days ago (2026-09-18). The latest release is v1.11.2.
What can I use instead of LibreNMS MCP?
Servers from other publishers that do the same job: Netdata MCP server.

Alternatives to LibreNMS MCP

Same job from other publishers: the closest match first, then the best rated.

  • Netdata
    Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
    A

More from mhajder