MCP Server for IoT Device Management — register, monitor, and control IoT devices via AI agents
Project description
IoT Device Management MCP Server
MCP Server for IoT Device Management — Register, monitor, and control IoT devices via AI agents.
A generic, open-source alternative to platform-specific IoT management tools. No cloud API key required — all data stored locally.
Features
- Device Registry — Register and manage IoT devices (sensors, actuators, gateways, cameras)
- Real-time Status — Monitor device health, telemetry, and connectivity
- Remote Commands — Send commands (reboot, enable, disable, calibrate) to devices
- Firmware Updates — Track and simulate firmware update workflows
- Alert Management — Create, filter, and resolve device alerts
- Fleet Analytics — Health scores, status summaries, and recommendations
- Fleet Dashboard — Single-view overview of your entire device fleet
Tools
| Tool | Description |
|---|---|
register_device |
Register a new IoT device with type, location, and firmware version |
list_devices |
List all devices with optional filters (type, location, status, tag) |
get_device_status |
Get real-time status and simulated telemetry for a device |
update_firmware |
Simulate firmware update with version history |
send_command |
Send remote commands (reboot, enable, disable, calibrate, etc.) |
get_alerts |
Retrieve device alerts filtered by severity or device |
resolve_alert |
Mark an alert as resolved with optional notes |
device_analytics |
Fleet health score, statistics, and recommendations |
get_fleet_dashboard |
Complete fleet overview with recent activity |
Installation
pip install iot-device-mcp-server
Usage with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"iot-device": {
"command": "iot-device-mcp-server"
}
}
}
Example Workflow
Agent: "Register a temperature sensor in the server room"
→ register_device(name="Temp Sensor 01", device_type="sensor", location="Server Room")
Agent: "What's the current status?"
→ get_device_status(device_id="dev_abc123")
Agent: "Reboot the sensor"
→ send_command(device_id="dev_abc123", command="reboot")
Agent: "Are there any critical alerts?"
→ get_alerts(severity="critical")
Agent: "Show me the fleet health"
→ device_analytics()
Supported Device Types
sensor— Temperature, humidity, pressure sensorsactuator— Relays, motors, valvesgateway— IoT edge gateways and routerscamera— IP cameras and video devices- Custom types also supported
Supported Protocols
- MQTT (default)
- HTTP/HTTPS
- CoAP
- LoRa/LoRaWAN
Data Storage
All data is stored locally in ~/.iot_device_store.json. No cloud services required.
Why This Server?
- Platform-agnostic — Works with any IoT setup, no vendor lock-in
- No API keys — Fully local, no cloud dependency
- AI-ready — Natural language device management via Claude or any MCP-compatible AI
- Open source — MIT license, fork and extend freely
Comparison
| Feature | Digi Remote Manager | ThingsPanel | This Server |
|---|---|---|---|
| Platform-specific | ✅ (Digi only) | ✅ (proprietary) | ❌ (generic) |
| Open Source | ❌ | ❌ | ✅ |
| MCP Native | ❌ | ❌ | ✅ |
| No API Key | ❌ | ❌ | ✅ |
| PyPI Package | ❌ | ❌ | ✅ |
License
MIT License — see LICENSE for details.
Author
Built by AiAgentKarl — Generalist AI Agent Infrastructure
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iot_device_mcp_server-0.1.0.tar.gz.
File metadata
- Download URL: iot_device_mcp_server-0.1.0.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee79320eae7e93ec2b973fdd4bcc9dc998086d0fc6302e7a9dc08438125c1a35
|
|
| MD5 |
4cb96419c24a680651791c0d74cdeb3a
|
|
| BLAKE2b-256 |
134936523bb51759476afe15687ab474ca6891d5fde315707c831ac0e437e737
|
File details
Details for the file iot_device_mcp_server-0.1.0-py3-none-any.whl.
File metadata
- Download URL: iot_device_mcp_server-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9974334a9d65424b5635a20da91a98caae8dccb58993b09f024efed7b40b09e
|
|
| MD5 |
f3a974a47d4edcea1977fb069c1bd159
|
|
| BLAKE2b-256 |
ad8eb43d0d66d07a82a12bee9b02b55330f804e812a87e3a188b6c4fadf7b52a
|