
xiaozhi-esp32-server
by xinnan-tech·★ 9,554·Score 58
MCP server for ESP32 device management with voice recognition, MQTT, and multi-language support.
Overview
xiaozhi-esp32-server is a comprehensive backend service designed for ESP32 device management and control. It implements the Model Context Protocol (MCP) as one of its communication methods, allowing seamless integration with MCP clients. The server supports multiple protocols including MQTT+UDP, Websocket, and MCP endpoints, enabling real-time device communication and control. It features voice recognition capabilities, voiceprint identification, and a knowledge base system, making it suitable for building intelligent IoT ecosystems. The project is actively maintained with regular updates and comprehensive documentation.
Try asking AI
After installing, here are 5 things you can ask your AI assistant:
When to choose this
Choose this MCP server when building voice-controlled IoT systems with ESP32 devices and need integrated AI capabilities like speech recognition and multi-modal interactions.
When NOT to choose this
Don't choose this if you're not using ESP32 hardware, as it's tightly coupled to this platform. Also consider alternatives if you need a more generalized MCP implementation without extensive voice/IoT features.
Tools this server exposes
12 tools extracted from the READMEmqtt_controlSend control commands to ESP32 devices via MQTT protocol
voice_commandProcess voice commands from users and convert to actionable tasks
device_statusQuery the current status of connected ESP32 devices
voiceprint_identifyIdentify users based on their voice patterns for personalized interaction
knowledge_queryRetrieve information from the integrated knowledge base
mcp_commandExecute MCP protocol commands for device communication
multimodal_analysisProcess visual information from camera-equipped devices
memory_recallRetrieve past conversation history and context for personalized responses
intent_recognitionIdentify user intent behind their requests for appropriate action
text_to_speechConvert text to speech for audio responses to users
schedule_taskSchedule automated tasks or reminders for future execution
websocket_communicateCommunicate with devices via WebSocket protocol for real-time interaction
Note: Tools were inferred from feature descriptions and video demonstrations mentioned in the README. While the README mentions MCP protocol support and various capabilities, it doesn't provide explicit tool names or signatures. The tool names ar
Comparable tools
Installation
Installation Options
Docker Deployment (Recommended)
- Clone the repository:
git clone https://github.com/xinnan-tech/xiaozhi-esp32-server.git - Navigate to the project directory:
cd xiaozhi-esp32-server - Start with Docker:
docker-compose up -d
Source Code Deployment
- Clone the repository:
git clone https://github.com/xinnan-tech/xiaozhi-esp32-server.git - Install dependencies:
npm install - Configure your environment variables in
.envfile - Start the server:
npm start
Claude Desktop Configuration
Add the following to your Claude Desktop claude_desktop_config.json:
{
"mcpServers": {
"xiaozhi-esp32": {
"command": "node",
"args": ["/path/to/xiaozhi-esp32-server/server.js"]
}
}
}FAQ
- What MCP protocols does this server support?
- The server supports client MCP protocol, server MCP protocol, MCP access point protocol, and custom tool functions.
- What hardware requirements are needed?
- For minimal setup with FunASR: 2 cores, 4GB RAM. For full API usage: 2 cores, 2GB RAM. For full module installation: 4 cores, 8GB with FunASR or 2 cores, 4GB with all APIs.
Compare xiaozhi-esp32-server with
Last updated · Auto-generated from public README + GitHub signals.