项目简介

Tibber MCP服务器是一个应用程序后端,旨在使大型语言模型(LLMs)能够访问 Tibber API 中的数据。它提供了一系列工具,用于检索来自 Tibber 智能家居的能源消耗、生产、定价和实时数据。这使得LLM能够理解和利用用户的能源数据,从而实现更智能的家居自动化和能源管理应用。

主要功能点

  • 访问 Tibber 能源数据: 提供多种工具,允许LLM获取用户的Tibber智能家居的能源相关信息。
  • 实时数据: 获取最新的实时功率读数,帮助用户监控当前的能源使用情况。
  • 历史数据: 检索能源消耗和生产的历史数据,支持自定义时间分辨率(小时、天、周、月、年)和时间范围。
  • 价格信息: 获取当前和未来的电价信息,包括详细的价格预测,帮助用户优化能源使用以节省成本。
  • 家居列表: 列出所有已连接的Tibber智能家居及其基本信息。

安装步骤

  1. 环境准备: 确保已安装 Python 3.13 或更高版本。
  2. 获取代码: 从 GitHub 克隆或下载 'tibber-mcp' 仓库代码到本地。
  3. 安装依赖: 在仓库根目录下,运行 'uv sync' 命令同步依赖(如果安装了 'uv')。或者,您可以使用 'pip install -r requirements.txt' 安装依赖。
  4. 配置环境变量: 设置 '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