bastelbuud/leneda_mcp_server
If you are the rightful owner of leneda_mcp_server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Leneda Energy MCP Server provides access to energy metering data through Claude Desktop, offering detailed time-series data and flexible querying options.
Leneda Energy MCP Server
MCP server for accessing Leneda energy metering data through Claude Desktop.
Features
- Detailed Time-Series: 15-minute interval measurements
- Aggregated Data: Totals, averages, peaks over periods
- Friendly Names: Use "active_power_export" instead of "1-1:2.29.0"
- Flexible Queries: Multiple aggregation levels and transformation modes
Installation
cd ~/claudefiles/leneda-mcp-server
pip3 install -r requirements.txt
Configuration
- Create .env file:
cp .env.example .env
nano .env
- Add your credentials:
LENEDA_API_KEY=your-api-key
LENEDA_ENERGY_ID=your-energy-id
LENEDA_DEFAULT_METERING_POINT=your-metering-point-code
- Test it works:
python3 test_server.py
- Add to Claude Desktop:
Edit: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"leneda-energy": {
"command": "python3",
"args": [
"/Users/marcdurbach/claudefiles/leneda-mcp-server/server.py"
],
"env": {
"LENEDA_API_KEY": "your-api-key",
"LENEDA_ENERGY_ID": "your-energy-id",
"LENEDA_DEFAULT_METERING_POINT": "your-metering-point"
}
}
}
}
- Restart Claude Desktop
Usage
Ask Claude natural language questions:
- "What was my total energy consumption in January 2025?"
- "Show me my average daily power production last week"
- "What was my peak power export yesterday?"
- "Compare my consumption between January and February"
Available Tools
1. get_detailed_energy_data
Get 15-minute interval measurements.
Parameters:
obis_code(required): Measurement typestart_datetime(required): ISO format (e.g., "2024-01-01T01:00:00Z")end_datetime(required): ISO formatmetering_point(optional): Overrides default
2. get_aggregated_energy_data
Get summarized data over periods.
Parameters:
obis_code(required): Measurement typestart_date(required): Date (e.g., "2025-01-01")end_date(required): Dateaggregation_level(optional): QuarterHour, Hour, Day, Month, Year, Infinitetransformation_mode(optional): Accumulation, Average, Maximum, Minimummetering_point(optional): Overrides default
3. list_obis_codes
List all available measurement types and usage tips.
OBIS Codes
Energy (kWh)
active_energy_importor1-1:1.8.0- Energy consumedactive_energy_exportor1-1:2.8.0- Energy producedreactive_energy_importor1-1:3.8.0- Reactive importedreactive_energy_exportor1-1:4.8.0- Reactive exported
Power (kW)
active_power_importor1-1:1.29.0- Current consumptionactive_power_exportor1-1:2.29.0- Current production
Aggregation Options
Levels: QuarterHour, Hour, Day, Month, Year, Infinite
Modes: Accumulation (totals), Average, Maximum (peaks), Minimum
Troubleshooting
Server not showing in Claude?
- Validate JSON syntax in config file
- Check file paths are correct
- View logs:
~/Library/Logs/Claude/mcp*.log
API errors?
- Run:
python3 test_server.py - Verify credentials
- Check date ranges
No data?
- Confirm data exists in Leneda portal for the period
- Try shorter time range
- Verify OBIS code is supported
Examples
Total Monthly Consumption
"What was my total energy import for October 2024?"
Daily Averages
"Show me average daily power production for last month"
Peak Analysis
"What was my maximum power export in January?"
Comparisons
"Compare my consumption between January and February 2025"
API Reference
Detailed Endpoint
GET /api/metering-points/{code}/time-series
?startDateTime=2024-01-01T01:00:00Z
&endDateTime=2024-01-10T01:00:00Z
&obisCode=1-1:2.29.0
Aggregated Endpoint
GET /api/metering-points/{code}/time-series/aggregated
?startDate=2025-01-01
&endDate=2025-01-31
&obisCode=1-1:1.29.0
&aggregationLevel=Day
&transformationMode=Accumulation
License
Personal use with Claude Desktop.
Support
- Leneda API: Contact Leneda support
- MCP: https://modelcontextprotocol.io/