Interact with IEEE 2030.5 (SEP 2.0) Smart Energy Profile servers.
IEEE 2030.5 MCP Server
A Model Context Protocol (MCP) server for interacting with IEEE 2030.5 (SEP 2.0) Smart Energy Profile servers.
Quick Start: npx -y @prandogabriel/ieee2030.5-mcp
Features
- ๐ Certificate-based authentication (single .pem or separate cert/key files)
- ๐ก Full IEEE 2030.5 endpoint support
- ๐ ๏ธ MCP tools for all major IEEE 2030.5 resources
- ๐ฏ HATEOAS-based navigation with comprehensive guide
- โ๏ธ Environment-based configuration
- ๐งช Built-in test client and MCP Inspector support
Prerequisites
System Requirements
- Node.js: Version 20.0.0 or higher
- Package Manager: pnpm (recommended) or npm
- Operating System: macOS, Linux, or Windows
Install Node.js
If you don't have Node.js installed:
Using Node Version Manager (recommended):
# Install nvm (macOS/Linux)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
# Install and use Node.js 20
nvm install 20
nvm use 20
Direct download:
- Download from nodejs.org (LTS version recommended)
Install pnpm
npm install -g pnpm
Or using corepack (Node.js 16.10+):
corepack enable
corepack prepare pnpm@latest --activate
IEEE 2030.5 Server Requirements
To use this MCP server, you need access to an IEEE 2030.5 compliant server with:
- HTTPS endpoint (typically port 8443)
- Client certificate authentication (.pem format recommended)
- IEEE 2030.5/SEP 2.0 compliance with standard endpoints
Common IEEE 2030.5 implementations:
- OpenADR VEN/VTN servers
- Smart inverter management systems
- Utility demand response platforms
- Distributed Energy Resource (DER) management systems
Quick Start
Option 1: Using Published Package (Fastest)
For most users, the simplest way is to use the published npm package:
Ensure Node.js 20+ is installed:
node --version # Should be 20.0.0 or higherTest the server:
npx -y @prandogabriel/ieee2030.5-mcpConfigure with Claude Desktop - see Published Package Configuration
Option 2: Local Development Setup
For development or customization:
1. Verify Requirements
Check your Node.js and pnpm versions:
node --version # Should be 20.0.0 or higher
pnpm --version # Should be 8.0.0 or higher
2. Clone and Install
git clone <repository-url>
cd ieee2030.5-mcp
pnpm install
3. Configure Environment
Copy the example environment file and configure your IEEE 2030.5 server:
cp .env.example .env
Edit .env with your configuration. The server will automatically load environment variables from the .env file:
# REQUIRED: Your IEEE 2030.5 server URL
IEEE2030_BASE_URL=https://your-ieee2030-server:port
# REQUIRED: Certificate for authentication (choose one option)
# Option 1: Single PEM file (like curl -E $CTRL_CERT)
IEEE2030_CERT_PA
Tools (5)
connection_statusCheck the connection status and health of the IEEE 2030.5 server.get_resourceRetrieve a specific IEEE 2030.5 resource by its URI.list_demand_responseList available demand response programs and events.get_metering_dataFetch metering information and reading types from the server.discover_devicesDiscover EndDevice resources registered on the server.Environment Variables
IEEE2030_BASE_URLrequiredYour IEEE 2030.5 server URL (e.g., https://your-server:port)IEEE2030_CERT_PATHrequiredPath to the single PEM file for certificate-based authenticationConfiguration
{"mcpServers":{"ieee2030-5":{"command":"npx","args":["-y","@prandogabriel/ieee2030.5-mcp"],"env":{"IEEE2030_BASE_URL":"https://your-server:8443","IEEE2030_CERT_PATH":"/path/to/cert.pem"}}}}