iot-dc3
pnoker · pnoker/iot-dc3
Connects AI agents to industrial IoT devices via an MCP gateway, enabling agents to act on physical devices, collect data, and manage them safely.
IoT DC3 — Connect the Physical World to AI. An open-source Industrial IoT Runtime for Physical AI: 36 protocol drivers, edge-to-cloud data delivery, and an MCP tool gateway so AI agents act on devices in a safe, controllable, traceable loop.
Preview
What you can do with it
- Allow an AI agent to query and control industrial sensors and machinery in a factory.
- Monitor real-time data from IoT devices and have an agent respond to anomalies.
- Enable AI-driven automation for physical processes through controlled device interactions.
Safety check
Usable, but read the notes first.
- ●No clear license: check with the author before using it in a commercial product.
Automated scan of the repo files. Always review code you run.
From the README
English | 中文 | 日本語 | Tiếng Việt | 한국어 | Español | Русский
AI assistants: Read README.ai.md first for a concise, AI-friendly overview of IoT DC3.
🔌 Multi-protocol connectivity · 🤖 MCP tool gateway · ☁️ Cloud-native microservices
📸 Product Preview
📸 Platform Overview
📸 Device Management
📸 AI Agent
<strong>Home / Dashboard</strong>
<em>System overview · Online device metrics · Data trend charts</em>
<strong>Device Management</strong>
<em>Device list · Online status · Search and filtering</em>
<strong>AI Agent Assistant</strong>
<em>Natural-language device queries · Data insights · Governed execution</em>
🏗️ Architecture Overview
Architecture at a Glance
Six-layer microservice architecture at a glance: clients → gateway → four center services → message bus → 36 protocol drivers → field devices. PostgreSQL (TimescaleDB + pgvector + AGE) persistence and optional observability stack (ELK + Prometheus + Grafana) laid out in one view.
🧱 Design principles — cross-service calls always go through Facade interfaces; the DO/BO/VO three-tier model keeps persistence, business, and API shapes strictly separated; and tenant isolation runs end to end across database, cache, and API paths. Clear boundaries that scale across services and teams.
📖 For the full architecture documentation, see System Architecture Overview.
✨ Core Features
🔌 Multi-Protocol Device Connectivity
IoT DC3 includes 36 access driver modules for industrial automation, IoT communication, data bridging, basic communication, and simulation/debugging scenarios, reducing the cost of connecting common devices and data sources:
| Category | Driver Modules |
|---|---|
| 🏭 Industrial protocols | Modbus TCP · Modbus RTU · OPC UA · OPC DA · Siemens S7 · BACnet/IP · EtherNet/IP · Omron FINS · Mitsubishi MELSEC · IEC 60870-5-104 · IEC 61850 · DNP3 · DLMS · DLT645 · KNX · M-Bus · SL651 |
| 📡 IoT protocols | MQTT · CoAP · LwM2M · HTTP · BLE · Zigbee · LoRaWAN |
| 🗄️ Data bridging | MySQL · PostgreSQL · Oracle · SQL Server · Redis |
| 🔧 Basic communication, messaging and NMS | TCP/UDP · Serial · SNMP · CAN · Kafka |
| 🧪 Simulation and debugging | Virtual · Listening Virtual |
The Driver SDK supports fast development of custom protocol drivers and registration into the runtime platform.
🤖 From Device Data to Physical AI
The Agentic Center is built on Spring AI, and the platform exposes an MCP tool gateway so AI agents can act on the physical world in one safe, controllable, traceable loop:
- MCP tool gateway — external AI agents connect through the Model Context Protocol: OAuth client registration, per-tool authorization, and a full audit trail for every tool call
- Natural-language assisted operations - through Tool Calling and under access control, LLMs can query devices, read/write points, and assist with command execution
- Intelligent alarm analysis - AI assists with root-cause analysis and response suggestions
- Data insights - Query device data in natural language and generate visual charts
- Multi-model support - Compatible with OpenAI API-style providers and mainstream models such as GPT, Claude, DeepSeek, and Qwen
- Conversation memory - Multi-turn conversations and context memory persisted to the database
🏗️ Cloud-Native Microservices
Distributed microservice architecture based on Spring Boot 4 + Spring Cloud 2025:
- Service governance - Spring Cloud Gateway as the unified entrypoint, with static routes and flexible environment variables
- Efficient communication - gRPC service calls with Protobuf serialization
- Horizontal scaling - Stateless design for scaling individual services by workload
- Resilience - Replaceable service nodes and fault isolation
📊 Real-Time Data Engine
- Data collection - Drivers collect device telemetry and send it asynchronously through the internal message broker — pluggable per deployment: RabbitMQ (default), Kafka, Pulsar or any MQTT 5 broker
- **Time-serie