@cyanheads/eia-energy-mcp-server 0.2.2 → 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 +8 -3
- package/README.md +4 -4
- package/changelog/0.2.x/0.2.3.md +14 -0
- package/changelog/0.2.x/0.2.4.md +25 -0
- package/changelog/template.md +1 -1
- package/dist/mcp-server/tools/definitions/browse-routes.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/browse-routes.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-describe.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-describe.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-drop.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-drop.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-query.tool.d.ts +6 -3
- package/dist/mcp-server/tools/definitions/dataframe-query.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/dataframe-query.tool.js +18 -9
- package/dist/mcp-server/tools/definitions/dataframe-query.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/describe-route.tool.d.ts +1 -1
- package/dist/mcp-server/tools/definitions/describe-route.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/query-route.tool.d.ts +6 -3
- package/dist/mcp-server/tools/definitions/query-route.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/query-route.tool.js +34 -8
- package/dist/mcp-server/tools/definitions/query-route.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/search-routes.tool.d.ts +5 -2
- package/dist/mcp-server/tools/definitions/search-routes.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/search-routes.tool.js +15 -5
- package/dist/mcp-server/tools/definitions/search-routes.tool.js.map +1 -1
- package/package.json +9 -7
- 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
|
|
|
@@ -353,7 +358,7 @@ import { getEiaApiService } from '@/services/eia/eia-service.js';
|
|
|
353
358
|
- [ ] Route tree and facet caches populated before use; retry/rate-limit contract declared on each tool
|
|
354
359
|
- [ ] DataCanvas spillover via `getCanvas()` accessor — graceful degradation when absent
|
|
355
360
|
- [ ] Registered in `createApp()` arrays (directly or via barrel exports)
|
|
356
|
-
- [ ] Tests use `createMockContext()` from `@cyanheads/mcp-ts-core/testing`
|
|
361
|
+
- [ ] Tests use `createMockContext()` and `getEnrichment(ctx)` from `@cyanheads/mcp-ts-core/testing`
|
|
357
362
|
- [ ] `.codex-plugin/plugin.json` populated — `name`, `version`, `description`, `repository`, `license` from `package.json`; `interface.displayName` = package name; `interface.shortDescription` from `package.json` description
|
|
358
363
|
- [ ] `.codex-plugin/mcp.json` updated — server name key matches `package.json` name; env vars added for any required API keys
|
|
359
364
|
- [ ] `.claude-plugin/plugin.json` populated — `name`, `version`, `description`, `repository`, `license` from `package.json`; inline `mcpServers` entry with server name key, env vars for any required API keys
|
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,14 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Enrichment adoption — search/query/dataframe tools surface query echoes, result totals, and empty-result guidance in a typed enrichment block reaching both structuredContent and content[]"
|
|
3
|
+
breaking: false
|
|
4
|
+
security: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# 0.2.3 — 2026-05-30
|
|
8
|
+
|
|
9
|
+
## Changed
|
|
10
|
+
|
|
11
|
+
- **`eia_search_routes`** — query echo (`effectiveQuery`), `totalIndexed`, and an optional `notice` for empty results now surface in a typed `enrichment` block reaching both `structuredContent` JSON and the `content[]` markdown trailer. `total_indexed` removed from `output` (value preserved in `enrichment.totalIndexed`).
|
|
12
|
+
- **`eia_query_route`** — `effectiveRoute`, `totalCount`, `returnedCount`, and `appliedFilters` now in `enrichment`; `appliedFilters` renders as structured markdown via `enrichmentTrailer`. `total` and `returned_count` removed from `output` (values preserved in `enrichment.totalCount` / `enrichment.returnedCount`).
|
|
13
|
+
- **`eia_dataframe_query`** — `totalRows`, `returnedRows`, and a capped-result `notice` now in `enrichment`. `row_count` removed from `output` (value preserved in `enrichment.totalRows`). `rows[]` schema tightened to `z.object({}).passthrough()` with per-row description.
|
|
14
|
+
- **`@cyanheads/mcp-ts-core`** ^0.9.13 → ^0.9.16.
|
|
@@ -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/changelog/template.md
CHANGED
|
@@ -43,7 +43,7 @@ security: false
|
|
|
43
43
|
name the symbol, state what changed, stop. Use a second sentence only when
|
|
44
44
|
it carries weight. If a bullet feels long, it is.
|
|
45
45
|
|
|
46
|
-
Cut: mechanism walkthroughs (those belong in JSDoc, AGENTS.md, or the
|
|
46
|
+
Cut: mechanism walkthroughs (those belong in JSDoc, CLAUDE.md/AGENTS.md, or the
|
|
47
47
|
relevant skill), ceremonial framings ("This release introduces…",
|
|
48
48
|
backwards-compat paragraphs), file-by-file test enumerations, internal
|
|
49
49
|
implementation notes. Prefer code/symbol names over English re-explanations.
|
|
@@ -24,5 +24,5 @@ export declare const browseRoutesTool: import("@cyanheads/mcp-ts-core").ToolDefi
|
|
|
24
24
|
readonly code: JsonRpcErrorCode.NotFound;
|
|
25
25
|
readonly when: "Path does not exist in the EIA taxonomy.";
|
|
26
26
|
readonly recovery: "Call eia_browse_routes without a path to see valid top-level categories.";
|
|
27
|
-
}]>;
|
|
27
|
+
}], undefined>;
|
|
28
28
|
//# sourceMappingURL=browse-routes.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browse-routes.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/browse-routes.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"browse-routes.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/browse-routes.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;cA2E3B,CAAC"}
|
|
@@ -30,5 +30,5 @@ export declare const dataframeDescribeTool: import("@cyanheads/mcp-ts-core").Too
|
|
|
30
30
|
readonly code: JsonRpcErrorCode.ServiceUnavailable;
|
|
31
31
|
readonly when: "DataCanvas service is not configured for this deployment.";
|
|
32
32
|
readonly recovery: "Set CANVAS_PROVIDER_TYPE=duckdb in the server environment to enable dataframes.";
|
|
33
|
-
}]>;
|
|
33
|
+
}], undefined>;
|
|
34
34
|
//# sourceMappingURL=dataframe-describe.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataframe-describe.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/dataframe-describe.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"dataframe-describe.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/dataframe-describe.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;cAqHhC,CAAC"}
|
|
@@ -18,5 +18,5 @@ export declare const dataframeDropTool: import("@cyanheads/mcp-ts-core").ToolDef
|
|
|
18
18
|
readonly code: JsonRpcErrorCode.ServiceUnavailable;
|
|
19
19
|
readonly when: "DataCanvas service is not configured for this deployment.";
|
|
20
20
|
readonly recovery: "Set CANVAS_PROVIDER_TYPE=duckdb in the server environment to enable dataframes.";
|
|
21
|
-
}]>;
|
|
21
|
+
}], undefined>;
|
|
22
22
|
//# sourceMappingURL=dataframe-drop.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataframe-drop.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/dataframe-drop.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,iBAAiB;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"dataframe-drop.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/dataframe-drop.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,iBAAiB;;;;;;;;;;cAkD5B,CAAC"}
|
|
@@ -15,8 +15,7 @@ export declare const dataframeQueryTool: import("@cyanheads/mcp-ts-core").ToolDe
|
|
|
15
15
|
row_limit: z.ZodDefault<z.ZodNumber>;
|
|
16
16
|
}, z.core.$strip>, z.ZodObject<{
|
|
17
17
|
columns: z.ZodArray<z.ZodString>;
|
|
18
|
-
|
|
19
|
-
rows: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
18
|
+
rows: z.ZodArray<z.ZodObject<{}, z.core.$loose>>;
|
|
20
19
|
registered_as: z.ZodOptional<z.ZodString>;
|
|
21
20
|
expires_at: z.ZodOptional<z.ZodString>;
|
|
22
21
|
}, z.core.$strip>, readonly [{
|
|
@@ -24,5 +23,9 @@ export declare const dataframeQueryTool: import("@cyanheads/mcp-ts-core").ToolDe
|
|
|
24
23
|
readonly code: JsonRpcErrorCode.ServiceUnavailable;
|
|
25
24
|
readonly when: "DataCanvas service is not configured for this deployment.";
|
|
26
25
|
readonly recovery: "Set CANVAS_PROVIDER_TYPE=duckdb in the server environment to enable dataframes.";
|
|
27
|
-
}]
|
|
26
|
+
}], {
|
|
27
|
+
readonly totalRows: z.ZodNumber;
|
|
28
|
+
readonly returnedRows: z.ZodNumber;
|
|
29
|
+
readonly notice: z.ZodOptional<z.ZodString>;
|
|
30
|
+
}>;
|
|
28
31
|
//# sourceMappingURL=dataframe-query.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataframe-query.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/dataframe-query.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"dataframe-query.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/dataframe-query.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;EAiJ7B,CAAC"}
|
|
@@ -47,11 +47,11 @@ export const dataframeQueryTool = tool('eia_dataframe_query', {
|
|
|
47
47
|
}),
|
|
48
48
|
output: z.object({
|
|
49
49
|
columns: z.array(z.string()).describe('Column names in projection order.'),
|
|
50
|
-
row_count: z
|
|
51
|
-
.number()
|
|
52
|
-
.describe('Total rows the query produced (may exceed rows.length when capped).'),
|
|
53
50
|
rows: z
|
|
54
|
-
.array(z
|
|
51
|
+
.array(z
|
|
52
|
+
.object({})
|
|
53
|
+
.passthrough()
|
|
54
|
+
.describe('A result row with dynamic keys matching the SQL projection columns.'))
|
|
55
55
|
.describe('Materialized rows, bounded by preview / row_limit.'),
|
|
56
56
|
registered_as: z
|
|
57
57
|
.string()
|
|
@@ -62,6 +62,16 @@ export const dataframeQueryTool = tool('eia_dataframe_query', {
|
|
|
62
62
|
.optional()
|
|
63
63
|
.describe('ISO 8601 expiry for the newly registered dataframe, when applicable.'),
|
|
64
64
|
}),
|
|
65
|
+
enrichment: {
|
|
66
|
+
totalRows: z
|
|
67
|
+
.number()
|
|
68
|
+
.describe('Total rows the query produced (may exceed rows.length when capped by row_limit).'),
|
|
69
|
+
returnedRows: z.number().describe('Rows included in this response.'),
|
|
70
|
+
notice: z
|
|
71
|
+
.string()
|
|
72
|
+
.optional()
|
|
73
|
+
.describe('Guidance when results are capped — shows how many rows were omitted.'),
|
|
74
|
+
},
|
|
65
75
|
async handler(input, ctx) {
|
|
66
76
|
const bridge = getCanvasBridge();
|
|
67
77
|
if (!bridge) {
|
|
@@ -81,9 +91,12 @@ export const dataframeQueryTool = tool('eia_dataframe_query', {
|
|
|
81
91
|
returned: result.rows.length,
|
|
82
92
|
registeredAs: meta?.tableName,
|
|
83
93
|
});
|
|
94
|
+
ctx.enrich({ totalRows: result.rowCount, returnedRows: result.rows.length });
|
|
95
|
+
if (result.rowCount > result.rows.length) {
|
|
96
|
+
ctx.enrich.notice(`Showing ${result.rows.length.toLocaleString()} of ${result.rowCount.toLocaleString()} rows — increase row_limit or use register_as to chain into a new dataframe.`);
|
|
97
|
+
}
|
|
84
98
|
return {
|
|
85
99
|
columns: result.columns,
|
|
86
|
-
row_count: result.rowCount,
|
|
87
100
|
rows: result.rows,
|
|
88
101
|
registered_as: meta?.tableName,
|
|
89
102
|
expires_at: meta?.expiresAt,
|
|
@@ -94,10 +107,6 @@ export const dataframeQueryTool = tool('eia_dataframe_query', {
|
|
|
94
107
|
if (result.registered_as) {
|
|
95
108
|
lines.push(`Registered as ${result.registered_as} (expires ${result.expires_at ?? 'unknown'}).`);
|
|
96
109
|
}
|
|
97
|
-
const cappedNote = result.row_count > result.rows.length
|
|
98
|
-
? ` (showing ${result.rows.length} of ${result.row_count})`
|
|
99
|
-
: '';
|
|
100
|
-
lines.push(`**${result.row_count} rows**${cappedNote}\n`);
|
|
101
110
|
if (result.rows.length === 0) {
|
|
102
111
|
lines.push('_No rows._');
|
|
103
112
|
return [{ type: 'text', text: lines.join('\n') }];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataframe-query.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/dataframe-query.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAE5E,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE;IAC5D,KAAK,EAAE,sBAAsB;IAC7B,WAAW,EACT,ioBAAioB;IACnoB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE;IAE/E,MAAM,EAAE;QACN;YACE,MAAM,EAAE,oBAAoB;YAC5B,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;YACzC,IAAI,EAAE,2DAA2D;YACjE,QAAQ,EAAE,iFAAiF;SAC5F;KACF;IAED,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CACP,2MAA2M,CAC5M;QACH,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,8KAA8K,CAC/K;QACH,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,KAAK,CAAC;aACV,QAAQ,EAAE;aACV,QAAQ,CACP,+IAA+I,CAChJ;QACH,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,KAAK,CAAC;aACV,OAAO,CAAC,IAAI,CAAC;aACb,QAAQ,CAAC,0EAA0E,CAAC;KACxF,CAAC;IAEF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QAC1E,
|
|
1
|
+
{"version":3,"file":"dataframe-query.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/dataframe-query.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,5 +54,5 @@ export declare const describeRouteTool: import("@cyanheads/mcp-ts-core").ToolDef
|
|
|
54
54
|
readonly retryable: true;
|
|
55
55
|
readonly when: "EIA rate limit hit during facet fan-out.";
|
|
56
56
|
readonly recovery: "Back off and retry; use a production EIA API key for higher rate limits.";
|
|
57
|
-
}]>;
|
|
57
|
+
}], undefined>;
|
|
58
58
|
//# sourceMappingURL=describe-route.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"describe-route.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/describe-route.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"describe-route.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/describe-route.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAoL5B,CAAC"}
|
|
@@ -28,8 +28,6 @@ export declare const queryRouteTool: import("@cyanheads/mcp-ts-core").ToolDefini
|
|
|
28
28
|
}, z.core.$strip>, z.ZodObject<{
|
|
29
29
|
route: z.ZodString;
|
|
30
30
|
data: z.ZodArray<z.ZodObject<{}, z.core.$loose>>;
|
|
31
|
-
total: z.ZodNumber;
|
|
32
|
-
returned_count: z.ZodNumber;
|
|
33
31
|
frequency: z.ZodString;
|
|
34
32
|
date_format: z.ZodString;
|
|
35
33
|
canvas_id: z.ZodOptional<z.ZodString>;
|
|
@@ -62,5 +60,10 @@ export declare const queryRouteTool: import("@cyanheads/mcp-ts-core").ToolDefini
|
|
|
62
60
|
readonly retryable: true;
|
|
63
61
|
readonly when: "EIA rate limit hit (OVER_RATE_LIMIT).";
|
|
64
62
|
readonly recovery: "Back off and retry; use a production EIA API key for higher rate limits.";
|
|
65
|
-
}]
|
|
63
|
+
}], {
|
|
64
|
+
readonly effectiveRoute: z.ZodString;
|
|
65
|
+
readonly totalCount: z.ZodNumber;
|
|
66
|
+
readonly returnedCount: z.ZodNumber;
|
|
67
|
+
readonly appliedFilters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
|
|
68
|
+
}>;
|
|
66
69
|
//# sourceMappingURL=query-route.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-route.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/query-route.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAIjE,eAAO,MAAM,cAAc
|
|
1
|
+
{"version":3,"file":"query-route.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/query-route.tool.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAIjE,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyVzB,CAAC"}
|
|
@@ -63,10 +63,6 @@ export const queryRouteTool = tool('eia_query_route', {
|
|
|
63
63
|
data: z
|
|
64
64
|
.array(z.object({}).passthrough().describe('A single data row with dynamic column keys.'))
|
|
65
65
|
.describe('Preview rows. All numeric values are strings per the EIA API (e.g. "9.13"). Cast to DOUBLE in SQL for arithmetic: CAST(value AS DOUBLE). Per-column units appear as {col}-units fields inline in each row. Keys are dynamic column IDs from the EIA route.'),
|
|
66
|
-
total: z.number().describe('Total matching rows in the EIA dataset.'),
|
|
67
|
-
returned_count: z
|
|
68
|
-
.number()
|
|
69
|
-
.describe('Rows in this response. When returned_count < total, use offset or canvas for the rest.'),
|
|
70
66
|
frequency: z.string().describe('Frequency of the returned data.'),
|
|
71
67
|
date_format: z.string().describe('Period format for the returned data (e.g. "YYYY-MM").'),
|
|
72
68
|
canvas_id: z
|
|
@@ -86,6 +82,29 @@ export const queryRouteTool = tool('eia_query_route', {
|
|
|
86
82
|
.optional()
|
|
87
83
|
.describe("Forwarded from EIA's warnings[] when the API warns of truncated results near the 5,000 per-page limit."),
|
|
88
84
|
}),
|
|
85
|
+
enrichment: {
|
|
86
|
+
effectiveRoute: z.string().describe('The route path that was queried.'),
|
|
87
|
+
totalCount: z.number().describe('Total matching rows in the EIA dataset.'),
|
|
88
|
+
returnedCount: z
|
|
89
|
+
.number()
|
|
90
|
+
.describe('Rows in this response. When returnedCount < totalCount, use offset or canvas for the rest.'),
|
|
91
|
+
appliedFilters: z
|
|
92
|
+
.record(z.string(), z.union([z.string(), z.array(z.string())]))
|
|
93
|
+
.optional()
|
|
94
|
+
.describe('Facet filters applied to the query, when provided.'),
|
|
95
|
+
},
|
|
96
|
+
enrichmentTrailer: {
|
|
97
|
+
appliedFilters: {
|
|
98
|
+
render: (filters) => {
|
|
99
|
+
if (!filters || Object.keys(filters).length === 0)
|
|
100
|
+
return null;
|
|
101
|
+
const entries = Object.entries(filters)
|
|
102
|
+
.map(([k, v]) => `- **${k}:** ${Array.isArray(v) ? v.join(', ') : v}`)
|
|
103
|
+
.join('\n');
|
|
104
|
+
return `**Applied Filters:**\n${entries}`;
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
},
|
|
89
108
|
errors: [
|
|
90
109
|
{
|
|
91
110
|
reason: 'route_not_found',
|
|
@@ -153,11 +172,19 @@ export const queryRouteTool = tool('eia_query_route', {
|
|
|
153
172
|
...ctx.recoveryFor('no_data'),
|
|
154
173
|
});
|
|
155
174
|
}
|
|
175
|
+
// Populate enrichment — reaches both structuredContent and content[] trailer.
|
|
176
|
+
ctx.enrich({
|
|
177
|
+
effectiveRoute: input.route,
|
|
178
|
+
totalCount: dataResp.total,
|
|
179
|
+
returnedCount: dataResp.data.length,
|
|
180
|
+
...(input.filters &&
|
|
181
|
+
Object.keys(input.filters).length > 0 && {
|
|
182
|
+
appliedFilters: input.filters,
|
|
183
|
+
}),
|
|
184
|
+
});
|
|
156
185
|
const result = {
|
|
157
186
|
route: input.route,
|
|
158
187
|
data: dataResp.data,
|
|
159
|
-
total: dataResp.total,
|
|
160
|
-
returned_count: dataResp.data.length,
|
|
161
188
|
frequency: dataResp.frequency,
|
|
162
189
|
date_format: dataResp.dateFormat,
|
|
163
190
|
};
|
|
@@ -209,8 +236,7 @@ export const queryRouteTool = tool('eia_query_route', {
|
|
|
209
236
|
format: (result) => {
|
|
210
237
|
const lines = [];
|
|
211
238
|
lines.push(`## Query: ${result.route}`);
|
|
212
|
-
lines.push(`**Frequency:** ${result.frequency} | **Date format:** ${result.date_format}`);
|
|
213
|
-
lines.push(`**Rows:** ${result.returned_count} of ${result.total} total\n`);
|
|
239
|
+
lines.push(`**Frequency:** ${result.frequency} | **Date format:** ${result.date_format}\n`);
|
|
214
240
|
if (result.canvas_preview_note) {
|
|
215
241
|
lines.push(`> ${result.canvas_preview_note}\n`);
|
|
216
242
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-route.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/query-route.tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"query-route.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/query-route.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,9 @@ export declare const searchRoutesTool: import("@cyanheads/mcp-ts-core").ToolDefi
|
|
|
18
18
|
isLeaf: z.ZodBoolean;
|
|
19
19
|
filter_hint: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
20
20
|
}, z.core.$strip>>;
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
}, z.core.$strip>, undefined, {
|
|
22
|
+
readonly effectiveQuery: z.ZodString;
|
|
23
|
+
readonly totalIndexed: z.ZodNumber;
|
|
24
|
+
readonly notice: z.ZodOptional<z.ZodString>;
|
|
25
|
+
}>;
|
|
23
26
|
//# sourceMappingURL=search-routes.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-routes.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-routes.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAGjD,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"search-routes.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-routes.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAGjD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;EAmH3B,CAAC"}
|
|
@@ -46,14 +46,26 @@ export const searchRoutesTool = tool('eia_search_routes', {
|
|
|
46
46
|
})
|
|
47
47
|
.describe('A search result entry.'))
|
|
48
48
|
.describe('Ranked matches, best first.'),
|
|
49
|
-
|
|
49
|
+
}),
|
|
50
|
+
enrichment: {
|
|
51
|
+
effectiveQuery: z.string().describe('Query as submitted to the Fuse.js index.'),
|
|
52
|
+
totalIndexed: z
|
|
50
53
|
.number()
|
|
51
54
|
.describe('Total entries in the search index (routes + STEO series names).'),
|
|
52
|
-
|
|
55
|
+
notice: z
|
|
56
|
+
.string()
|
|
57
|
+
.optional()
|
|
58
|
+
.describe('Recovery hint when no routes matched — suggests alternative queries or using eia_browse_routes.'),
|
|
59
|
+
},
|
|
53
60
|
async handler(input, ctx) {
|
|
54
61
|
ctx.log.info('Executing eia_search_routes', { query: input.query, limit: input.limit });
|
|
55
62
|
const service = getEiaApiService();
|
|
56
63
|
const { results, totalIndexed } = await service.search(input.query, input.limit, ctx);
|
|
64
|
+
ctx.enrich.echo(input.query);
|
|
65
|
+
ctx.enrich({ totalIndexed });
|
|
66
|
+
if (results.length === 0) {
|
|
67
|
+
ctx.enrich.notice(`No routes matched "${input.query}". Try different search terms or use eia_browse_routes to explore the taxonomy.`);
|
|
68
|
+
}
|
|
57
69
|
return {
|
|
58
70
|
results: results.map(({ entry, score }) => ({
|
|
59
71
|
route: entry.route,
|
|
@@ -63,17 +75,15 @@ export const searchRoutesTool = tool('eia_search_routes', {
|
|
|
63
75
|
isLeaf: entry.isLeaf,
|
|
64
76
|
...(entry.filter_hint !== undefined && { filter_hint: entry.filter_hint }),
|
|
65
77
|
})),
|
|
66
|
-
total_indexed: totalIndexed,
|
|
67
78
|
};
|
|
68
79
|
},
|
|
69
80
|
format: (result) => {
|
|
70
81
|
const lines = [];
|
|
71
82
|
if (result.results.length === 0) {
|
|
72
83
|
lines.push('No matching routes found. Try different search terms or browse with eia_browse_routes.');
|
|
73
|
-
lines.push(`\nIndex size: ${result.total_indexed} entries`);
|
|
74
84
|
return [{ type: 'text', text: lines.join('\n') }];
|
|
75
85
|
}
|
|
76
|
-
lines.push(`**${result.results.length} result(s)
|
|
86
|
+
lines.push(`**${result.results.length} result(s)**\n`);
|
|
77
87
|
for (const r of result.results) {
|
|
78
88
|
const tag = r.isLeaf ? '[leaf]' : '[cat]';
|
|
79
89
|
const weakMatch = r.score > 0.5 ? ' ⚠ weak match' : '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-routes.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-routes.tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,EAAE;IACxD,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EACT,ogBAAogB;IACtgB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE;IAEzD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,CAAC,uEAAuE,CAAC;QACpF,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,EAAE;aACL,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,EAAE,CAAC;aACP,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CAAC,iDAAiD,CAAC;KAC/D,CAAC;IAEF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC;aACP,KAAK,CACJ,CAAC;aACE,MAAM,CAAC;YACN,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,CAAC,wEAAwE,CAAC;YACrF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;YACvD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;YACtD,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,CAAC,8DAA8D,CAAC;YAC3E,MAAM,EAAE,CAAC;iBACN,OAAO,EAAE;iBACT,QAAQ,CACP,kFAAkF,CACnF;YACH,WAAW,EAAE,CAAC;iBACX,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;iBAC9B,QAAQ,EAAE;iBACV,QAAQ,CACP,oMAAoM,CACrM;SACJ,CAAC;aACD,QAAQ,CAAC,wBAAwB,CAAC,CACtC;aACA,QAAQ,CAAC,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"search-routes.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/search-routes.tool.ts"],"names":[],"mappings":"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"}
|
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",
|
|
@@ -25,7 +25,8 @@
|
|
|
25
25
|
"devcheck": "bun run scripts/devcheck.ts",
|
|
26
26
|
"audit:refresh": "rm -f bun.lock && bun install && bun audit",
|
|
27
27
|
"tree": "bun run scripts/tree.ts",
|
|
28
|
-
"format": "biome check --write
|
|
28
|
+
"format": "biome check --write .",
|
|
29
|
+
"format:unsafe": "biome check --write --unsafe .",
|
|
29
30
|
"lint:mcp": "bun run scripts/lint-mcp.ts",
|
|
30
31
|
"lint:packaging": "bun run scripts/lint-packaging.ts",
|
|
31
32
|
"bundle": "bun run build && npx -y @anthropic-ai/mcpb pack . dist/eia-energy-mcp-server.mcpb",
|
|
@@ -36,7 +37,8 @@
|
|
|
36
37
|
"start": "node dist/index.js",
|
|
37
38
|
"start:stdio": "MCP_TRANSPORT_TYPE=stdio node dist/index.js",
|
|
38
39
|
"start:http": "MCP_TRANSPORT_TYPE=http node dist/index.js",
|
|
39
|
-
"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"
|
|
40
42
|
},
|
|
41
43
|
"keywords": [
|
|
42
44
|
"eia",
|
|
@@ -88,9 +90,9 @@
|
|
|
88
90
|
"access": "public"
|
|
89
91
|
},
|
|
90
92
|
"dependencies": {
|
|
91
|
-
"@cyanheads/mcp-ts-core": "^0.9.
|
|
92
|
-
"@duckdb/node-api": "^1.5.3-r.
|
|
93
|
-
"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",
|
|
94
96
|
"pino-pretty": "^13.1.3",
|
|
95
97
|
"zod": "^4.4.3"
|
|
96
98
|
},
|
|
@@ -101,6 +103,6 @@
|
|
|
101
103
|
"ignore": "^7.0.5",
|
|
102
104
|
"tsc-alias": "^1.8.17",
|
|
103
105
|
"typescript": "^6.0.3",
|
|
104
|
-
"vitest": "^4.1.
|
|
106
|
+
"vitest": "^4.1.8"
|
|
105
107
|
}
|
|
106
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",
|