项目简介
Tibber MCP服务器是一个应用程序后端,旨在使大型语言模型(LLMs)能够访问 Tibber API 中的数据。它提供了一系列工具,用于检索来自 Tibber 智能家居的能源消耗、生产、定价和实时数据。这使得LLM能够理解和利用用户的能源数据,从而实现更智能的家居自动化和能源管理应用。
主要功能点
- 访问 Tibber 能源数据: 提供多种工具,允许LLM获取用户的Tibber智能家居的能源相关信息。
- 实时数据: 获取最新的实时功率读数,帮助用户监控当前的能源使用情况。
- 历史数据: 检索能源消耗和生产的历史数据,支持自定义时间分辨率(小时、天、周、月、年)和时间范围。
- 价格信息: 获取当前和未来的电价信息,包括详细的价格预测,帮助用户优化能源使用以节省成本。
- 家居列表: 列出所有已连接的Tibber智能家居及其基本信息。
安装步骤
- 环境准备: 确保已安装 Python 3.13 或更高版本。
- 获取代码: 从 GitHub 克隆或下载 'tibber-mcp' 仓库代码到本地。
- 安装依赖: 在仓库根目录下,运行 'uv sync' 命令同步依赖(如果安装了 'uv')。或者,您可以使用 'pip install -r requirements.txt' 安装依赖。
- 配置环境变量: 设置 'TIBBER_TOKEN' 环境变量,值为您的 Tibber API 访问令牌。这是服务器连接 Tibber API 的凭证,务必妥善保管。
服务器配置
为了让 MCP 客户端(例如 Claude Desktop)连接到 'tibber-mcp' 服务器,您需要在客户端的配置文件中添加服务器配置信息。以下是一个配置示例,通常在 MCP 客户端的配置文件(如 Claude Desktop 的 'claude_desktop_config.json')中 'mcpServers' 字段下添加:
{ "tibber-mcp": { "command": "uv", "args": [ "--directory", "/path/to/tibber-mcp", "run", "tibber-mcp" ], "env": { "TIBBER_TOKEN": "your_tibber_api_token" } } }
配置参数说明:
- '"tibber-mcp"': 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器。
- '"command"': 运行服务器的命令。这里使用 'uv',它是一个快速的包安装和运行工具。请确保 'uv' 已安装并在系统 PATH 中。如果未安装 'uv',您可以考虑使用 'python',并将 'args' 修改为 '["-m", "tibber_mcp.server"]'。
- '"args"': 传递给 'command' 的参数列表。
- '"--directory"': 指定 'tibber-mcp' 仓库代码所在的本地路径。 请将 '/path/to/tibber-mcp' 替换为实际的代码仓库路径。
- '"run"': 'uv run' 命令用于运行 Python 包或模块。
- '"tibber-mcp"': 指定要运行的包名称。
- '"env"': 环境变量配置。
- '"TIBBER_TOKEN"': 请将 '"your_tibber_api_token"' 替换为您从 Tibber 开发者平台获取的 API 访问令牌。 这是连接 Tibber API 的关键,请务必正确配置。
注意:
- 请根据您的实际环境和 Python 包管理工具('uv' 或 'pip')调整 'command' 和 'args' 配置。
- 确保 MCP 客户端能够访问到 'tibber-mcp' 代码所在的路径。
基本使用方法
配置完成后,MCP 客户端将能够连接到 'tibber-mcp' 服务器并调用其提供的工具。用户可以通过 MCP 客户端界面或指令,指示 LLM 调用相应的工具来获取 Tibber 能源数据。
例如,在 Claude 中,您可以指示 Claude 使用 'tibber-mcp' 服务器提供的工具来查询您的能源消耗情况或当前电价。具体的工具调用方式取决于 MCP 客户端的实现。
服务器提供的工具名称和功能描述如下:
- 'list-homes': 列出 Tibber 智能家居列表。
- 'get-consumption': 获取指定 Tibber 家居的能源消耗数据。
- 'get-production': 获取指定 Tibber 家居的能源生产数据。
- 'get-price-info': 获取指定 Tibber 家居的当前和未来电价信息。
- 'get-realtime': 获取指定 Tibber 家居的实时功率读数。
- 'get-historic': 获取指定 Tibber 家居的历史数据,可自定义时间分辨率和时间范围。
- 'get-price-forecast': 获取指定 Tibber 家居的详细电价预测。
使用时,请参考每个工具的 'inputSchema' (可以在 'list-tools' 的结果中查看) 来提供正确的参数。
信息
分类
网页与API