README
🚀 tako-mcp
这是 Octopus Energy Japan GraphQL API 的 MCP 服务器。借助 MCP 工具,你可以获取电力使用量、成本估算、合同信息、费率计划等内容。该服务器可用于 Claude 等大语言模型(LLM)对能源使用情况的分析。
🚀 快速开始
本项目默认以 stdio 传输模式运行,你可以使用以下命令启动:
OCTOPUS_EMAIL=you@example.com OCTOPUS_PASSWORD=your-password OCTOPUS_ACCOUNT_NUMBER=A-AAAA1111 npx tako-mcp
若要切换到 Streamable HTTP 传输模式,可添加 --http 标志:
OCTOPUS_EMAIL=you@example.com OCTOPUS_PASSWORD=your-password OCTOPUS_ACCOUNT_NUMBER=A-AAAA1111 npx tako-mcp --http
若未指定 PORT 环境变量,系统将自动选择一个空闲端口。
✨ 主要特性
- 可获取 30 分钟为单位的电力消耗量及成本估算。
- 能获取账户和合同信息(包括产品和基本费用)。
- 支持通过邮政编码搜索区域信息。
- 注重隐私保护:个人地址等信息不会出现在工具响应中。
📦 安装指南
必要条件
- Node.js 22+
- Octopus Energy Japan 账户(包含电子邮件地址和密码)
💻 使用示例
环境变量说明
| 变量名 | 是否必需 | 说明 |
| ---- | ---- | ---- |
| OCTOPUS_EMAIL | 是 | Octopus Energy Japan 的登录电子邮件地址 |
| OCTOPUS_PASSWORD | 是 | Octopus Energy Japan 的登录密码 |
| OCTOPUS_ACCOUNT_NUMBER | 是 | 账户编号(例如:A-AAAA1111) |
| PORT | 否 | HTTP 模式下的端口号(默认:自动选择) |
MCP 工具列表
| 工具 | 说明 | 认证 |
| ---- | ---- | ---- |
| get_account_info | 获取账户和合同信息(包括产品和基本费用,不包括地址) | 需要 |
| get_electricity_consumption | 获取 30 分钟为单位的电力消耗量及成本估算 | 需要 |
| get_postal_areas | 通过邮政编码搜索区域信息 | 不需要 |
客户端配置
Claude Desktop / Claude Code
{
"mcpServers": {
"tako-mcp": {
"command": "npx",
"args": ["-y", "tako-mcp"],
"env": {
"OCTOPUS_EMAIL": "you@example.com",
"OCTOPUS_PASSWORD": "your-password",
"OCTOPUS_ACCOUNT_NUMBER": "A-AAAA1111"
}
}
}
}
HTTP 模式
{
"mcpServers": {
"tako-mcp": {
"type": "http",
"url": "http://localhost:<port>/mcp"
}
}
}
📚 详细文档
开发命令
npm install
npm run dev # 使用 tsx 启动
npm run build # 使用 tsup 进行打包
npm run typecheck # 进行类型检查
npm run check # 进行 Lint 和格式化(使用 Biome)
📄 许可证
本项目采用 MIT 许可证。
微信扫一扫