Token导航 LogoToken导航TokenDH.com
Hubitat Go MCP logo
AI代理未说明官方级别未说明来源级核验

Hubitat Go MCP

MCP Server

一个用于Hubitat家庭自动化系统的原生Go实现的MCP服务器,支持通过MCP协议控制和查询Hubitat设备。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
设备控制GoClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

alexj212

提供方

alexj212

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Hubitat Go MCP服务器

Hubitat家庭自动化系统的模型上下文协议(MCP)服务器的原生Go实现。该服务器使Claude Desktop等AI助手能够通过MCP协议控制和查询Hubitat设备。

Go License ![MCP](https://modelcontextprotocol.io)

特性

  • 本地MCP实现 -内置于 mcp走
  • 全设备控制 -打开/关闭设备、设置级别、发送自定义命令
  • 设备发现 -列出所有具有功能的设备
  • 多种模式 -stdio(克劳德桌面)或SSE(HTTP服务器)
  • 交叉平台的 -Linux、macOS和Windows支持
  • 系统集成 -在Linux上作为系统服务运行
  • 环境配置 -使用.env文件轻松设置
  • 生产就绪 -包括Makefile和systemd服务

先决条件

  1. Hubitat 中心 随着 制造商API 启用
  2. 创客API应用程序ID访问令牌 从您的Hubitat中心
  3. 转到1.21+ 安装
  4. 克劳德桌面 或另一个MCP兼容客户端

安装

视窗

WINDOWS.md 获取完整的Windows安装指南。

快速入门(Windows):

git clone https://github.com/alexj212/hubitat-go-mcp.git
cd hubitat-go-mcp
.\install-windows.ps1

Linux/macOS

快速启动(自动)

# Clone the repository
git clone https://github.com/alexj212/hubitat-go-mcp.git
cd hubitat-go-mcp

# Run installation script
./install-claude-desktop.sh

手动安装

# Clone the repository
git clone https://github.com/alexj212/hubitat-go-mcp.git
cd hubitat-go-mcp

# Copy environment template
cp .env.example .env

# Edit .env with your Hubitat configuration
nano .env

# Build and install
make install

# Optional: Install as systemd service (Linux only)
make install-service
sudo systemctl start hubitat-go-mcp

手动构建

# Download dependencies
make deps

# Build binary
make build

# Run directly
./hubitat-go-mcp

配置

创建一个 .env 项目目录中的文件:

# Hubitat Configuration
HUBITAT_BASE_URL=http://192.168.1.253/apps/api/131/devices
HUBITAT_TOKEN=your-access-token-here

# Server Configuration (optional)
PORT=5006

获取Hubitat证书

  1. 登录您的Hubitat中心(例如。, http://192.168.1.253)
  2. 首选 应用Hubitat 制造 API
  3. 注意 应用程序ID (在URL中: /apps/api/[APP_ID]/)
  4. 复制 访问令牌
  5. 构建您的基本URL: http:///apps/api//devices

Claude桌面集成

自动设置

Linux/macOS:

./install-claude-desktop.sh

视窗:

.\install-windows.ps1

手动设置

将此添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "hubitat": {
      "command": "/usr/local/bin/hubitat-go-mcp"
    }
  }
}

视窗: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "hubitat": {
      "command": "C:\\path\\to\\hubitat-go-mcp\\hubitat-go-mcp.exe"
    }
  }
}

Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "hubitat": {
      "command": "/usr/local/bin/hubitat-go-mcp"
    }
  }
}

然后重新启动Claude Desktop。

运行模式

服务器支持两种操作模式:

模式1:stdio(默认值-适用于Claude Desktop)

这是Claude Desktop用于本地MCP服务器集成的默认模式:

./hubitat-go-mcp
# or
./hubitat-go-mcp -mode=stdio

Claude Desktop将通过配置文件自动启动此程序。

模式2:SSE服务器(用于远程访问)

作为HTTP服务器运行,并使用服务器发送的事件进行远程访问:

./hubitat-go-mcp -mode=sse
# or specify a custom port
./hubitat-go-mcp -mode=sse -port=8080

这将在以下位置创建一个HTTP服务器:

  • SSE端点: http://localhost:5006/sse
  • 状态端点: http://localhost:5006/status

