Emoncms
FreeNot checkedMCP server for EmonCMS energy monitoring API - query feeds, inputs, and historical energy data
About
MCP server for EmonCMS energy monitoring API - query feeds, inputs, and historical energy data
README
MCP (Model Context Protocol) server for the EmonCMS energy monitoring API. Allows AI assistants to query energy feeds, inputs, and historical data from your EmonCMS instance.
Features
- feed_list — List all feeds with current values and units
- feed_value — Get the current value of a specific feed
- feed_fetch — Get current values for multiple feeds at once
- feed_data — Get historical time-series data with configurable intervals
- feed_average — Get averaged data over time periods (hourly, daily, etc.)
- feed_daily — Get daily data points aligned to timezone (ideal for kWh/day)
- feed_meta — Get feed metadata (start time, interval, number of points)
- input_list — List all inputs grouped by node
- input_get — Get inputs for a specific node
Installation
npm install
npm run build
Configuration
The server requires two environment variables:
| Variable | Required | Description |
|---|---|---|
EMONCMS_URL |
No | Base URL of your EmonCMS instance (default: http://192.168.1.250/emoncms) |
EMONCMS_APIKEY |
Yes | Your EmonCMS read API key |
Usage with OpenCode
Add to your ~/.config/opencode/opencode.json:
{
"mcpServers": {
"emoncms": {
"type": "stdio",
"command": "node",
"args": ["/path/to/emoncms-mcp-server/dist/index.js"],
"env": {
"EMONCMS_URL": "http://192.168.1.250/emoncms",
"EMONCMS_APIKEY": "your-read-api-key"
}
}
}
}
Usage with Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"emoncms": {
"command": "node",
"args": ["/path/to/emoncms-mcp-server/dist/index.js"],
"env": {
"EMONCMS_URL": "http://192.168.1.250/emoncms",
"EMONCMS_APIKEY": "your-read-api-key"
}
}
}
}
Tool Reference
feed_list
Lists all feeds with their current values.
No parameters required.
feed_value
Get the current value of a single feed.
| Parameter | Type | Description |
|---|---|---|
id |
number | Feed ID |
feed_fetch
Get current values for multiple feeds.
| Parameter | Type | Description |
|---|---|---|
ids |
number[] | Array of feed IDs |
feed_data
Get historical time-series data.
| Parameter | Type | Description |
|---|---|---|
id |
number | Feed ID |
start |
string | Start time — ISO 8601 (e.g. 2024-01-01T00:00:00Z) or relative (-24h, -7d) |
end |
string? | End time (default: now) |
interval |
number? | Seconds between data points (default: 600) |
feed_average
Get averaged data over intervals.
| Parameter | Type | Description |
|---|---|---|
id |
number | Feed ID |
start |
string | Start time |
end |
string? | End time (default: now) |
interval |
number | Averaging interval in seconds (e.g. 3600 for hourly) |
feed_daily
Get daily data points (timezone-aligned).
| Parameter | Type | Description |
|---|---|---|
id |
number | Feed ID |
start |
string | Start time (e.g. -30d) |
end |
string? | End time (default: now) |
feed_meta
Get metadata for a feed.
| Parameter | Type | Description |
|---|---|---|
id |
number | Feed ID |
input_list
Lists all inputs grouped by node.
No parameters required.
input_get
Get inputs for a specific node.
| Parameter | Type | Description |
|---|---|---|
node |
string | Node name (e.g. emonpi, emontx3) |
Development
npm run dev # Run with tsx (hot reload)
npm run build # Compile TypeScript
npm start # Run compiled version
License
MIT
Installing Emoncms
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/guibrazlima/emoncms-mcp-serverFAQ
Is Emoncms MCP free?
Yes, Emoncms MCP is free — one-click install via Unyly at no cost.
Does Emoncms need an API key?
No, Emoncms runs without API keys or environment variables.
Is Emoncms hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Emoncms in Claude Desktop, Claude Code or Cursor?
Open Emoncms on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Git
Tools to read, search, and manipulate Git repositories.
Sequential Thinking
Dynamic and reflective problem-solving through thought sequences.
Time
Time and timezone conversion capabilities.
Compare Emoncms with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
