用于通过Smart Home API控制Google Home智能插头的MCP服务器实现。
创建Smart Home Action:
设置OAuth 2.0:
安装依赖项:
pnpm install
配置服务器:
config.json.example复制为config.json构建服务器:
pnpm build
pnpm start
{
name: "list_smart_plugs",
description: "列出所有可用的智能插头及其当前状态",
response: Array<{
id: string;
name: string;
state: {
on: boolean;
online: boolean;
}
}>
}
{
name: "control_smart_plug",
description: "打开或关闭智能插头",
parameters: {
deviceId: string; // 来自list_smart_plugs的设备ID
state: boolean; // true表示开,false表示关
},
response: {
success: boolean;
device: {
id: string;
name: string;
state: {
on: boolean;
online: boolean;
}
}
}
}
{
name: "get_smart_plug_state",
description: "获取特定智能插头的当前状态",
parameters: {
deviceId: string; // 来自list_smart_plugs的设备ID
},
response: {
id: string;
name: string;
state: {
on: boolean;
online: boolean;
}
}
}
服务器实现了Smart Home API意图:
SYNC意图
QUERY意图
EXECUTE意图
服务器实现了全面的错误处理,带有特定的错误代码:
CONFIG_ERROR:配置加载或验证错误API_ERROR:来自Smart Home API的错误DEVICE_NOT_FOUND:在可用设备中未找到设备IDCOMMAND_ERROR:执行设备命令时出现错误每个错误包括:
pnpm dev
pnpm test
MIT