mcpField
M
MCP for IOT

MCP for IOT

本地服务
github.com/sukeesh其他878 周前更新

关于 MCP for IOT

MCP for IOT 是一个 Go 语言 MCP 服务,可连接 Claude 或其他兼容客户端与 Arduino 硬件。它支持访问串口数据,并控制数字引脚和蜂鸣器。

主要功能

  1. 01列出可用串口
  2. 02读取 Arduino 串口数据
  3. 03设置数字引脚值
  4. 04按时长控制蜂鸣器

适用场景

  1. 01检查可用串口
  2. 02读取 Arduino 的一行数据
  3. 03切换 LED 或继电器引脚
  4. 04启动已连接的蜂鸣器

MCP 相关

该服务向 MCP 客户端提供列出串口、读取串口行、写入数字输出和控制蜂鸣器的工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

面向 IoT 的 MCP

面向 IoT 设备(Arduino)的 Model Context Protocol (MCP) 服务

IoT MCP 徽标

Go

概述

面向 IoT 的 MCP 是 Model Context Protocol (MCP) 服务的 Go 实现,可让 Claude 等 AI 模型直接与 IoT 设备交互,尤其是 Arduino 开发板。此服务充当 Claude 与 Arduino 硬件之间的桥梁,实现由 AI 控制的硬件自动化。

功能

  • 🔌 列出可用的串行端口
  • 📡 读取 Arduino 串行端口的数据
  • 🚦 控制数字引脚(LED、继电器等)
  • 🔊 控制蜂鸣器的开关和持续时间
  • 🤖 与 Claude AI 无缝集成

用法

https://github.com/user-attachments/assets/46d7d731-f5d0-4acd-b53e-c00be8b83215

前提条件

  • Go(版本 1.24 或更高)
  • 带 USB 连接的 Arduino 硬件
  • Claude 桌面应用或兼容的 MCP 客户端

安装

从源代码构建
git clone https://github.com/sukeesh/mcp-iot-go.git
cd mcp-iot-go
go install

二进制文件将安装到 GOBIN 目录,该目录应位于 PATH 中。

Arduino 设置

  1. 将 Arduino 连接到计算机
  2. 上传提供的 Arduino 固件:
    arduino/firmware.ino
    

此固件通过串行通信接收命令:

  • M,pin,mode - 设置引脚模式(例如,M,6,OUTPUT)
  • D,pin,value - 控制数字引脚(例如,D,6,HIGH 或 D,6,LOW)
  • BZ,pin,state - 控制蜂鸣器(例如,BZ,8,ON 或 BZ,8,OFF)

配置 MCP 客户端

配置 Claude Desktop:

  1. 打开 Claude Desktop → Settings → Developer → Edit Config
  2. 将以下内容添加到 claude_desktop_config.json:
{
  "mcpServers": {
    "iot": {
      "command": "<path-to-mcp-iot-go-binary>",
      "env": {}
    }
  }
}
  1. 重启 Claude Desktop

可用工具

工具描述
port_list列出所有可用的串行端口
read_serial_line从指定的串行端口读取一行数据
write_digital向指定端口上的引脚写入数字值(HIGH/LOW)
buzzer_control控制连接到 Arduino 引脚的蜂鸣器,可选设置持续时间

使用示例

设置完成后,你可以通过 Claude 直接与 Arduino 硬件交互:

  • “列出所有可用的串行端口”
  • “读取端口 /dev/cu.usbmodem12401 上 Arduino 的数据”
  • “打开引脚 6 上的红色 LED”
  • “让引脚 8 上的蜂鸣器响 2 秒”

开发

项目结构
  • main.go - MCP 服务设置和工具定义
  • internal/tools.go - Arduino 通信工具的实现
  • arduino/firmware.ino - 用于处理命令的 Arduino 固件
依赖项

贡献

欢迎贡献!请随时提交 Pull Request。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。