然后,您可以使用以下工具 mcp-proxy 或其他MCP客户端远程连接。

命令行选项

./hubitat-go-mcp -help

可用选项:

  • -mode=stdio|sse -服务器模式(默认:stdio)
  • -port=PORT -SSE模式端口(覆盖.env)
  • -version -打印版本并退出
  • -help -显示帮助消息

可用工具

MCP服务器向Claude公开了以下工具:

1. list_devices

列出所有Hubitat设备及其功能和当前状态。

示例:“列出我的所有Hubitat设备”

2. get_device

获取特定设备的详细信息。

参数:

  • device_id (字符串,必填):设备ID

示例:“获取设备135的详细信息”

3. turn_on

打开设备(开关、灯等)。

参数:

  • device_id (字符串,必填):设备ID

示例:“打开厨房的灯”

4. turn_off

关闭设备。

参数:

  • device_id (字符串,必填):设备ID

示例:“关闭所有卧室灯”

5. set_level

设置可调光设备的亮度级别。

参数:

  • device_id (字符串,必填):设备ID
  • level (数字,必填):亮度级别(0-100)

示例:“将客厅的灯光设置为50%”

6. send_command

向设备发送自定义命令。

参数:

  • device_id (字符串,必填):设备ID
  • command (string,必填):要发送的命令
  • value (string,可选):可选命令参数

示例:“刷新设备85”

使用示例

一旦配置了Claude Desktop,您就可以:

"List all my Hubitat devices"

"Turn on the Office Lamp"

"Set the Master bedroom lights to 30%"

"What is the temperature in the Office?"

"Turn off all lights in the Kitchen"

"Get status of device 135"

系统化服务管理

# Start the service
sudo systemctl start hubitat-go-mcp

# Stop the service
sudo systemctl stop hubitat-go-mcp

# Restart the service
sudo systemctl restart hubitat-go-mcp

# Check status
sudo systemctl status hubitat-go-mcp

# View logs
sudo journalctl -u hubitat-go-mcp -f

# Enable auto-start on boot
sudo systemctl enable hubitat-go-mcp

# Disable auto-start
sudo systemctl disable hubitat-go-mcp

发展

# Run tests
make test

# Run in development mode (requires 'air' for auto-reload)
make dev

# Clean build artifacts
make clean

# Show all make targets
make help

生成文件目标

  • make deps -下载Go依赖项
  • make build -构建二进制文件
  • make install -将二进制文件安装到 /usr/local/bin
  • make install-service -安装systemd服务
  • make uninstall-service -删除systemd服务
  • make clean -清理构建工件
  • make test -运行测试
  • make run -构建并运行
  • make dev -自动重新加载的开发模式
  • make help -显示帮助

建筑

此服务器使用:

  • mcp走 -Go实现模型上下文协议
  • stdio传输 -通过标准输入/输出与Claude Desktop通信
  • Hubitat 制造 API -用于设备控制的REST API
  • godotenv -环境变量管理

故障排除

服务无法启动

# Check service status
sudo systemctl status hubitat-go-mcp

# View logs
sudo journalctl -u hubitat-go-mcp -n 50

配置错误

确保您的 .env 文件具有正确的值:

cat /docker/hubitat-go-mcp/.env

测试Hubitat连接

# Test the Hubitat API directly
curl "http://192.168.1.253/apps/api/131/devices/all?access_token=YOUR_TOKEN"

Claude Desktop未检测到服务器

  1. 验证是否安装了二进制文件: which hubitat-go-mcp
  2. 检查Claude Desktop配置文件语法
  3. 完全重新启动克劳德桌面
  4. 检查Claude Desktop日志是否有错误

与Python版本的比较

功能Go版本Python版本
MCP协议本机(MCP-go)需要MCP代理
性能快速,编译较慢,解释
依赖关系单二进制Python+包
内存低(~10MB)高(~50MB+)
设置直接集成需要代理层

贡献

欢迎投稿!拜托:

  1. 复刻仓库
  2. 创建要素分支
  3. 进行更改
  4. 提交拉取请求

许可证

MIT许可证-有关详细信息,请参阅许可证文件

链接

作者

Alex Jeannopoulos(@alexj212)

致谢

目录标签

目录标签

设备控制GoClaude家庭自动化本地部署MCP协议Hubitat集成Go实现

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP