# Google Home MCP

> Google Home MCP connects your AI agent directly to all your Nest smart devices, giving you hands-free control over climate, security, and monitoring. Use it to set temperatures, view live camera feeds from doorbells and cameras, or check device status across multiple properties.

## Overview
- **Category:** the-unthinkable
- **Price:** Free
- **Tags:** smart-home, device-control, automation, thermostat-management, camera-monitoring

## Description

This connector turns your smart home into a fully controllable system through natural conversation. Instead of opening separate apps for the thermostat, checking video feeds, and managing room data, your AI agent handles it all. You can ask it to adjust the heat in the living room or check if the front door camera sees movement. Need to know what devices you have? The MCP lists every Nest device, including cameras, thermostats, and doorbells across all structures. If you're building complex home automation routines, connecting through Vinkius gives your agent access to a centralized catalog of capabilities, making it easy for your AI client to manage everything from setting the optimal cooling temperature to streaming live video feeds on demand.

## Tools

### generate_camera_stream
This tool provides a temporary live stream URL so your agent can display video feeds from any Nest camera or doorbell.

### get_device
Fetch detailed status and information for one specific Google Nest device using its ID or name.

### list_devices
Retrieves a complete list of every Nest device, showing their type, room assignment, and current state.

### list_rooms
Shows the physical organization of your home by listing all structured rooms within a location.

### list_structures
Lists every building or structure connected to your Google Nest account.

### set_fan_timer
Sets the fan timer on a thermostat, turning the fan on for a specified period of time.

### set_thermostat_range
Defines both the heating and cooling comfort temperature range for a Nest thermostat in HeatCool mode.

### stop_camera_stream
Properly terminates an active camera stream session using the token provided by generate_camera_stream.

### set_thermostat_cool
Adjusts the cooling temperature setting on a Nest thermostat when it's in Cool or HeatCool mode.

### set_thermostat_eco
Manually forces your Nest thermostat into energy-saving eco mode to reduce consumption.

### set_thermostat_heat
Sets the desired heating temperature on a Nest thermostat when it's in Heat or HeatCool mode.

### set_thermostat_mode
Changes the overall operating mode of the thermostat, setting it to HEAT, COOL, HEATCOOL, or OFF.

## Prompt Examples

**Prompt:** 
```
List all my Nest devices and show me what thermostats I have.
```

**Response:** 
```
I found 4 Nest devices in your home: 1) Nest Thermostat (Living Room) — currently in HEAT mode at 21°C, 2) Nest Camera (Front Door) — streaming ready, 3) Nest Doorbell (Backyard) — battery powered, 4) Nest Hub (Kitchen). Would you like to adjust any thermostat settings?
```

**Prompt:** 
```
Set my living room thermostat to 22°C heating mode.
```

**Response:** 
```
Setting thermostat to HEAT mode at 22°C... Done! Your Living Room Nest Thermostat is now heating to 22°C. Current room temperature is 19.5°C. The HVAC system has activated and is heating. Estimated time to reach target: approximately 15 minutes.
```

**Prompt:** 
```
Show me the live feed from my front door camera.
```

**Response:** 
```
Generating live stream URL for Front Door Nest Camera... Stream URL generated (RTSP). The stream is active for the next 5 minutes. Use any RTSP-compatible player to view the live feed. Remember to stop the stream when done to free up resources. Would you like me to stop the stream?
```

## Capabilities

### Manage device locations
List and view all structures, rooms, and connected Nest devices in your home.

### Adjust climate settings
Change the operating mode (heat/cool/off) or set specific temperatures for any linked thermostat.

### Run live camera streams
Generate temporary streaming URLs so your agent can display real-time feeds from cameras and doorbells.

### Control auxiliary features
Set fan timers or place the thermostat in energy-saving eco mode manually.

## Use Cases

### Checking on a vacant property after hours
A property manager asks their AI client to check if anything is unusual. The agent runs list_devices first, then uses generate_camera_stream for the main entrance feed and set_thermostat_mode to ensure the HVAC system doesn't waste energy by running at full blast.

