特斯拉Powerwall 2 MCP服务器
模型上下文协议(MCP)服务器,提供与特斯拉Powerwall 2本地网关API交互的工具。这允许像Claude这样的人工智能助手监视和控制您的Powerwall系统。
特性
认证
- powerwall_login -使用Powerwall网关进行身份验证
- 动力墙_痛风 -使您的身份验证令牌过期
监视工具
- 电源墙_仪表_集合 -获取太阳能、电网、电池和家庭的实时电力指标
- 电源墙_get_soe -获取电池能量状态(充电百分比)
- 电源墙_get_system_status -获取整体系统状态
- powerwall_get_status -获取Powerwall版本和正常运行时间
- powerwall_get_site_info -获取站点配置和容量
- 电源墙_get_grid_status -检查电网连接状态
- powerwall_get_powerwalls -列出所有Powerwall及其状态
- 电源墙_电表 -获取详细的仪表信息
- 电源墙_太阳能 -获取太阳能电池阵列信息
控制工具
- 电源墙_操作 -更改操作模式(自耗、备份、自主、调度)
- 设置备份保留百分比
配置工具
- powerwall_get-operation -查看当前操作模式设置
- powerwall_get_config -获取系统配置
- 电源墙_客户 -获取客户注册信息
- powerwall_get_installer -获取安装程序信息
- powerwall_get-networks -获取WiFi网络信息
- 电源墙_设备_类型 -获取设备类型详细信息
安装
# Clone or create the project
npm install
# Build the TypeScript code
npm run build配置
设置这些环境变量或创建 .env 文件:
POWERWALL_HOST=192.168.1.xxx # Your Powerwall gateway IP or hostname
POWERWALL_USERNAME=customer # Usually "customer"
POWERWALL_PASSWORD=xxxxx # Last 5 digits of gateway serial number or custom password
POWERWALL_EMAIL= # Optional email查找您的凭据
- 网关IP地址:检查路由器的连接设备或使用Tesla应用程序
- 密码:
- 打开特斯拉应用程序 - 前往设置→ 我的主页信息 - 查找“Powerwall网关”序列号 - 使用最后5位数字作为密码(除非您设置了自定义密码)
使用Claude Desktop
添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json\ 视窗: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"tesla-powerwall": {
"command": "node",
"args": ["/path/to/tesla-powerwall-mcp/dist/index.js"],
"env": {
"POWERWALL_HOST": "192.168.1.xxx",
"POWERWALL_USERNAME": "customer",
"POWERWALL_PASSWORD": "xxxxx"
}
}
}
}Claude的查询示例
配置后,您可以向Claude询问以下问题:
- “我目前的电池电量是多少?”
- “我现在能产生多少太阳能?”
- “显示我的所有功率指标”
- “我的Powerwall操作模式是什么?”
- “更改为具有20%备份储备的自耗模式”
- “电网连接了吗?”
- “我家的耗电量是多少?”
- “我有多少个Powerwall?”
了解功率指标
当您查询时 powerwall_get_meters_aggregates,您将看到以瓦特为单位的功率值:
- 站点 (网格):
- 正=从电网汲取电力 - 负=向电网供电
- 电池 (Powerwall):
- 正极=放电(回家供电) - 负=充电
- 太阳的:
- 正=发电量
- 负载 (主页):
- 您家正在消耗的电力
操作模式
- 自我消费:使用太阳能/电池为家庭供电,电网作为备用
- 备份:优先考虑在停电时保持电池充电
- 自主的:基于时间的控制(如果已配置)
- 调度器:自定义计划模式
安全说明
⚠️ 重要安全注意事项:
- 自签名证书:Powerwall使用自签名SSL证书。此服务器通过设置接受它
rejectUnauthorized: false。这是本地Powerwall访问的标准,但意味着SSL验证已禁用。
- 仅限本地网络:仅在受信任的本地网络上使用此功能。切勿将Powerwall网关暴露在互联网上。
- 凭证:确保您的网关密码安全。任何有权限的人都可以控制您的Powerwall。
- 令牌存储:身份验证令牌仅在会话期间存储在内存中。
API 参考
根据API社区文件:https://github.com/vloschiavo/powerwall2
故障排除
无法连接到Powerwall:
- 验证IP地址是否正确
- 确保您与Powerwall位于同一网络上
- 检查防火墙设置
身份验证失败:
- 验证密码是否正确(网关序列号的最后5位数字)
- 如果您设置了自定义密码,请尝试使用
- 某些固件版本可能需要不同的身份验证
“错误:自签名证书”:
- 这是意料之中的。服务器自动处理自签名证书。
项目结构
tesla-powerwall-mcp/
├── src/
│ └── index.ts # Main MCP server code
├── dist/ # Compiled JavaScript (generated)
├── package.json
├── tsconfig.json
└── README.md发展
# Install dependencies
npm install
# Build
npm run build
# Run directly
npm start贡献
欢迎投稿!此服务器实现了社区研究中记录的端点https://github.com/vloschiavo/powerwall2
许可证
麻省理工学院
免责声明
这是一个非官方工具,与特斯拉股份有限公司无关。使用风险自负。作者不对使用此软件与Powerwall系统交互时出现的任何问题负责。
鸣谢
- API文件:https://github.com/vloschiavo/powerwall2
- MCP协议:人为
- 特斯拉Powerwall车主的社区研究和测试
