LibreNMS MCP
Rank #1,598io.github.mhajder/librenms-mcp
MCP server for LibreNMS network monitoring - query devices, ports, alerts, and manage infrastructure
LibreNMS MCP is a Model Context Protocol (MCP) server published by mhajder. It ranks #1,598 of 115,460 servers tracked on MCP Toplist, and its repository has 37 GitHub stars. LibreNMS MCP is listed across 3 registries — Official MCP, PulseMCP and Glama, with 9 tracked versions. It was first listed on Aug 9, 2025 and most recently updated on Aug 12, 2026.
Ranks ahead of 113,862 of 115,460 servers on MCP Toplist.
Use LibreNMS MCP
Requires user-supplied configuration before first use — typically an API key, token or connection string set via environment variables.
claude mcp add librenms-mcp -e "LIBRENMS_URL=<your LIBRENMS_URL>" -e "LIBRENMS_TOKEN=<your LIBRENMS_TOKEN>" -e "LIBRENMS_VERIFY_SSL=<your LIBRENMS_VERIFY_SSL>" -e "LIBRENMS_TIMEOUT=<your LIBRENMS_TIMEOUT>" -e "READ_ONLY_MODE=<your READ_ONLY_MODE>" -e "DISABLED_TAGS=<your DISABLED_TAGS>" -e "LOG_LEVEL=<your LOG_LEVEL>" -e "RATE_LIMIT_ENABLED=<your RATE_LIMIT_ENABLED>" -e "RATE_LIMIT_MAX_REQUESTS=<your RATE_LIMIT_MAX_REQUESTS>" -e "RATE_LIMIT_WINDOW_MINUTES=<your RATE_LIMIT_WINDOW_MINUTES>" -e "TOOL_SEARCH_ENABLED=<your TOOL_SEARCH_ENABLED>" -e "TOOL_SEARCH_STRATEGY=<your TOOL_SEARCH_STRATEGY>" -e "TOOL_SEARCH_MAX_RESULTS=<your TOOL_SEARCH_MAX_RESULTS>" -- uvx librenms-mcpReplace each placeholder with your own value before saving.
claude mcp add librenms-mcp -e "LIBRENMS_URL=<your LIBRENMS_URL>" -e "LIBRENMS_TOKEN=<your LIBRENMS_TOKEN>" -e "LIBRENMS_VERIFY_SSL=<your LIBRENMS_VERIFY_SSL>" -e "LIBRENMS_TIMEOUT=<your LIBRENMS_TIMEOUT>" -e "READ_ONLY_MODE=<your READ_ONLY_MODE>" -e "DISABLED_TAGS=<your DISABLED_TAGS>" -e "LOG_LEVEL=<your LOG_LEVEL>" -e "RATE_LIMIT_ENABLED=<your RATE_LIMIT_ENABLED>" -e "RATE_LIMIT_MAX_REQUESTS=<your RATE_LIMIT_MAX_REQUESTS>" -e "RATE_LIMIT_WINDOW_MINUTES=<your RATE_LIMIT_WINDOW_MINUTES>" -e "TOOL_SEARCH_ENABLED=<your TOOL_SEARCH_ENABLED>" -e "TOOL_SEARCH_STRATEGY=<your TOOL_SEARCH_STRATEGY>" -e "TOOL_SEARCH_MAX_RESULTS=<your TOOL_SEARCH_MAX_RESULTS>" -e "MCP_HTTP_PORT=<your MCP_HTTP_PORT>" -e "MCP_HTTP_BEARER_TOKEN=<your MCP_HTTP_BEARER_TOKEN>" -e "MCP_TRANSPORT=<your MCP_TRANSPORT>" -- uvx librenms-mcpReplace each placeholder with your own value before saving.
claude mcp add librenms-mcp -e "LIBRENMS_URL=<your LIBRENMS_URL>" -e "LIBRENMS_TOKEN=<your LIBRENMS_TOKEN>" -e "LIBRENMS_VERIFY_SSL=<your LIBRENMS_VERIFY_SSL>" -e "LIBRENMS_TIMEOUT=<your LIBRENMS_TIMEOUT>" -e "READ_ONLY_MODE=<your READ_ONLY_MODE>" -e "DISABLED_TAGS=<your DISABLED_TAGS>" -e "LOG_LEVEL=<your LOG_LEVEL>" -e "RATE_LIMIT_ENABLED=<your RATE_LIMIT_ENABLED>" -e "RATE_LIMIT_MAX_REQUESTS=<your RATE_LIMIT_MAX_REQUESTS>" -e "RATE_LIMIT_WINDOW_MINUTES=<your RATE_LIMIT_WINDOW_MINUTES>" -e "TOOL_SEARCH_ENABLED=<your TOOL_SEARCH_ENABLED>" -e "TOOL_SEARCH_STRATEGY=<your TOOL_SEARCH_STRATEGY>" -e "TOOL_SEARCH_MAX_RESULTS=<your TOOL_SEARCH_MAX_RESULTS>" -e "SENTRY_DSN=<your SENTRY_DSN>" -e "SENTRY_TRACES_SAMPLE_RATE=<your SENTRY_TRACES_SAMPLE_RATE>" -e "SENTRY_SEND_DEFAULT_PII=<your SENTRY_SEND_DEFAULT_PII>" -e "SENTRY_ENVIRONMENT=<your SENTRY_ENVIRONMENT>" -e "SENTRY_RELEASE=<your SENTRY_RELEASE>" -e "SENTRY_PROFILE_SESSION_SAMPLE_RATE=<your SENTRY_PROFILE_SESSION_SAMPLE_RATE>" -e "SENTRY_PROFILE_LIFECYCLE=<your SENTRY_PROFILE_LIFECYCLE>" -e "SENTRY_ENABLE_LOGS=<your SENTRY_ENABLE_LOGS>" -e "MCP_HTTP_PORT=<your MCP_HTTP_PORT>" -e "MCP_HTTP_BEARER_TOKEN=<your MCP_HTTP_BEARER_TOKEN>" -e "MCP_TRANSPORT=<your MCP_TRANSPORT>" -- docker run -i --rm -p "{MCP_HTTP_PORT}:{MCP_HTTP_PORT}" ghcr.io/mhajder/librenms-mcp:1.11.1Replace each placeholder with your own value before saving.
[mcp_servers.librenms-mcp]
command = "uvx"
args = ["librenms-mcp"]
[mcp_servers.librenms-mcp.env]
LIBRENMS_URL = "<your LIBRENMS_URL>"
LIBRENMS_TOKEN = "<your LIBRENMS_TOKEN>"
LIBRENMS_VERIFY_SSL = "<your LIBRENMS_VERIFY_SSL>"
LIBRENMS_TIMEOUT = "<your LIBRENMS_TIMEOUT>"
READ_ONLY_MODE = "<your READ_ONLY_MODE>"
DISABLED_TAGS = "<your DISABLED_TAGS>"
LOG_LEVEL = "<your LOG_LEVEL>"
RATE_LIMIT_ENABLED = "<your RATE_LIMIT_ENABLED>"
RATE_LIMIT_MAX_REQUESTS = "<your RATE_LIMIT_MAX_REQUESTS>"
RATE_LIMIT_WINDOW_MINUTES = "<your RATE_LIMIT_WINDOW_MINUTES>"
TOOL_SEARCH_ENABLED = "<your TOOL_SEARCH_ENABLED>"
TOOL_SEARCH_STRATEGY = "<your TOOL_SEARCH_STRATEGY>"
TOOL_SEARCH_MAX_RESULTS = "<your TOOL_SEARCH_MAX_RESULTS>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
[mcp_servers.librenms-mcp]
command = "uvx"
args = ["librenms-mcp"]
[mcp_servers.librenms-mcp.env]
LIBRENMS_URL = "<your LIBRENMS_URL>"
LIBRENMS_TOKEN = "<your LIBRENMS_TOKEN>"
LIBRENMS_VERIFY_SSL = "<your LIBRENMS_VERIFY_SSL>"
LIBRENMS_TIMEOUT = "<your LIBRENMS_TIMEOUT>"
READ_ONLY_MODE = "<your READ_ONLY_MODE>"
DISABLED_TAGS = "<your DISABLED_TAGS>"
LOG_LEVEL = "<your LOG_LEVEL>"
RATE_LIMIT_ENABLED = "<your RATE_LIMIT_ENABLED>"
RATE_LIMIT_MAX_REQUESTS = "<your RATE_LIMIT_MAX_REQUESTS>"
RATE_LIMIT_WINDOW_MINUTES = "<your RATE_LIMIT_WINDOW_MINUTES>"
TOOL_SEARCH_ENABLED = "<your TOOL_SEARCH_ENABLED>"
TOOL_SEARCH_STRATEGY = "<your TOOL_SEARCH_STRATEGY>"
TOOL_SEARCH_MAX_RESULTS = "<your TOOL_SEARCH_MAX_RESULTS>"
MCP_HTTP_PORT = "<your MCP_HTTP_PORT>"
MCP_HTTP_BEARER_TOKEN = "<your MCP_HTTP_BEARER_TOKEN>"
MCP_TRANSPORT = "<your MCP_TRANSPORT>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
[mcp_servers.librenms-mcp]
command = "docker"
args = ["run", "-i", "--rm", "-p", "{MCP_HTTP_PORT}:{MCP_HTTP_PORT}", "ghcr.io/mhajder/librenms-mcp:1.11.1"]
[mcp_servers.librenms-mcp.env]
LIBRENMS_URL = "<your LIBRENMS_URL>"
LIBRENMS_TOKEN = "<your LIBRENMS_TOKEN>"
LIBRENMS_VERIFY_SSL = "<your LIBRENMS_VERIFY_SSL>"
LIBRENMS_TIMEOUT = "<your LIBRENMS_TIMEOUT>"
READ_ONLY_MODE = "<your READ_ONLY_MODE>"
DISABLED_TAGS = "<your DISABLED_TAGS>"
LOG_LEVEL = "<your LOG_LEVEL>"
RATE_LIMIT_ENABLED = "<your RATE_LIMIT_ENABLED>"
RATE_LIMIT_MAX_REQUESTS = "<your RATE_LIMIT_MAX_REQUESTS>"
RATE_LIMIT_WINDOW_MINUTES = "<your RATE_LIMIT_WINDOW_MINUTES>"
TOOL_SEARCH_ENABLED = "<your TOOL_SEARCH_ENABLED>"
TOOL_SEARCH_STRATEGY = "<your TOOL_SEARCH_STRATEGY>"
TOOL_SEARCH_MAX_RESULTS = "<your TOOL_SEARCH_MAX_RESULTS>"
SENTRY_DSN = "<your SENTRY_DSN>"
SENTRY_TRACES_SAMPLE_RATE = "<your SENTRY_TRACES_SAMPLE_RATE>"
SENTRY_SEND_DEFAULT_PII = "<your SENTRY_SEND_DEFAULT_PII>"
SENTRY_ENVIRONMENT = "<your SENTRY_ENVIRONMENT>"
SENTRY_RELEASE = "<your SENTRY_RELEASE>"
SENTRY_PROFILE_SESSION_SAMPLE_RATE = "<your SENTRY_PROFILE_SESSION_SAMPLE_RATE>"
SENTRY_PROFILE_LIFECYCLE = "<your SENTRY_PROFILE_LIFECYCLE>"
SENTRY_ENABLE_LOGS = "<your SENTRY_ENABLE_LOGS>"
MCP_HTTP_PORT = "<your MCP_HTTP_PORT>"
MCP_HTTP_BEARER_TOKEN = "<your MCP_HTTP_BEARER_TOKEN>"
MCP_TRANSPORT = "<your MCP_TRANSPORT>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:{MCP_HTTP_PORT}",
"ghcr.io/mhajder/librenms-mcp:1.11.1"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"SENTRY_DSN": "<your SENTRY_DSN>",
"SENTRY_TRACES_SAMPLE_RATE": "<your SENTRY_TRACES_SAMPLE_RATE>",
"SENTRY_SEND_DEFAULT_PII": "<your SENTRY_SEND_DEFAULT_PII>",
"SENTRY_ENVIRONMENT": "<your SENTRY_ENVIRONMENT>",
"SENTRY_RELEASE": "<your SENTRY_RELEASE>",
"SENTRY_PROFILE_SESSION_SAMPLE_RATE": "<your SENTRY_PROFILE_SESSION_SAMPLE_RATE>",
"SENTRY_PROFILE_LIFECYCLE": "<your SENTRY_PROFILE_LIFECYCLE>",
"SENTRY_ENABLE_LOGS": "<your SENTRY_ENABLE_LOGS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:{MCP_HTTP_PORT}",
"ghcr.io/mhajder/librenms-mcp:1.11.1"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"SENTRY_DSN": "<your SENTRY_DSN>",
"SENTRY_TRACES_SAMPLE_RATE": "<your SENTRY_TRACES_SAMPLE_RATE>",
"SENTRY_SEND_DEFAULT_PII": "<your SENTRY_SEND_DEFAULT_PII>",
"SENTRY_ENVIRONMENT": "<your SENTRY_ENVIRONMENT>",
"SENTRY_RELEASE": "<your SENTRY_RELEASE>",
"SENTRY_PROFILE_SESSION_SAMPLE_RATE": "<your SENTRY_PROFILE_SESSION_SAMPLE_RATE>",
"SENTRY_PROFILE_LIFECYCLE": "<your SENTRY_PROFILE_LIFECYCLE>",
"SENTRY_ENABLE_LOGS": "<your SENTRY_ENABLE_LOGS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"servers": {
"librenms-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"servers": {
"librenms-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"servers": {
"librenms-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:{MCP_HTTP_PORT}",
"ghcr.io/mhajder/librenms-mcp:1.11.1"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"SENTRY_DSN": "<your SENTRY_DSN>",
"SENTRY_TRACES_SAMPLE_RATE": "<your SENTRY_TRACES_SAMPLE_RATE>",
"SENTRY_SEND_DEFAULT_PII": "<your SENTRY_SEND_DEFAULT_PII>",
"SENTRY_ENVIRONMENT": "<your SENTRY_ENVIRONMENT>",
"SENTRY_RELEASE": "<your SENTRY_RELEASE>",
"SENTRY_PROFILE_SESSION_SAMPLE_RATE": "<your SENTRY_PROFILE_SESSION_SAMPLE_RATE>",
"SENTRY_PROFILE_LIFECYCLE": "<your SENTRY_PROFILE_LIFECYCLE>",
"SENTRY_ENABLE_LOGS": "<your SENTRY_ENABLE_LOGS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:{MCP_HTTP_PORT}",
"ghcr.io/mhajder/librenms-mcp:1.11.1"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"SENTRY_DSN": "<your SENTRY_DSN>",
"SENTRY_TRACES_SAMPLE_RATE": "<your SENTRY_TRACES_SAMPLE_RATE>",
"SENTRY_SEND_DEFAULT_PII": "<your SENTRY_SEND_DEFAULT_PII>",
"SENTRY_ENVIRONMENT": "<your SENTRY_ENVIRONMENT>",
"SENTRY_RELEASE": "<your SENTRY_RELEASE>",
"SENTRY_PROFILE_SESSION_SAMPLE_RATE": "<your SENTRY_PROFILE_SESSION_SAMPLE_RATE>",
"SENTRY_PROFILE_LIFECYCLE": "<your SENTRY_PROFILE_LIFECYCLE>",
"SENTRY_ENABLE_LOGS": "<your SENTRY_ENABLE_LOGS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "uvx",
"args": [
"librenms-mcp"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Replace each placeholder with your own value before saving.
{
"mcpServers": {
"librenms-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:{MCP_HTTP_PORT}",
"ghcr.io/mhajder/librenms-mcp:1.11.1"
],
"env": {
"LIBRENMS_URL": "<your LIBRENMS_URL>",
"LIBRENMS_TOKEN": "<your LIBRENMS_TOKEN>",
"LIBRENMS_VERIFY_SSL": "<your LIBRENMS_VERIFY_SSL>",
"LIBRENMS_TIMEOUT": "<your LIBRENMS_TIMEOUT>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"SENTRY_DSN": "<your SENTRY_DSN>",
"SENTRY_TRACES_SAMPLE_RATE": "<your SENTRY_TRACES_SAMPLE_RATE>",
"SENTRY_SEND_DEFAULT_PII": "<your SENTRY_SEND_DEFAULT_PII>",
"SENTRY_ENVIRONMENT": "<your SENTRY_ENVIRONMENT>",
"SENTRY_RELEASE": "<your SENTRY_RELEASE>",
"SENTRY_PROFILE_SESSION_SAMPLE_RATE": "<your SENTRY_PROFILE_SESSION_SAMPLE_RATE>",
"SENTRY_PROFILE_LIFECYCLE": "<your SENTRY_PROFILE_LIFECYCLE>",
"SENTRY_ENABLE_LOGS": "<your SENTRY_ENABLE_LOGS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_HTTP_BEARER_TOKEN": "<your MCP_HTTP_BEARER_TOKEN>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Replace each placeholder with your own value before saving.
Show your rank
Maintain this server? Add the live rank badge to your README — it updates automatically as the leaderboard changes.
[](https://mcptoplist.com/server/io.github.mhajder%2Flibrenms-mcp)<a href="https://mcptoplist.com/server/io.github.mhajder%2Flibrenms-mcp"><img src="https://mcptoplist.com/badge/io.github.mhajder%2Flibrenms-mcp.svg" alt="MCP Toplist: Top 5% of 115,460" /></a>Variants: append ?metric=score or ?metric=stars to the image URL.
Listed on 1 registry (2 delisted)
mhajder
Other servers by mhajder
View all mhajder servers →Available versions (9)
| Version | Published |
|---|---|
| 1.11.1 | Aug 12, 2026 |
| 1.11.0 | Jul 31, 2026 |
| 1.10.0 | Jun 5, 2026 |
| 1.9.0 | Apr 15, 2026 |
| 1.8.0 | Apr 9, 2026 |
| 1.7.0 | Feb 18, 2026 |
| 1.6.0 | Feb 7, 2026 |
| 1.5.0 | Jan 25, 2026 |
| 0.1.0 | Nov 25, 2024 |
Frequently asked questions
- Who maintains LibreNMS MCP?
- LibreNMS MCP is maintained by mhajder, which publishes 3 MCP servers (23 total versions) tracked on MCP Toplist.
- Is LibreNMS MCP listed on the Official MCP Registry?
- Yes — LibreNMS MCP is listed on the Official MCP Registry, alongside PulseMCP and Glama.
- How many versions does LibreNMS MCP have?
- MCP Toplist tracks 9 versions of LibreNMS MCP, most recently published on Aug 12, 2026.
- Where can I find the source code for LibreNMS MCP?
- The source code for LibreNMS MCP is hosted at github.com/mhajder/librenms-mcp.