Skip to main content
Glama
README.md
# Switcher MCP

Model Context Protocol (MCP) server for Switcher KIS device integration.

## Setup

1. Install Poetry (if not already installed):
```bash
curl -sSL https://install.python-poetry.org | python3 -
```

2. Install dependencies:
```bash
poetry install
```

## Usage

Run the MCP server:
```bash
poetry run switcher-mcp
```

Or activate the virtual environment and run directly:
```bash
poetry shell
python -m switcher_mcp.server
```

## Available Tools

- `discover_devices`: Discover Switcher devices on the network
- `get_device_state`: Get the current state of a Switcher device  
- `turn_on`: Turn on a Switcher device (with optional timer)
- `turn_off`: Turn off a Switcher device
- `get_device_info`: Get detailed device information

## Device Discovery

First, run device discovery to find your Switcher devices:
```bash
# This will scan the network for ~5 seconds and return discovered devices
# Note the device_id, ip_address, and device_key for subsequent operations
```

## Device Control

To control devices, you'll need:
- `device_id`: Unique identifier from discovery
- `ip_address`: Device IP address from discovery  
- `device_key`: Authentication key from discovery

## Configuration

The server uses the `aioswitcher` Python library to communicate with Switcher devices locally. No cloud connection required.

## Development

- `poetry run black .`: Format code
- `poetry run ruff check .`: Lint code
- `poetry run mypy .`: Type checking
- `poetry run pytest`: Run tests

## Dependencies

- Python 3.13+
- aioswitcher: Native Switcher device communication
- mcp: Model Context Protocol SDK