DLI Power Switch

Provides an MCP server to discover, query, and control Digital Loggers power switches with safety for critical and prohibited outlets.
  • python

0

GitHub Stars

python

Language

4 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs

You can manage Digital Loggers Web Power Switches through a dedicated MCP server that exposes safe, programmable control over outlets. This MCP server supports discovering hardware, checking outlet statuses, and performing power actions (On, Off, Cycle) with safety checks to prevent unintended disruptions to critical infrastructure.

How to use

Begin by discovering what switches and outlets are available and their current states. Then you can issue targeted actions to turn outlets on, off, or cycle power, while respecting safety constraints for critical or prohibited outlets.

How to install

Prerequisites: you need Python and pip available on your system.

Install the MCP server from PyPI using pip.

pip install dli-mcp-server

Register the MCP server with the Gemini CLI so it starts automatically. Use the example that matches your environment. The command runs the server script and optionally sets the configuration file path.

gemini mcp add dli-mcp-server dli-mcp-server -e DLI_MCP_CONFIG="/path/to/your/config.json" -s user

If you prefer an explicit local path to the server script, specify the Python command and the full path to the server file.

gemini mcp add dli-mcp-server python "/path/to/dli-mcp-server/server.py" -e DLI_MCP_CONFIG="/path/to/your/config.json" -s user

If you are using a default or project-scoped configuration, you can omit the -e option and the configuration file will be read from the server directory by default.

Additional sections

Configuration file

The server uses a configuration file named switches_config.json by default. This file defines each switch by IP address, authentication credentials, outlet aliases, and safety types. You can override this default by setting the DLI_MCP_CONFIG environment variable to the path of your custom configuration file.

Safety and usage guidelines

  • Critical outlets require explicit confirmation for dangerous actions when the system poses a safety risk. Always confirm when prompted to avoid unintended shutdowns of essential services.

  • Prohibited outlets cannot be modified. If a user attempts to control a prohibited outlet, you should deny the action and explain the restriction.

Tools and endpoints

Available tools

get_inventory

Returns the current inventory of switches, outlets, and their statuses to help you plan actions.

power_action

Performs on/off/cycle actions on a single outlet, with optional safety confirmation for critical or restricted outlets.

group_power_action

Executes a power action on a group of outlets sequentially, aborting if any member is prohibited.

sync_config_from_hardware

Synchronizes outlet names from the hardware into the configuration file without overwriting safety classifications.

add_switch

Adds a new DLI power switch to the configuration using its IP address and credentials.

remove_switch

Removes a DLI power switch from the configuration by alias or IP.

list_outlets

Lists all outlets on a specified switch along with their current status.

update_outlet

Updates the configuration of an outlet, including name, description, or type, and writes changes to the hardware when applicable.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational