drio
Open app

ESP32 MCP Server

Source

Allow AI models connect to ESP32 exposed interfaces. AI generated MCP server for ESP32.

Catalog onlyCatalog onlySTDIO

Overview

ESP32 MCP Server is a Model Context Protocol (MCP) implementation for ESP32 microcontrollers, allowing AI models to connect to ESP32 exposed interfaces through a WebSocket-based interface for resource discovery and monitoring.

To use the ESP32 MCP Server, power on the ESP32, connect to its access point, configure your WiFi credentials via a web interface, and then connect to the MCP server using WebSocket on port 9000.

  • MCP protocol implementation (v0.1.0) - WebSocket server for real-time updates - Resource discovery and monitoring - WiFi configuration via web interface - Thread-safe request handling - Comprehensive test suite - AsyncWebServer integration - LittleFS support for configuration storage
  1. Connecting AI models to IoT devices for real-time data processing.
  2. Monitoring and managing ESP32 resources remotely.
  3. Developing applications that require real-time communication with ESP32 microcontrollers.

Add to your AI client

Use these steps to connect ESP32 MCP Server in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.

Cursor

Add this to your .cursor/mcp.json file in your project root, then restart Cursor.

.cursor/mcp.json

{
  "mcpServers": {
    "esp32mcpserver-navado": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-esp32mcpserver-navado"
      ]
    }
  }
}

Claude Desktop

Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "esp32mcpserver-navado": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-esp32mcpserver-navado"
      ]
    }
  }
}

Claude Code

Add this to your project's .mcp.json file. Claude Code will detect it automatically.

.mcp.json (project root)

{
  "mcpServers": {
    "esp32mcpserver-navado": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-esp32mcpserver-navado"
      ]
    }
  }
}

VS Code (Copilot)

Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.

.vscode/mcp.json

{
  "servers": {
    "esp32mcpserver-navado": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-esp32mcpserver-navado"
      ]
    }
  }
}

Windsurf

Add this to your Windsurf MCP config file, then restart Windsurf.

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "esp32mcpserver-navado": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-esp32mcpserver-navado"
      ]
    }
  }
}

Cline

Open Cline settings, navigate to MCP Servers, and add this server configuration.

Cline MCP Settings (via UI)

{
  "mcpServers": {
    "esp32mcpserver-navado": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-esp32mcpserver-navado"
      ]
    }
  }
}

FAQ

What hardware is required to run the ESP32 MCP Server?

You need an ESP32 S3 DevKitC-1 board and a USB cable for programming.

Is there a web interface for configuration?

Yes! The ESP32 MCP Server provides a web interface for WiFi configuration.

How can I test the server?

You can run the test suite using PlatformIO commands.7:["$","div",null,{"className":"container mx-auto flex flex-col gap-4","children":["$L26","$L27",["$","$L28",null,{"currentProject":{"id":977,"uuid":"f5f608c2-0058-475a-844f-336e60506063","name":"ESP32MCPServer","title":"ESP32 MCP Server","description":"Allow AI models connect to ESP32 exposed interfaces. AI generated MCP server for ESP32.","avatar_url":"https://avatars.githubusercontent.com/u/837482?v=4","created_at":"2025-01-28T02:21:33.551Z","updated_at":"2025-02-23T07:18:50.431Z","status":"created","author_name":"navado","author_avatar_url":"https://avatars.githubusercontent.com/u/837482?v=4","tags":"esp32,mcp,websocket,ai-integration","category":"developer-tools","is_featured":false,"sort":1,"url":"https://github.com/navado/ESP32MCPServer","target":"_self","content":"$29","summary":"$2a","img_url":"https://github.com/navado/ESP32MCPServer/raw/main/docs/img/ESP32MCPServer.png","type":null,"metadata":null,"user_uuid":null,"tools":null,"sse_url":null,"sse_provider":null,"sse_params":null,"is_official":false,"server_command":null,"server_params":null,"server_config":null,"allow_call":false,"is_innovation":false,"is_dxt":false,"dxt_manifest":null,"dxt_file_url":null,"is_audit":false},"randomProjects":[],"currentServerKey":"$undefined"}]]}]