About Iot Go
Iot Go is an MCP server published by sukeesh in the Developer Tools category: mCP Server for Sensors. It has been installed 0 times through Conduid.
The repository has 8 stars and 2 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues (0) before depending on it in production.
Install
npx mcp-iot-goThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Iot Go
Powered by Claude · Grounded in docs
Security checks
- ·README presentNot checked yet.
- ·License declaredNot checked yet.
- ·Tests presentNot checked yet.
- ·Dependencies pinnedNot checked yet.
- ·No dynamic code executionNot checked yet.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
Releases
README
MCP for IOT
Overview
MCP for IOT is a Go implementation of the Model Context Protocol (MCP) server that allows AI models like Claude to directly interact with IoT devices, specifically Arduino boards. This server acts as a bridge between Claude and your Arduino hardware, enabling AI-controlled hardware automation.
Features
- 🔌 List available serial ports
- 📡 Read data from Arduino's serial port
- 🚦 Control digital pins (LEDs, relays, etc.)
- 🔊 Control buzzers with on/off and duration settings
- 🤖 Seamless integration with Claude AI
Usage
https://github.com/user-attachments/assets/46d7d731-f5d0-4acd-b53e-c00be8b83215
Prerequisites
- Go (version 1.24 or later)
- Arduino hardware with USB connection
- Claude Desktop App or compatible MCP client
Installation
Build from Source
git clone https://github.com/sukeesh/mcp-iot-go.git
cd mcp-iot-go
go install
The binary will be installed to your GOBIN directory, which should be in your PATH.
Arduino Setup
- Connect your Arduino to your computer
- Upload the provided Arduino firmware:
arduino/firmware.ino
This firmware accepts commands via serial communication:
M,pin,mode- Sets pin mode (e.g.,M,6,OUTPUT)D,pin,value- Controls digital pins (e.g.,D,6,HIGHorD,6,LOW)BZ,pin,state- Controls buzzers (e.g.,BZ,8,ONorBZ,8,OFF)
Configuration with MCP Client
Configure Claude Desktop:
- Open Claude Desktop → Settings → Developer → Edit Config
- Add the following to your
claude_desktop_config.json:
{
"mcpServers": {
"iot": {
"command": "<path-to-mcp-iot-go-binary>",
"env": {}
}
}
}
- Restart Claude Desktop
Available Tools
| Tool | Description |
|---|---|
port_list |
Lists all available serial ports |
read_serial_line |
Reads a single line of data from a specified serial port |
write_digital |
Writes a digital value (HIGH/LOW) to a pin on a specified port |
buzzer_control |
Controls a buzzer connected to an Arduino pin with optional duration |
Usage Examples
After setup, you can interact with your Arduino hardware directly through Claude:
- "List all available serial ports"
- "Read data from the Arduino on port /dev/cu.usbmodem12401"
- "Turn on the red LED on pin 6"
- "Activate the buzzer on pin 8 for 2 seconds"
Development
Project Structure
main.go- MCP server setup and tool definitionsinternal/tools.go- Tool implementation for Arduino communicationarduino/firmware.ino- Arduino firmware for processing commands
Dependencies
- mcp-go - Go library for MCP implementation
- go.bug.st/serial - Serial port communication library
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
README mirrored from the source repository 3 days ago. The original is authoritative.