The UART-MCP protocol is a protocol developed by Ai-Thinker for interaction between Ai-Thinker AI modules and an external MCU. It lets an MCU be controlled by an AI large model, lowering the difficulty of making a product AI-enabled.
This document is a "communication guide" for exchanging data over the serial port between an AI device (such as a module or development board with AI capabilities) and an MCU (microcontroller unit — think of it as the "AI control brain" of a hardware device, commonly used to drive appliances, sensors, and so on).
Its core goal is to unify the interaction rules for both sides, ensuring the AI device can accurately deliver commands and status to the MCU, and the MCU can respond and report back in time — ultimately achieving coordinated operation between the two and supporting the normal running of smart hardware (smart appliance control, sensor data collection, and similar scenarios).
The core value of this protocol comes down to just two things:
- It builds a solid
"communication channel"between the MCU and the AI module, so the MCU can reliably call the AI's control features; - It does not lock down the definition of
"MCP tools"— whatever we want the MCU to control and however we want to control it, we can design flexibly. These two points really hit the pain points of development.
The essence of this protocol is "building a stable bridge for communication without tearing down the road to flexible expansion" — the MCU can reliably receive the AI's control commands, and whatever we want the MCU to control and however we want to control it, we can define tools to fit the need, without being boxed in by fixed functions. For smart hardware development, that really saves a lot of detours.