### Preparing a home before guests arrive
A homeowner asks their agent to get ready. The MCP automatically runs list_rooms, checks the current settings using get_device, and then uses set_thermostat_range to dial in the perfect comfort zone for both heating and cooling.

### Quickly adjusting climate when running late
You walk in the door and ask your agent to make it warmer. The system identifies the local thermostat using list_devices and executes set_thermostat_heat, reporting back on the current temperature status.

### Troubleshooting a camera feed issue
A security expert wants to check multiple feeds quickly. They ask the agent to generate_camera_stream for all available doorbells and then stop_camera_stream once they've finished reviewing the live data.

## Benefits

- Full Security Visibility: Use generate_camera_stream and stop_camera_stream to get live RTSP/WebRTC feeds instantly. You don't have to open a separate app just to check the front door camera feed.
- Precise Climate Control: Need to raise or lower the temperature? The MCP lets you set_thermostat_mode, set_thermostat_heat, and set_thermostat_cool directly through your agent, regardless of which room you're in.
- Energy Management: Don't waste power. You can use set_thermostat_eco to place the system in energy-saving mode, or use set_fan_timer if you just need fresh air for a while.
- System Mapping: Before changing anything, list_devices lets your agent map out every single component—cameras, thermostats, and doorbells—so you know exactly what you're controlling.
- Structured Monitoring: By using list_structures and list_rooms, your agent understands the physical layout of your home, ensuring commands like 'Set the living room thermostat...' hit the right target.

## How It Works

The bottom line is that your AI client treats your entire smart home system like a single, controllable unit.

1. First, subscribe to this MCP and obtain your OAuth 2.0 token and Project ID from the Google Device Access console.
2. Next, point your AI client—like Cursor or Claude—to the Vinkius catalog using these credentials.
3. Your agent then uses the available tools to interact with your home's devices based on natural language commands.

## Frequently Asked Questions

**How do I check what Nest devices are connected using the Google Home MCP?**
You run list_devices. This tool retrieves a full inventory of every piece of hardware, including cameras, thermostats, and doorbells across your entire property.

**Can the Google Home MCP adjust the temperature if I'm away?**
Yes, you can use set_thermostat_mode or set_thermostat_eco. This lets your agent put the system into energy-saving mode when no one is home.

**What do I need to view a live feed with generate_camera_stream?**
The tool generates a temporary stream URL (RTSP). You must use this link immediately, and remember that you'll need to call stop_camera_stream when you are done viewing.

**Does the Google Home MCP understand different rooms in my house?**
Yes. By using list_rooms, your agent understands the physical layout of your home and can target specific devices within a structure.

**What if I want to change both heat and cool settings at once? Do I use set_thermostat_range?**
Yes, set_thermostat_range is the correct tool. It lets your agent define a single comfort envelope that covers both heating and cooling parameters simultaneously.

**What Google Nest devices are supported by this API?**
The SDM API supports: Nest Thermostats (Nest Learning Thermostat, Nest Thermostat E, Nest Thermostat 2020), Nest Cameras (legacy, battery, wired, with spotlight), Nest Doorbells (legacy battery, wired, battery), and Nest Hub displays. Each device exposes specific traits (e.g., ThermostatMode, CameraLiveStream) that can be queried and controlled.

**How do I get OAuth 2.0 credentials for the Google SDM API?**
Visit the [**Google Device Access console**](https://console.nest.google.com/device-access/) and create a project. You'll receive a Project ID. Then, set up OAuth 2.0 credentials in Google Cloud Console, link them to your Device Access project, and complete the OAuth flow to obtain an access token. The token expires after 1 hour and must be refreshed.

**Can I control multiple thermostats in different locations?**
Yes! The API returns all devices across all structures and rooms in your project. Use `list_devices` to see all thermostats with their room assignments, then use each device's unique ID to control them individually. You can set different modes and temperatures for each thermostat.

**How long do camera stream URLs last?**
Camera stream URLs (both RTSP and WebRTC) are temporary and typically expire after 5 minutes. The stream token returned in the response should be used immediately and the stream should be stopped with `stop_camera_stream` when no longer needed to free up device resources.