MCP Hub
Back to servers

Weishaupt WEM Portal

Control and monitor Weishaupt heating systems via the WEM Portal

Registry
Updated
Mar 19, 2026

Quick Install

npx -y @disane-dev/weishaupt-wem-mcp-server
WEM Portal

Weishaupt WEM Portal MCP Server

Control and monitor your Weishaupt heating system with AI assistants via the WEM Portal

Version npm License: MIT Blog Website

MCP TypeScript Node.js semantic-release

GitHub Stars GitHub Issues CI


Features

  • Device Discovery - List all devices and modules from your WEM Portal account
  • Live Parameters - Read temperatures, pressure, operating modes with current values
  • Full Overview - Get a complete snapshot of your entire heating system in one call
  • Write Parameters - Adjust target temperatures, operating modes, schedules
  • Device Status - Check connection status of your devices
  • Writable Filter - List only the parameters you can actually change
  • Session Management - Automatic cookie-based auth with login lock for concurrent requests

Quick Start

Install via npx (recommended)

No installation needed. Configure your MCP client to run:

npx @disane-dev/weishaupt-wem-mcp-server

Install from source

git clone https://github.com/Disane87/weishaupt-wem-mcp-server.git
cd weishaupt-wem-mcp-server
npm install
npm run build

Configuration

Claude Desktop

Add to your Claude Desktop config:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "weishaupt-wem": {
      "command": "npx",
      "args": ["-y", "@disane-dev/weishaupt-wem-mcp-server"],
      "env": {
        "WEM_USERNAME": "your_email@example.com",
        "WEM_PASSWORD": "your_password"
      }
    }
  }
}
Claude Code
claude mcp add weishaupt-wem -- npx -y @disane-dev/weishaupt-wem-mcp-server

Set the environment variables WEM_USERNAME and WEM_PASSWORD before starting.

From source
{
  "mcpServers": {
    "weishaupt-wem": {
      "command": "node",
      "args": ["/path/to/wem-mcp/build/index.js"],
      "env": {
        "WEM_USERNAME": "your_email@example.com",
        "WEM_PASSWORD": "your_password"
      }
    }
  }
}

Environment Variables

VariableRequiredDescription
WEM_USERNAMEYesYour WEM Portal email
WEM_PASSWORDYesYour WEM Portal password
WEM_API_URLNoAPI base URL (default: https://www.wemportal.com/app)

Available Tools

ToolDescription
wem_get_devicesList all devices with modules. Call this first to discover IDs.
wem_get_device_statusGet connection status of a device
wem_get_overviewFull device overview: all modules with all parameters in one call
wem_get_parametersGet all parameters of a module with current values
wem_get_parameter_metaGet parameter metadata (names, min/max, enums, writable flag)
wem_get_writable_parametersList only adjustable parameters with ranges and options
wem_read_parametersRead specific parameter values by ID
wem_write_parameterSet a parameter value (e.g., target temperature)

[!TIP] Start with wem_get_devices to discover your deviceId, moduleIndex, and moduleType, then use wem_get_overview for a complete snapshot of your heating system.


Typical Workflow

1. wem_get_devices
   -> Returns devices with modules (WE0=heat generator, HZK0=heating circuit, WW0=hot water)

2. wem_get_overview (deviceId)
   -> Returns ALL modules with ALL parameters in one call

3. wem_get_writable_parameters (deviceId, moduleIndex, moduleType)
   -> Shows what you can adjust, with min/max ranges

4. wem_write_parameter (deviceId, moduleIndex, moduleType, parameterId, numericValue)
   -> Sets a writable parameter (e.g. target temperature)

Common Module Types

TypeNameDescription
1SYSTEMSystem overview
2HZKHeating circuit (temperatures, operating mode)
3WWHot water (temperature, push, schedule)
5TERMINALControl panel
6GATEWAYCommunication gateway
7WEHeat generator (boiler/heat pump performance)
9DevicePhysical device unit
10GROUNDGround module

Development

CommandDescription
npm run buildBuild the project
npm run watchWatch mode (auto-rebuild on changes)
npm startRun server directly
npm testTest API connection
npm run inspectorOfficial MCP Inspector (Web UI)
npm run inspector:cli -- devicesCLI inspector for quick API tests

Troubleshooting

[!NOTE] Make sure you can log in at wemportal.com before using this server.

IssueSolution
Authentication failedVerify credentials, check if WEM Portal blocks after too many attempts
Connection timeoutCheck internet, WEM Portal may be temporarily unavailable (30s default timeout)
Parameter values show 0Some parameters (e.g. room temperature) require a physical sensor connected to the device

Contributing

Contributions are welcome! Please open an issue or submit a pull request.


License

MIT - see LICENSE


Reviews

No reviews yet

Sign in to write a review