太阳能逆变器数据服务

通过Alpha ESS Open API提供太阳能逆变器和电池系统数据的访问服务。

  • by michaelkrasa
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 michaelkrasa/alpha-ess-mcp-server

使用说明

Alpha ESS MCP服务器

模型上下文协议(MCP)服务器,通过官方的Alpha ESS Open API提供对Alpha ESS太阳能逆变器和电池系统数据的访问。

安装

uv sync

配置

创建一个 .env 项目根目录中的文件:

ALPHA_ESS_APP_ID=your_app_id_here
ALPHA_ESS_APP_SECRET=your_app_secret_here

获取您的Alpha ESS API证书:

  1. 访问 https://open.alphaess.com/
  2. 创建开发人员帐户
  3. 使用序列号(SN)和校验码添加逆变器系统
  4. 获取您的AppID和AppSecret

使用Claude Desktop

添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 窗户: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "alpha-ess": {
      "command": "uv",
      "args": [
        "run",
        "python",
        "/path/to/alpha-ess-mcp-server/main.py"
      ],
      "env": {
        "ALPHA_ESS_APP_ID": "your_app_id_here",
        "ALPHA_ESS_APP_SECRET": "your_app_secret_here"
      }
    }
  }
}

可用工具

身份验证和系统管理

  • authenticate_alphaess() -验证API凭据
  • get_ess_list() -列出所有已注册的Alpha ESS系统

数据检索

  • get_alpha_ess_data() -获取所有系统的全面能源统计数据
  • get_last_power_data(serial?) -获取实时电力数据快照
  • get_one_day_power_data(query_date, serial?) -获取特定日期的详细电力数据
  • get_one_date_energy_data(query_date, serial?) -获取特定日期的能源摘要

电池配置

  • get_charge_config(serial?) -获取当前电池充电配置
  • get_discharge_config(serial?) -获取当前电池放电配置
  • set_battery_charge(enabled, dp1_start, dp1_end, dp2_start, dp2_end, charge_cutoff_soc, serial?) -配置电池充电计划
  • set_battery_discharge(enabled, dp1_start, dp1_end, dp2_start, dp2_end, discharge_cutoff_soc, serial?) -配置电池放电计划

参数

  • serial (可选)-系统序列号。如果没有提供,如果只有一个系统存在,则自动选择第一个系统
  • query_date -YYYY-MM-DD格式的日期
  • enabled -用于启用/禁用配置的布尔值
  • dp1_start/dp1_end, dp2_start/dp2_end -HH:MM格式的时间段(分钟必须为:00、:15、:30、:45)
  • charge_cutoff_soc/discharge_cutoff_soc -SOC百分比(0-100)

测试

uv run python test_methods.py

许可证

MIT许可证

参考文献