Tapo MCP

by mihai-dinculescu

Not rated
GitHub

About

MCP server for discovering and controlling TP-Link Tapo smart home devices via AI Agents

Details

Author
mihai-dinculescu
Categories
Other

Setup

Install Tapo MCP in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/mihai-dinculescu/tapo

Follow the installation instructions in the repository README, then restart your MCP client.

[](https://github.com/mihai-dinculescu/tapo/blob/main/LICENSE)<<<[](https://crates.io/crates/tapo)<<<[](https://docs.rs/tapo)<<<[](https://crates.io/crates/tapo)<<<[](https://pypi.org/project/tapo)<<<[](https://pypi.org/project/tapo)<<<
Unofficial Tapo API Client. Works with TP-Link Tapo smart devices. Tested with light bulbs (L510, L520, L530, L535, L610, L630), light strips (L900, L920, L930), plugs (P100, P105, P110, P110M, P115), power strips (P300, P304M, P306, P316M), hubs (H100), switches (S200B, S200D, S210), sensors (KE100, T100, T110, T300, T310, T315) and cameras (C210, C220, C225, C325WB, C520WS, TC40, TC70).

See/SUPPORTED_DEVICES.mdfor the supported devices and feature matrix.

let device = ApiClient::new("<tapo-username>", "tapo-password") .p110("<device ip address>") .await?; device.on().await?;
export TAPO_USERNAME= export TAPO_PASSWORD= export IP_ADDRESS= cargo run --example tapo_l530
client = ApiClient("<tapo-username>", "tapo-password") device = await client.p110("<device ip address>") await device.on()
cd tapo-py uv venv # On the initial run only uv sync --group dev --locked uv run maturin develop # On the initial run and whenever the Rust code is modified export TAPO_USERNAME= export TAPO_PASSWORD= export IP_ADDRESS=

An MCP server that exposes Tapo devices as AI-callable tools and resources via theModel Context Protocol. See/tapo-mcp/README.mdfor setup and usage.

- tapo-rest— a REST wrapper of this library that can be deployed as a service or serve as an advanced example.

See/TROUBLESHOOTING.mdfor solutions to common issues.

Contributions are welcome and encouraged! See/CONTRIBUTING.md.

A big thank you to the sponsors of this project!

A free, private, and secure remote MCP server for Home Assistant.

MCP server for Google Cast — discover devices, play media, control volume, launch apps, and manage queues over stdio

A safe-by-default MCP server that exposes your Control4 home automation (lights, scenes, locks, thermostats, and media) as structured tools over HTTP and Claude Desktop STDIO for reliable AI-powered control on your local network.

Control and query the status of Ecovacs cleaning robots using the MCP protocol.

Control AVM FRITZ!Box routers - manage devices, WiFi, network settings, parental controls, and schedule time-delayed actions

Allows an LLM agent to control your Gaggimate espresso machine

An MCP server for the Gaggiuino open-source espresso machine, providing real-time local network access to machine status and shot data.

A Model Context Protocol (MCP) server that provides AI assistants with access to Home Assistant, enabling smart home control and automation management.

Read-only MCP (Model Context Protocol) server for Home Assistant. Gives AI assistants (Claude Desktop, LibreChat, Cline) full observability into your smart home — entity states, automations, scripts, devices, logs, diagnostics — without any write access. Also generates static AI context snapshots for RAG systems, ChatGPT Projects, Qwen, and other tools that accept custom knowledge files. Built in Python, runs anywhere — locally, in Docker, or as an MCP integration.

Native macOS HomeKit integration for AI assistants via Model Context Protocol

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.