@cyanheads/eia-energy-mcp-server 0.2.3 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +7 -2
- package/README.md +4 -4
- package/changelog/0.2.x/0.2.4.md +25 -0
- package/package.json +7 -6
- package/server.json +3 -3
package/CLAUDE.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Agent Protocol
|
|
2
2
|
|
|
3
3
|
**Server:** @cyanheads/eia-energy-mcp-server
|
|
4
|
-
**Version:** 0.2.
|
|
5
|
-
**Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.9.
|
|
4
|
+
**Version:** 0.2.4
|
|
5
|
+
**Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.9.21`
|
|
6
6
|
**Engines:** Bun ≥1.3.0, Node ≥24.0.0
|
|
7
7
|
|
|
8
8
|
> **Read the framework docs first:** `node_modules/@cyanheads/mcp-ts-core/CLAUDE.md` contains the full API reference — builders, Context, error codes, exports, patterns. This file covers server-specific conventions only.
|
|
@@ -267,6 +267,10 @@ Available skills:
|
|
|
267
267
|
| `api-utils` | Formatting, parsing, security, pagination, scheduling, telemetry helpers |
|
|
268
268
|
| `api-telemetry` | OTel catalog: spans, metrics, completion logs, env config, cardinality rules |
|
|
269
269
|
| `api-workers` | Cloudflare Workers runtime |
|
|
270
|
+
| `api-mirror` | MirrorService: persistent, self-refreshing local mirror of bulk upstream datasets via embedded SQLite + FTS5 |
|
|
271
|
+
| `orchestrations` | Chain task skills into a gated multi-phase pipeline — build-out, QA-fix, update-ship — when you can spawn sub-agents |
|
|
272
|
+
|
|
273
|
+
**Chaining skills into pipelines.** When the user wants a multi-phase effort — build this server out, QA-and-fix the surface, update-and-ship — *and you can spawn sub-agents*, `skills/orchestrations/SKILL.md` sequences the task skills above into a gated pipeline with verification at each step. Read it to drive the run. Optional: skip it if you can't orchestrate sub-agents, and ignore it entirely if you were *spawned* as one — you've already been scoped to a single phase.
|
|
270
274
|
|
|
271
275
|
When you complete a skill's checklist, check the boxes and add a completion timestamp at the end (e.g., `Completed: 2026-05-21`).
|
|
272
276
|
|
|
@@ -292,6 +296,7 @@ When you complete a skill's checklist, check the boxes and add a completion time
|
|
|
292
296
|
| `bun run changelog:build` | Regenerate `CHANGELOG.md` from per-version files |
|
|
293
297
|
| `bun run changelog:check` | Verify `CHANGELOG.md` is in sync (used by devcheck) |
|
|
294
298
|
| `bun run list-skills` | List available local skills (useful for sub-agents) |
|
|
299
|
+
| `bun run release:github` | Create (or repair) a GitHub Release on the current annotated tag |
|
|
295
300
|
|
|
296
301
|
---
|
|
297
302
|
|
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
<div align="center">
|
|
9
9
|
|
|
10
|
-
[](./CHANGELOG.md) [](./LICENSE) [](https://github.com/users/cyanheads/packages/container/package/eia-energy-mcp-server) [](https://modelcontextprotocol.io/) [](https://www.npmjs.com/package/@cyanheads/eia-energy-mcp-server) [](https://www.typescriptlang.org/) [](https://bun.sh/)
|
|
11
11
|
|
|
12
12
|
[](https://github.com/cyanheads/eia-energy-mcp-server/releases/latest/download/eia-energy-mcp-server.mcpb) [](https://cursor.com/en/install-mcp?name=eia-energy-mcp-server&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBjeWFuaGVhZHMvZWlhLWVuZXJneS1tY3Atc2VydmVyIl0sImVudiI6eyJFSUFfQVBJX0tFWSI6InlvdXItYXBpLWtleSJ9fQ==) [](https://vscode.dev/redirect?url=vscode:mcp/install?%7B%22name%22%3A%22eia-energy-mcp-server%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40cyanheads/eia-energy-mcp-server%22%5D%2C%22env%22%3A%7B%22EIA_API_KEY%22%3A%22your-api-key%22%7D%7D)
|
|
13
13
|
|
|
@@ -103,7 +103,7 @@ Get a free API key at [api.eia.gov](https://www.eia.gov/opendata/), then add the
|
|
|
103
103
|
```json
|
|
104
104
|
{
|
|
105
105
|
"mcpServers": {
|
|
106
|
-
"eia": {
|
|
106
|
+
"eia-energy-mcp-server": {
|
|
107
107
|
"type": "stdio",
|
|
108
108
|
"command": "bunx",
|
|
109
109
|
"args": ["@cyanheads/eia-energy-mcp-server@latest"],
|
|
@@ -122,7 +122,7 @@ Or with npx (no Bun required):
|
|
|
122
122
|
```json
|
|
123
123
|
{
|
|
124
124
|
"mcpServers": {
|
|
125
|
-
"eia": {
|
|
125
|
+
"eia-energy-mcp-server": {
|
|
126
126
|
"type": "stdio",
|
|
127
127
|
"command": "npx",
|
|
128
128
|
"args": ["-y", "@cyanheads/eia-energy-mcp-server@latest"],
|
|
@@ -141,7 +141,7 @@ Or with Docker:
|
|
|
141
141
|
```json
|
|
142
142
|
{
|
|
143
143
|
"mcpServers": {
|
|
144
|
-
"eia": {
|
|
144
|
+
"eia-energy-mcp-server": {
|
|
145
145
|
"type": "stdio",
|
|
146
146
|
"command": "docker",
|
|
147
147
|
"args": [
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "@cyanheads/mcp-ts-core ^0.9.16 → ^0.9.21: per-request log context fix, secret-stripped error messages, fail-fast retry on non-retryable errors"
|
|
3
|
+
breaking: false
|
|
4
|
+
security: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# 0.2.4 — 2026-06-02
|
|
8
|
+
|
|
9
|
+
## Changed
|
|
10
|
+
|
|
11
|
+
- **`@cyanheads/mcp-ts-core`** ^0.9.16 → ^0.9.21. Framework changes adopted:
|
|
12
|
+
- HTTP transport per-request log context fix — per-request logs and traces now carry fresh request and trace/span IDs instead of the frozen boot context.
|
|
13
|
+
- `fetchWithTimeout` strips query-string secrets (e.g. `?api_key=`) from error messages and logs.
|
|
14
|
+
- `withRetry` fails fast on non-retryable errors; `ctx.fail` auto-populates the `retryable` flag.
|
|
15
|
+
- **`release:github` script** — new `scripts/release-github.ts` + `release:github` npm script for one-command GitHub Release creation from the current annotated tag.
|
|
16
|
+
- **`devcheck.ts`** — updated to the mcp-ts-core 0.9.21 devcheck conventions.
|
|
17
|
+
- **Skills** — re-synced to mcp-ts-core 0.9.21: `add-tool`, `add-service`, `api-canvas`, `api-context`, `api-linter`, `api-utils`, `design-mcp-server`, `release-and-publish`; added `api-mirror` and `orchestrations`.
|
|
18
|
+
- **README client-config key** — renamed from `eia` to `eia-energy-mcp-server` in all three client-config examples (bunx, npx, Docker).
|
|
19
|
+
|
|
20
|
+
## Dependencies
|
|
21
|
+
|
|
22
|
+
- `@cyanheads/mcp-ts-core` ^0.9.16 → ^0.9.21
|
|
23
|
+
- `@duckdb/node-api` ^1.5.3-r.2 → ^1.5.3-r.3
|
|
24
|
+
- `fuse.js` ^7.3.0 → ^7.4.1
|
|
25
|
+
- `vitest` ^4.1.7 → ^4.1.8 (dev)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cyanheads/eia-energy-mcp-server",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.4",
|
|
4
4
|
"mcpName": "io.github.cyanheads/eia-energy-mcp-server",
|
|
5
5
|
"description": "Browse and query the U.S. Energy Information Administration API v2 — electricity, petroleum, natural gas, coal, forecasts, and more via MCP. STDIO or Streamable HTTP.",
|
|
6
6
|
"type": "module",
|
|
@@ -37,7 +37,8 @@
|
|
|
37
37
|
"start": "node dist/index.js",
|
|
38
38
|
"start:stdio": "MCP_TRANSPORT_TYPE=stdio node dist/index.js",
|
|
39
39
|
"start:http": "MCP_TRANSPORT_TYPE=http node dist/index.js",
|
|
40
|
-
"publish-mcp": "mcp-publisher login github -token \"$(security find-generic-password -a \"$USER\" -s mcp-publisher-github-pat -w)\" && mcp-publisher publish"
|
|
40
|
+
"publish-mcp": "mcp-publisher login github -token \"$(security find-generic-password -a \"$USER\" -s mcp-publisher-github-pat -w)\" && mcp-publisher publish",
|
|
41
|
+
"release:github": "bun run scripts/release-github.ts"
|
|
41
42
|
},
|
|
42
43
|
"keywords": [
|
|
43
44
|
"eia",
|
|
@@ -89,9 +90,9 @@
|
|
|
89
90
|
"access": "public"
|
|
90
91
|
},
|
|
91
92
|
"dependencies": {
|
|
92
|
-
"@cyanheads/mcp-ts-core": "^0.9.
|
|
93
|
-
"@duckdb/node-api": "^1.5.3-r.
|
|
94
|
-
"fuse.js": "^7.
|
|
93
|
+
"@cyanheads/mcp-ts-core": "^0.9.21",
|
|
94
|
+
"@duckdb/node-api": "^1.5.3-r.3",
|
|
95
|
+
"fuse.js": "^7.4.1",
|
|
95
96
|
"pino-pretty": "^13.1.3",
|
|
96
97
|
"zod": "^4.4.3"
|
|
97
98
|
},
|
|
@@ -102,6 +103,6 @@
|
|
|
102
103
|
"ignore": "^7.0.5",
|
|
103
104
|
"tsc-alias": "^1.8.17",
|
|
104
105
|
"typescript": "^6.0.3",
|
|
105
|
-
"vitest": "^4.1.
|
|
106
|
+
"vitest": "^4.1.8"
|
|
106
107
|
}
|
|
107
108
|
}
|
package/server.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"url": "https://github.com/cyanheads/eia-energy-mcp-server",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "0.2.
|
|
9
|
+
"version": "0.2.4",
|
|
10
10
|
"remotes": [
|
|
11
11
|
{
|
|
12
12
|
"type": "streamable-http",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
20
20
|
"identifier": "@cyanheads/eia-energy-mcp-server",
|
|
21
21
|
"runtimeHint": "bun",
|
|
22
|
-
"version": "0.2.
|
|
22
|
+
"version": "0.2.4",
|
|
23
23
|
"packageArguments": [
|
|
24
24
|
{
|
|
25
25
|
"type": "positional",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
75
75
|
"identifier": "@cyanheads/eia-energy-mcp-server",
|
|
76
76
|
"runtimeHint": "bun",
|
|
77
|
-
"version": "0.2.
|
|
77
|
+
"version": "0.2.4",
|
|
78
78
|
"packageArguments": [
|
|
79
79
|
{
|
|
80
80
|
"type": "positional",
|