vega-janitha/LoRa-wms-mcp-server
If you are the rightful owner of LoRa-wms-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
This project provides an AI agent server for interacting with a LoRa-based Water Management System (WMS) via the MCP framework.
get_node_details
Get details for a node or all nodes on a gateway.
get_tank_details
Get tank levels for a node or all nodes.
control_node_relay
Control the relay state (0/1) on a node.
LoRa WMS MCP Server
This project provides an AI agent server for interacting with a LoRa-based Water Management System (WMS) via the MCP framework. It exposes tools for retrieving node and tank data, as well as controlling relays on WMS nodes.
Features
- Retrieve node details from a WMS gateway
- Get tank levels for nodes
- Control relay states on nodes
- FastAPI-based server via MCP
Project Structure
- : Entry point. Defines MCP tools and runs the server.
- : Handles HTTP requests to the WMS backend API.
- : Utility functions, including API header generation.
- : Loads configuration and secrets from environment variables.
- : Python dependencies.
Setup
-
Clone the repository
-
Install dependencies
pip install -r requirements.txt
-
Configure environment variables
Create a
.env
file in the root directory with:LIA_API_SECRET=your_lia_api_secret
The default API host is set to
https://neuraedgeai.com/backend
in . -
Run the server
python main.py
Usage
The server exposes the following tools:
-
get_node_details(gateway_id, node_id=None):
Get details for a node or all nodes on a gateway. -
get_tank_details(gateway_id, node_id=None, tank_number=None):
Get tank levels for a node or all nodes. -
control_node_relay(gateway_id, node_id, relay_number, relay_state):
Control the relay state (0/1) on a node.
See for tool signatures and error handling.
Development
- Python 3.10+
- Uses mcp-python, FastAPI, and Uvicorn.
License
See LICENSE
(not included by default).
Note:
API credentials and endpoints are required for the server to function. Ensure you have access to the WMS backend.