An open API service indexing awesome lists of open source software.

https://github.com/yasu89/switch-bot-mcp-server

SwitchBot MCP Server
https://github.com/yasu89/switch-bot-mcp-server

go golang mcp mcp-server switchbot

Last synced: about 2 months ago
JSON representation

SwitchBot MCP Server

Awesome Lists containing this project

README

          

# SwitchBot MCP Server

[![Go Report Card](https://goreportcard.com/badge/github.com/yasu89/switch-bot-mcp-server)](https://goreportcard.com/report/github.com/yasu89/switch-bot-mcp-server)
![Coverage](https://raw.githubusercontent.com/yasu89/octocovs/main/badges/yasu89/switch-bot-mcp-server/coverage.svg)
![Code to Test Ratio](https://raw.githubusercontent.com/yasu89/octocovs/main/badges/yasu89/switch-bot-mcp-server/ratio.svg)
![Test Execution Time](https://raw.githubusercontent.com/yasu89/octocovs/main/badges/yasu89/switch-bot-mcp-server/time.svg)

[日本語はこちら](README_ja.md)

The SwitchBot MCP Server is a [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) server that provides a feature to control SwitchBot devices interactively using [SwitchBotAPI](https://github.com/OpenWonderLabs/SwitchBotAPI).

## Use Cases

- Operate SwitchBot devices interactively
- Perform operations on multiple devices at once
- Use data retrieved from a device to operate another device

## Installation

### Prepare secret and token

Follow the [Getting Started guide of SwitchBotAPI](https://github.com/OpenWonderLabs/SwitchBotAPI?tab=readme-ov-file#getting-started) to obtain the token and secret for SwitchBotAPI.

### Setting for Claude Desktop

#### Using Docker (recommended)

```json
{
"mcpServers": {
"switchbot": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--name",
"switch-bot-mcp-server",
"-e",
"SWITCH_BOT_TOKEN",
"-e",
"SWITCH_BOT_SECRET",
"yasu89/switch-bot-mcp-server:latest"
],
"env": {
"SWITCH_BOT_TOKEN": "YOUR_SWITCH_BOT_TOKEN",
"SWITCH_BOT_SECRET": "YOUR_SWITCH_BOT_SECRET"
}
}
}
}
```

#### Using binary

Details

Download binary from [release page](https://github.com/yasu89/switch-bot-mcp-server/releases).

```json
{
"mcpServers": {
"switchbot": {
"command": "~/Downloads/switch-bot-mcp-server",
"env": {
"SWITCH_BOT_TOKEN": "YOUR_SWITCH_BOT_TOKEN",
"SWITCH_BOT_SECRET": "YOUR_SWITCH_BOT_SECRET"
}
}
}
}
```

## Available Tools

Retrieving devices, retrieving statuses, and executing commands on devices are available.

| Tool Name | Description |
|--------------------------------|-------------------------------|
| `get_switch_bot_devices` | Get SwitchBot devices |
| `get_switch_bot_device_status` | Get SwitchBot device status |
| `execute_command` | Execute a command on a device |