Skip to main content

A Python API for Xiaomi Mijia

Project description

mijiaAPI

米家 API,可以使用代码、CLI、MCP 直接控制米家设备。

🎉 v4.0.0 版本已支持 MCP,详见 MCP 使用文档 🎉 v4.1.0 版本已支持 Agent Skill,详见 Agent Skill 使用文档

GitHub PyPI License: GPL-3.0

📖 完整文档请见 mijia-api.do1e.com

常见问题 | 更新日志

安装

要求 Python >= 3.10

pip install mijiaAPI
# Or `uv add mijiaAPI` for uv users

其他安装方式(源码安装、AUR)请参考文档

快速开始

from mijiaAPI import mijiaAPI, mijiaDevice

# 初始化并扫码登录(认证文件默认保存在 ~/.config/mijia-api/auth.json)
api = mijiaAPI()
api.login()

# 通过设备名称控制设备(推荐)
device = mijiaDevice(api, dev_name="我的台灯")
device.on = True              # 打开设备
device.brightness = 60        # 设置亮度为 60%

# 查看设备支持的所有属性和动作
print(device)

CLI 用法:

mijiaAPI login                          # 扫码登录
mijiaAPI -l                             # 列出所有设备
mijiaAPI set --dev_name "台灯" --prop_name "brightness" --value 60

MCP 用法:

执行 uvx mijiaAPI login -p /path/to/auth.json 登录后,在 MCP 客户端配置中添加以下内容即可接入米家:

{
  "mcpServers": {
    "mijia-api": {
      "command": "uvx",
      "args": ["mijiaAPI", "mcp", "-p", "/path/to/auth.json"]
    }
  }
}

更多用法(API 基础调用、MCP Server、CLI 完整参数、最佳实践等)请查阅完整文档

致谢

开源许可

本项目采用 GPL-3.0 开源许可证。

请注意:GPL-3.0 是具有“强传染性”的开源许可证。
如果您在您的项目中使用、修改或分发本项目的代码(包括作为库依赖),您的整个项目也必须以 GPL-3.0 或兼容许可证开源发布。

免责声明

  • 本项目仅供学习交流使用,不得用于商业用途,如有侵权请联系删除
  • 用户使用本项目所产生的任何后果,需自行承担风险
  • 开发者不对使用本项目产生的任何直接或间接损失负责

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mijiaapi-4.1.2.tar.gz (143.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mijiaapi-4.1.2-py3-none-any.whl (40.0 kB view details)

Uploaded Python 3

File details

Details for the file mijiaapi-4.1.2.tar.gz.

File metadata

  • Download URL: mijiaapi-4.1.2.tar.gz
  • Upload date:
  • Size: 143.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mijiaapi-4.1.2.tar.gz
Algorithm Hash digest
SHA256 b84de2431840ba88d7173d9aaec935779dc5d81abd10de4b1228f5c198df198a
MD5 4ed684f0c3f1a634e4cb4d41c54184a6
BLAKE2b-256 2be542f2d52c708d752855d5daab7128c57f2bc5f7cd200f0636727176be7e01

See more details on using hashes here.

File details

Details for the file mijiaapi-4.1.2-py3-none-any.whl.

File metadata

  • Download URL: mijiaapi-4.1.2-py3-none-any.whl
  • Upload date:
  • Size: 40.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mijiaapi-4.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ac8ffcee5962ebd540c5b46bd46bd09aed3a34a4c593eb19b7ddb3d3a5decf4f
MD5 0ae1921d2487fb3ac8cf205a39469b0a
BLAKE2b-256 3736a7d5ec6bc35fc665e4c4d3daed89665ab797d5478c667993657e78f4919e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page