@carbonstopper/agent-mcp 0.1.16 → 0.1.18

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/README.md CHANGED
@@ -184,7 +184,11 @@ Only Agent-facing modeling, report generation/detail, factor search, and unit di
184
184
  | `modeling_account_detail` | Get structured account/model detail before editing. Requires `accountId`. |
185
185
  | `modeling_account_update_structured` | Update carbon account/model master information such as account name, product name, specification, functional unit, period, lifecycle scope, or account-level remark. Requires `accountId` and `idempotencyKey`. |
186
186
  | `modeling_emission_detail` | Get one emission source detail before a precise update. Requires `accountId` and `emissionId`. |
187
+ | `modeling_emission_add_structured` | Add one new emission source to an existing carbon account. Requires `accountId`, `idempotencyKey`, and `emissionSource`. |
188
+ | `modeling_emission_batch_add_structured` | Add multiple new emission sources to an existing carbon account in one transaction. Requires `accountId`, `idempotencyKey`, and `emissionSources`. |
187
189
  | `modeling_emission_update_structured` | Update one emission source under a carbon account, including source amount, unit, factor, transport, lifecycle stage, type, or source remark. Requires `accountId`, `emissionId`, and `idempotencyKey`. |
190
+ | `modeling_emission_batch_update_structured` | Update multiple emission sources under the same carbon account in one transaction. Requires `accountId`, `idempotencyKey`, and `emissionUpdates`. |
191
+ | `modeling_emission_delete_structured` | Delete one emission source under a carbon account after the Agent has identified the exact `emissionId`. Requires `accountId`, `emissionId`, and `idempotencyKey`. |
188
192
  | `modeling_execute_structured` | Create a new product carbon model from structured product, emission source, transport, and factor data. Requires `idempotencyKey`, `productName`, `unitName`, and `emissionSources`. |
189
193
  | `factor_search` | Search CCDB factors through the Agent factor endpoint. Supports one keyword per call. |
190
194
  | `unit_list` | Get the Agent unit dictionary for structured modeling. |
@@ -210,7 +214,11 @@ Use the product carbon modeling tools as follows:
210
214
  - `modeling_account_detail`: get the latest structured model detail before an Agent edits existing data.
211
215
  - `modeling_account_update_structured`: update only carbon account/model master information, not emission source activity data.
212
216
  - `modeling_emission_detail`: inspect one emission source before a precise structured update.
217
+ - `modeling_emission_add_structured`: add exactly one new emission source to an existing account.
218
+ - `modeling_emission_batch_add_structured`: add several new emission sources together; the backend rolls back the whole batch if any item fails.
213
219
  - `modeling_emission_update_structured`: update one emission source under a carbon account, including factor or transport list.
220
+ - `modeling_emission_batch_update_structured`: update several existing emission sources together; every item must include `emissionId`, and the backend rolls back the whole batch if any item fails.
221
+ - `modeling_emission_delete_structured`: delete one emission source only after the Agent has identified the exact target emission source and the user has explicitly asked to remove it.
214
222
  - `modeling_execute_structured`: create a new model only after the Agent has extracted structured product data, emission sources, transport legs, and factor selections. Attach routine material or packaging transport to the parent emission source's `transport[]`; do not create a separate transport source unless the user explicitly asks for a standalone logistics activity.
215
223
  - `unit_list`: query available units before `modeling_execute_structured`, then use returned `dictLabel` values as `unitName`.
216
224
 
@@ -330,6 +338,91 @@ Use this before changing one emission source.
330
338
  }
331
339
  ```
332
340
 
341
+ ### `modeling_emission_add_structured`
342
+
343
+ Use this when the user wants to add one new emission source to an existing carbon account. The `emissionSource` object uses the same structure as `modeling_execute_structured.emissionSources[]`.
344
+
345
+ ```json
346
+ {
347
+ "sessionId": "agent_xxx",
348
+ "messageId": "msg_xxx",
349
+ "traceId": "langgraph_run_xxx",
350
+ "taskId": "emission_add_node",
351
+ "accountId": 2001,
352
+ "idempotencyKey": "agent_xxx_emission_add_v1",
353
+ "emissionSource": {
354
+ "name": "Additional recycled polyester",
355
+ "stage": "MATERIAL",
356
+ "type": "4",
357
+ "amount": "12",
358
+ "unitName": "kg",
359
+ "factor": {
360
+ "sourceType": "library",
361
+ "factorId": 1381768211166976,
362
+ "reason": "Best match for recycled polyester"
363
+ },
364
+ "transport": [
365
+ {
366
+ "name": "Supplier to factory road transport",
367
+ "transportType": "1",
368
+ "way": "1",
369
+ "amount": "12",
370
+ "unitName": "kg",
371
+ "distance": "300",
372
+ "distUnitName": "km",
373
+ "factor": {
374
+ "sourceType": "library",
375
+ "factorId": 1584418899325440,
376
+ "reason": "Truck freight factor"
377
+ }
378
+ }
379
+ ],
380
+ "remark": "Added after user provided supplemental material data"
381
+ }
382
+ }
383
+ ```
384
+
385
+ ### `modeling_emission_batch_add_structured`
386
+
387
+ Use this when the user wants to add multiple new emission sources to the same existing carbon account. All emission sources are committed in one transaction; if any source fails validation, the backend rolls back the whole batch.
388
+
389
+ ```json
390
+ {
391
+ "sessionId": "agent_xxx",
392
+ "messageId": "msg_xxx",
393
+ "traceId": "langgraph_run_xxx",
394
+ "taskId": "emission_batch_add_node",
395
+ "accountId": 2001,
396
+ "idempotencyKey": "agent_xxx_emission_batch_add_v1",
397
+ "emissionSources": [
398
+ {
399
+ "name": "Additional municipal electricity",
400
+ "stage": "PRODUCT",
401
+ "type": "5",
402
+ "amount": "120",
403
+ "unitName": "kWh",
404
+ "factor": {
405
+ "sourceType": "library",
406
+ "factorId": 123456789,
407
+ "reason": "Grid electricity factor"
408
+ }
409
+ },
410
+ {
411
+ "name": "Additional PE bag",
412
+ "stage": "MATERIAL",
413
+ "type": "3",
414
+ "amount": "3.5",
415
+ "unitName": "kg",
416
+ "factor": {
417
+ "sourceType": "library",
418
+ "factorId": 987654321,
419
+ "reason": "PE packaging factor"
420
+ }
421
+ }
422
+ ]
423
+ }
424
+ ```
425
+
333
426
  ### `modeling_emission_update_structured`
334
427
 
335
428
  Use this for precise changes to one emission source under a carbon account. Include only fields that should change. Do not use it for account name, product name, functional unit, accounting period, or lifecycle boundary changes.
@@ -349,6 +442,11 @@ Use this for precise changes to one emission source under a carbon account. Incl
349
442
  "factor": {
350
443
  "sourceType": "library",
351
444
  "factorId": 1381768211166976,
445
+ "name": "Polyester fiber",
446
+ "factor": "2.1",
447
+ "unit": "kgCO2e/kg",
448
+ "institution": "CCDB",
449
+ "year": "2025",
352
450
  "reason": "Best match for polyester fiber"
353
451
  },
354
452
  "transportAction": "replace",
@@ -365,6 +463,11 @@ Use this for precise changes to one emission source under a carbon account. Incl
365
463
  "factor": {
366
464
  "sourceType": "library",
367
465
  "factorId": 1584418899325440,
466
+ "name": "Truck freight",
467
+ "factor": "0.28948",
468
+ "unit": "kgCO2e/tkm",
469
+ "institution": "CCDB",
470
+ "year": "2025",
368
471
  "reason": "Truck freight factor"
369
472
  }
370
473
  }
@@ -387,10 +490,68 @@ Emission update field rules:
387
490
  - `amount`: activity data amount for this emission source only.
388
491
  - `unitName`: activity data unit from `unit_list.factorUnitM[].dictLabel`, for example `kg`, `g`, `t`, `kWh`, `m3`, `件`.
389
492
  - `rate`: conversion ratio from activity unit to factor denominator unit, for example `g` to `kg` uses `0.001`.
390
- - `factor`: selected factor. Use `sourceType=library` and `factorId` for CCDB factors, or `sourceType=custom` with custom factor fields.
493
+ - `factor`: selected factor for normal non-transport sources. In update tools, if `factor` is supplied, library factors must include a full factor snapshot: `sourceType`, `factorId`, `name`, `factor`, `unit`, `institution`, and `year`. For `type=7` standalone transport sources, put the transport factor in `transport[].factor`, not in source-level `factor`.
391
494
  - `transport`: transport segments attached to this emission source. For material/packaging inbound transport, keep it here instead of creating a standalone transport source.
495
+ - If changing a source to `type=7`, also set `transportAction: "replace"` and provide a non-empty `transport[]`. Do not use `transportAction: "clear"` on a `type=7` source because standalone transport must keep at least one transport segment.
392
496
  - `remark`: source-level update reason or data quality note.
393
497
 
498
+ ### `modeling_emission_batch_update_structured`
499
+
500
+ Use this when the user wants to update multiple existing emission sources under the same carbon account. Call `modeling_account_detail` first to identify exact `emissionId` values. Every item in `emissionUpdates[]` must include `emissionId` and only the fields that should change. All updates are committed in one transaction; if any item fails, the backend rolls back the whole batch.
501
+
502
+ ```json
503
+ {
504
+ "sessionId": "agent_xxx",
505
+ "messageId": "msg_xxx",
506
+ "traceId": "langgraph_run_xxx",
507
+ "taskId": "emission_batch_update_node",
508
+ "accountId": 2001,
509
+ "idempotencyKey": "agent_xxx_emission_batch_update_v1",
510
+ "emissionUpdates": [
511
+ {
512
+ "emissionId": 4783583185526528,
513
+ "amount": "0.108",
514
+ "unitName": "kg",
515
+ "rate": "1",
516
+ "remark": "Updated material weight after user correction"
517
+ },
518
+ {
519
+ "emissionId": 4783583185788672,
520
+ "factor": {
521
+ "sourceType": "library",
522
+ "factorId": 1381768211166976,
523
+ "name": "Polyester fiber",
524
+ "factor": "2.1",
525
+ "unit": "kgCO2e/kg",
526
+ "institution": "CCDB",
527
+ "year": "2025",
528
+ "reason": "User requested a more specific polyester factor"
529
+ },
530
+ "remark": "Replaced factor after factor search"
531
+ }
532
+ ]
533
+ }
534
+ ```
535
+
536
+ ### `modeling_emission_delete_structured`
537
+
538
+ Use this only when the user explicitly asks to delete/remove one emission source, or confirms that a source is duplicate, wrong, or outside the accounting boundary. Before deleting, call `modeling_account_detail` to identify the exact source and `emissionId`. If the target is ambiguous, ask the user to confirm instead of guessing.
539
+
540
+ Do not use this tool to clear only transport data. To remove transport from a source while keeping the source, call `modeling_emission_update_structured` with `transportAction: "clear"`.
541
+
542
+ ```json
543
+ {
544
+ "sessionId": "agent_xxx",
545
+ "messageId": "msg_xxx",
546
+ "traceId": "langgraph_run_xxx",
547
+ "taskId": "emission_delete_node",
548
+ "accountId": 2001,
549
+ "emissionId": 4783583185526528,
550
+ "idempotencyKey": "agent_xxx_emission_delete_v1",
551
+ "reason": "User confirmed this duplicated packaging source should be removed"
552
+ }
553
+ ```
554
+
394
555
  ### `modeling_execute_structured`
395
556
 
396
557
  ```json
@@ -457,7 +618,11 @@ Transport modeling rules:
457
618
 
458
619
  - For raw materials, auxiliary materials, packaging materials, recycled materials, and other transported inputs, put supplier-to-factory or inbound transport in that source's `transport[]`.
459
620
  - Do not create a separate `type: "7"` emission source for routine inbound transport that belongs to a specific material or packaging source.
460
- - Create a standalone `type: "7"` transport emission source only when the user explicitly asks to model an independent transport/logistics activity that cannot be attributed to one specific source.
621
+ - Create a standalone `type: "7"`, `type: "TRANS"`, or `type: "TRANSPORT"` emission source only when the user explicitly asks to model an independent transport/logistics activity that cannot be attributed to one specific source.
622
+ - For a standalone transport source, the source itself is only a transport container. Do not put the transport factor in source-level `factor`; provide a non-empty `transport[]` and put `transportType`, `way`, `distance`, amount/unit, and `factor` in each transport segment.
623
+ - Preferred standard structure: use `emissionSources[].transport[]` for transport legs. Each transport item should include `transportType`, `way`, `amount`, `unitName`, `distance`, and `factor`.
624
+ - Compatibility-only flat fields are also accepted on `emissionSources[]`: `transportType`, `transportWay`, `way`, `distance`, and `distUnitName`. When `type=TRANS/TRANSPORT/7` and `transport[]` is empty, the Java backend can fold these flat fields plus source-level `factor` into one transport segment. This is a fallback, not the recommended structure.
625
+ - Do not create a standalone transport source if distance, transported amount/unit, or transport factor is missing. Ask for missing data or record it as a risk instead.
461
626
  - Example: ABS plastic and its supplier-to-factory road freight should be one emission source with `type: "1"` and a nested `transport[]`, not two separate sources.
462
627
  - Good: `ABS plastic` uses `type: "1"` and contains `transport[]` for supplier-to-factory freight.
463
628
  - Bad: one `ABS plastic` source plus a separate `Domestic road transport` source with `type: "7"` for the same inbound freight.
@@ -465,7 +630,7 @@ Transport modeling rules:
465
630
  Structured dictionary values:
466
631
 
467
632
  - `stage`: `MATERIAL` raw material acquisition / 原材料获取, `PRODUCT` production manufacturing / 生产制造, `DISTRIBUTION` distribution and storage or transport / 分销和储存, `USE` product use / 产品使用, `WASTE_DISPOSAL` end-of-life disposal / 废弃处置. Backend lifecycle codes are also accepted: `0` raw material acquisition, `1` production manufacturing, `2` distribution and storage, `3` product use, `4` end-of-life disposal.
468
- - `type`: emission source type code. Use backend dictionary codes: `1` main material / 主料, `2` auxiliary material / 辅料, `3` packaging material / 包装材料, `4` recycled material / 再生材料, `5` energy consumption / 能耗, `6` water consumption / 水耗, `7` transport / 运输, `21` waste gas / 废气, `22` wastewater / 废水, `23` solid waste / 固体废弃物, `24` renewable waste / 可再生废料, `41` other / 其他. Use `7` only for standalone transport/logistics activities; routine material or packaging transport should stay under the parent source's `transport[]`.
633
+ - `type`: emission source type code. Use backend dictionary codes: `1` main material / 主料, `2` auxiliary material / 辅料, `3` packaging material / 包装材料, `4` recycled material / 再生材料, `5` energy consumption / 能耗, `6` water consumption / 水耗, `7` or `TRANS` or `TRANSPORT` transport / 运输, `21` waste gas / 废气, `22` wastewater / 废水, `23` solid waste / 固体废弃物, `24` renewable waste / 可再生废料, `41` other / 其他. Use transport type only for standalone transport/logistics activities; routine material or packaging transport should stay under the parent source's `transport[]`. A standalone transport source must have a non-empty `transport[]` unless using the compatibility-only flat fields.
469
634
  - `factor.sourceType`: `library` for a CCDB factor selected from `factor_search`; `custom` for a user-provided or Agent-provided custom factor.
470
635
  - `transport.transportType`: transport mode code. Use backend enum codes: `1` road transport / 道路运输, `2` railway transport / 铁路运输, `3` air transport / 航空运输, `4` water transport / 水路运输.
471
636
  - `transport.way`: transport calculation method code. Use backend enum codes: `1` WEIGHT / 按里程-产品重量, `2` WEIGHT_RATE / 按里程-载重比, `3` ENERGY / 按能耗.
@@ -639,4 +804,4 @@ CARBONSTOP_AGENT_BASE_URL > CARBONSTOP_BASE_URL > release build URL
639
804
 
640
805
  ## License
641
806
 
642
- MIT
807
+ MIT
package/dist/apipath.d.ts CHANGED
@@ -14,7 +14,11 @@ export declare const ModelingDetail: () => string;
14
14
  export declare const ModelingAccountDetail: () => string;
15
15
  export declare const ModelingAccountUpdateStructured: () => string;
16
16
  export declare const ModelingEmissionDetail: () => string;
17
+ export declare const ModelingEmissionAddStructured: () => string;
18
+ export declare const ModelingEmissionBatchAddStructured: () => string;
17
19
  export declare const ModelingEmissionUpdateStructured: () => string;
20
+ export declare const ModelingEmissionBatchUpdateStructured: () => string;
21
+ export declare const ModelingEmissionDeleteStructured: () => string;
18
22
  export declare const ReportGenerate: () => string;
19
23
  export declare const ReportDetail: () => string;
20
24
  export declare const AnalysisRun: () => string;
package/dist/apipath.js CHANGED
@@ -17,7 +17,11 @@ export const ModelingDetail = () => `${footprint3Prefix}/agent/internal/skills/m
17
17
  export const ModelingAccountDetail = () => `${footprint3Prefix}/agent/internal/skills/modeling/account/detail`;
18
18
  export const ModelingAccountUpdateStructured = () => `${footprint3Prefix}/agent/internal/skills/modeling/account/updateStructured`;
19
19
  export const ModelingEmissionDetail = () => `${footprint3Prefix}/agent/internal/skills/modeling/emission/detail`;
20
+ export const ModelingEmissionAddStructured = () => `${footprint3Prefix}/agent/internal/skills/modeling/emission/addStructured`;
21
+ export const ModelingEmissionBatchAddStructured = () => `${footprint3Prefix}/agent/internal/skills/modeling/emission/batchAddStructured`;
20
22
  export const ModelingEmissionUpdateStructured = () => `${footprint3Prefix}/agent/internal/skills/modeling/emission/updateStructured`;
23
+ export const ModelingEmissionBatchUpdateStructured = () => `${footprint3Prefix}/agent/internal/skills/modeling/emission/batchUpdateStructured`;
24
+ export const ModelingEmissionDeleteStructured = () => `${footprint3Prefix}/agent/internal/skills/modeling/emission/deleteStructured`;
21
25
  export const ReportGenerate = () => `${footprint3Prefix}/agent/internal/skills/report/generate`;
22
26
  export const ReportDetail = () => `${footprint3Prefix}/agent/internal/skills/report/detail`;
23
27
  export const AnalysisRun = () => `${footprint3Prefix}/agent/internal/skills/analysis/run`;
@@ -1 +1 @@
1
- {"version":3,"file":"apipath.js","sourceRoot":"","sources":["../src/apipath.ts"],"names":[],"mappings":"AAAA,MAAM,QAAQ,GAAG,KAAK,CAAC;AACvB,MAAM,gBAAgB,GAAG,aAAa,CAAC;AACvC,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAEvC,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,GAAG,QAAQ,yCAAyC,CAAC;AACzF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,GAAG,QAAQ,6CAA6C,CAAC;AAC/F,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,GAAG,QAAQ,+CAA+C,CAAC;AACnG,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE,CAAC,GAAG,QAAQ,kDAAkD,CAAC;AACzG,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,GAAG,QAAQ,mCAAmC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC;AAC/I,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,GAAG,QAAQ,mCAAmC,kBAAkB,CAAC,MAAM,CAAC,cAAc,CAAC;AACnJ,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,EAAE,CAAC,GAAG,QAAQ,4CAA4C,CAAC;AAErG,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,yCAAyC,CAAC;AAClG,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,yCAAyC,CAAC;AAClG,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,mDAAmD,CAAC;AACtH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,4CAA4C,CAAC;AACxG,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,wCAAwC,CAAC;AAChG,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,wCAAwC,CAAC;AAChG,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,gDAAgD,CAAC;AAC/G,MAAM,CAAC,MAAM,+BAA+B,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,0DAA0D,CAAC;AACnI,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,iDAAiD,CAAC;AACjH,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,2DAA2D,CAAC;AACrI,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,wCAAwC,CAAC;AAChG,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,sCAAsC,CAAC;AAC5F,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,qCAAqC,CAAC;AAC1F,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,sCAAsC,CAAC;AAC5F,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,yCAAyC,CAAC;AAClG,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,sCAAsC,CAAC;AACpG,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,GAAG,gBAAgB,oCAAoC,CAAC"}
1
+ {"version":3,"file":"apipath.js","sourceRoot":"","sources":["../src/apipath.ts"],"names":[],"mappings":"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"}
package/dist/baseurl.js CHANGED
@@ -1,3 +1,3 @@
1
1
  // Auto-generated at build time. Do not commit.
2
- export const encodedBaseURL = "";
2
+ export const encodedBaseURL = "https://gateway-base-test.carbonstop.com";
3
3
  //# sourceMappingURL=baseurl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"baseurl.js","sourceRoot":"","sources":["../src/baseurl.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"baseurl.js","sourceRoot":"","sources":["../src/baseurl.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,MAAM,CAAC,MAAM,cAAc,GAAW,0CAA0C,CAAC"}
package/dist/logger.d.ts CHANGED
@@ -5,4 +5,5 @@ export declare function truncateText(value: string, maxLength?: number): string;
5
5
  export declare function errorMessage(err: unknown): string;
6
6
  export declare function summarizeArgs(args: Record<string, unknown>): Record<string, unknown>;
7
7
  export declare function summarizeResponseBody(body: string, includePreview?: boolean): Record<string, unknown>;
8
+ export declare function responseBusinessError(body: string): boolean;
8
9
  export {};
package/dist/logger.js CHANGED
@@ -51,25 +51,55 @@ export function summarizeArgs(args) {
51
51
  taskId: args.taskId,
52
52
  runId: args.runId,
53
53
  accountId: args.accountId,
54
+ emissionId: args.emissionId,
55
+ modelId: args.modelId,
54
56
  reportId: args.reportId,
55
57
  fileId: args.fileId,
56
58
  filename: args.filename,
57
59
  sourcePath: args.sourcePath,
58
60
  idempotencyKeyPresent: typeof args.idempotencyKey === "string" && args.idempotencyKey.length > 0,
59
61
  });
60
- if (typeof args.name === "string") {
61
- summary.searchKeywordCount = 1;
62
+ const updateKeys = changedFieldKeys(args);
63
+ if (updateKeys.length > 0)
64
+ summary.updateKeys = updateKeys;
65
+ if (typeof args.reason === "string") {
66
+ summary.reasonLength = args.reason.length;
62
67
  if (shouldLogBody())
63
- summary.searchKeywordPreview = truncateText(args.name);
68
+ summary.reasonPreview = truncateText(args.reason);
64
69
  }
65
- else if (Array.isArray(args.name)) {
66
- summary.searchKeywordCount = args.name.length;
70
+ if (typeof args.accountName === "string") {
71
+ summary.accountNameLength = args.accountName.length;
72
+ if (shouldLogBody())
73
+ summary.accountNamePreview = truncateText(args.accountName);
67
74
  }
68
75
  if (typeof args.productName === "string") {
69
76
  summary.productNameLength = args.productName.length;
70
77
  if (shouldLogBody())
71
78
  summary.productNamePreview = truncateText(args.productName);
72
79
  }
80
+ if (typeof args.name === "string") {
81
+ summary.nameLength = args.name.length;
82
+ if (shouldLogBody())
83
+ summary.namePreview = truncateText(args.name);
84
+ }
85
+ if (typeof args.transportAction === "string") {
86
+ summary.transportAction = args.transportAction;
87
+ }
88
+ if (Array.isArray(args.transport)) {
89
+ summary.transportSegmentCount = args.transport.length;
90
+ }
91
+ if (isRecord(args.factor)) {
92
+ summary.factorSourceType = args.factor.sourceType;
93
+ summary.factorIdPresent = args.factor.factorId !== undefined && args.factor.factorId !== null;
94
+ }
95
+ if (typeof args.name === "string" && typeof args.lang === "string") {
96
+ summary.searchKeywordCount = 1;
97
+ if (shouldLogBody())
98
+ summary.searchKeywordPreview = truncateText(args.name);
99
+ }
100
+ else if (Array.isArray(args.name)) {
101
+ summary.searchKeywordCount = args.name.length;
102
+ }
73
103
  if (typeof args.unitName === "string") {
74
104
  summary.unitName = args.unitName;
75
105
  }
@@ -84,6 +114,19 @@ export function summarizeArgs(args) {
84
114
  summary.emissionSourceCount = args.emissionSources.length;
85
115
  Object.assign(summary, summarizeEmissionSources(args.emissionSources));
86
116
  }
117
+ if (isRecord(args.emissionSource)) {
118
+ summary.emissionSourceCount = 1;
119
+ Object.assign(summary, summarizeEmissionSources([args.emissionSource]));
120
+ }
121
+ if (Array.isArray(args.emissionUpdates)) {
122
+ summary.emissionUpdateCount = args.emissionUpdates.length;
123
+ summary.emissionUpdateIds = args.emissionUpdates
124
+ .filter(isRecord)
125
+ .map((item) => item.emissionId)
126
+ .filter((value) => value !== undefined && value !== null)
127
+ .slice(0, 20);
128
+ summary.emissionUpdateKeys = summarizeUpdateKeys(args.emissionUpdates);
129
+ }
87
130
  if (input) {
88
131
  summary.inputKeys = Object.keys(input);
89
132
  if (typeof input.content === "string") {
@@ -105,12 +148,28 @@ export function summarizeArgs(args) {
105
148
  }
106
149
  export function summarizeResponseBody(body, includePreview = false) {
107
150
  const summary = { bodyLength: body.length };
151
+ const parsedSummary = parseResponseSummary(body);
152
+ Object.assign(summary, parsedSummary);
108
153
  const preview = extractUsefulBodyPreview(body);
109
154
  if (includePreview || shouldLogBody()) {
110
155
  summary.bodyPreview = truncateText(preview);
111
156
  }
112
157
  return summary;
113
158
  }
159
+ export function responseBusinessError(body) {
160
+ const parsed = parseResponseSummary(body);
161
+ const code = parsed.businessCode;
162
+ if (typeof code === "number" && code >= 400)
163
+ return true;
164
+ if (typeof code === "string" && code !== "0" && code !== "200")
165
+ return true;
166
+ if (parsed.success === false)
167
+ return true;
168
+ const status = parsed.businessStatus;
169
+ if (typeof status === "string" && ["FAIL", "FAILED", "ERROR"].includes(status.toUpperCase()))
170
+ return true;
171
+ return false;
172
+ }
114
173
  function extractUsefulBodyPreview(body) {
115
174
  try {
116
175
  const parsed = JSON.parse(body);
@@ -126,6 +185,30 @@ function extractUsefulBodyPreview(body) {
126
185
  }
127
186
  return body;
128
187
  }
188
+ function parseResponseSummary(body) {
189
+ const summary = {};
190
+ try {
191
+ const parsed = JSON.parse(body);
192
+ if (!isRecord(parsed))
193
+ return summary;
194
+ const code = parsed.code ?? nestedValue(parsed, ["data", "code"]);
195
+ if (typeof code === "number" || typeof code === "string")
196
+ summary.businessCode = code;
197
+ const msg = parsed.msg ?? parsed.message ?? parsed.error ?? nestedValue(parsed, ["data", "message"]);
198
+ if (typeof msg === "string")
199
+ summary.businessMessage = truncateText(msg, 200);
200
+ const success = parsed.success ?? nestedValue(parsed, ["data", "success"]);
201
+ if (typeof success === "boolean")
202
+ summary.success = success;
203
+ const status = parsed.status ?? nestedValue(parsed, ["data", "status"]);
204
+ if (typeof status === "string")
205
+ summary.businessStatus = status;
206
+ }
207
+ catch {
208
+ // Not a JSON response.
209
+ }
210
+ return summary;
211
+ }
129
212
  function pickDefined(value) {
130
213
  const result = {};
131
214
  for (const [key, childValue] of Object.entries(value)) {
@@ -137,6 +220,32 @@ function pickDefined(value) {
137
220
  function isRecord(value) {
138
221
  return Boolean(value) && typeof value === "object" && !Array.isArray(value);
139
222
  }
223
+ function nestedValue(value, path) {
224
+ let current = value;
225
+ for (const key of path) {
226
+ if (!isRecord(current))
227
+ return undefined;
228
+ current = current[key];
229
+ }
230
+ return current;
231
+ }
232
+ function changedFieldKeys(args) {
233
+ const excluded = new Set([
234
+ "sessionId",
235
+ "messageId",
236
+ "traceId",
237
+ "taskId",
238
+ "runId",
239
+ "accountId",
240
+ "emissionId",
241
+ "modelId",
242
+ "reportId",
243
+ "projectId",
244
+ "idempotencyKey",
245
+ ]);
246
+ const keys = Object.keys(args).filter((key) => !excluded.has(key) && args[key] !== undefined && args[key] !== null);
247
+ return keys.length > 0 ? keys.sort() : [];
248
+ }
140
249
  function summarizeEmissionSources(value) {
141
250
  const stages = new Set();
142
251
  const types = new Set();
@@ -182,6 +291,18 @@ function summarizeEmissionSources(value) {
182
291
  factorIdCount++;
183
292
  }
184
293
  }
294
+ function summarizeUpdateKeys(value) {
295
+ const keys = new Set();
296
+ for (const item of value) {
297
+ if (!isRecord(item))
298
+ continue;
299
+ for (const key of changedFieldKeys(item)) {
300
+ keys.add(key);
301
+ }
302
+ }
303
+ const result = Array.from(keys).sort();
304
+ return result.length > 0 ? result.slice(0, 30) : undefined;
305
+ }
185
306
  function addString(values, value) {
186
307
  if (typeof value === "string" && value.trim()) {
187
308
  values.add(value.trim());
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAIvC,MAAM,YAAY,GAA6B;IAC7C,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,GAAG;CACZ,CAAC;AAEF,MAAM,OAAO,GAAG,sBAAsB,CAAC;AACvC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,SAAS,YAAY;IACnB,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IACzE,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QACzG,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,MAAM,CAAC;AACpD,CAAC;AAED,SAAS,SAAS,CAAC,KAAe;IAChC,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,KAAkC,EAAE,KAAa,EAAE,SAAkC,EAAE;IACzG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;QAAE,OAAO;IAE9B,MAAM,KAAK,GAAG;QACZ,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC9B,KAAK;QACL,KAAK;QACL,OAAO;QACP,OAAO,EAAE,OAAO;QAChB,GAAG,MAAM;KACV,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAa,EAAE,SAAS,GAAG,gBAAgB;IACtE,IAAI,KAAK,CAAC,MAAM,IAAI,SAAS;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAA6B;IACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5D,MAAM,OAAO,GAA4B,WAAW,CAAC;QACnD,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,qBAAqB,EAAE,OAAO,IAAI,CAAC,cAAc,KAAK,QAAQ,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;KACjG,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAE3D,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAC1C,IAAI,aAAa,EAAE;YAAE,OAAO,CAAC,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACpD,IAAI,aAAa,EAAE;YAAE,OAAO,CAAC,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACpD,IAAI,aAAa,EAAE;YAAE,OAAO,CAAC,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QACtC,IAAI,aAAa,EAAE;YAAE,OAAO,CAAC,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;QAC7C,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;IACjD,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;IACxD,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;QAClD,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC;IAChG,CAAC;IAED,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnE,OAAO,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAC/B,IAAI,aAAa,EAAE;YAAE,OAAO,CAAC,oBAAoB,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAChD,CAAC;IAED,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACnC,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC/B,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,wBAAwB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAChC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;QAC1D,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,eAAe;aAC7C,MAAM,CAAC,QAAQ,CAAC;aAChB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;aAC9B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;aACxD,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,kBAAkB,GAAG,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7C,IAAI,aAAa,EAAE;gBAAE,OAAO,CAAC,cAAc,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7C,IAAI,aAAa,EAAE;gBAAE,OAAO,CAAC,cAAc,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5E,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC;YACnF,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS;gBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,cAAc,GAAG,KAAK;IACxE,MAAM,OAAO,GAA4B,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACrE,MAAM,aAAa,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAC/C,IAAI,cAAc,IAAI,aAAa,EAAE,EAAE,CAAC;QACtC,OAAO,CAAC,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC;IACjC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,IAAI,GAAG;QAAE,OAAO,IAAI,CAAC;IACzD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAC5E,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC;IACrC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1G,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAY;IAC5C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC;YAC9E,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;gBACnE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,sDAAsD;IACxD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,OAAO,CAAC;QAEtC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAClE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;QAEtF,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QACrG,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO,CAAC,eAAe,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAE9E,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QAC3E,IAAI,OAAO,OAAO,KAAK,SAAS;YAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAE5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACxE,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,uBAAuB;IACzB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,KAA8B;IACjD,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;IAChF,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,WAAW,CAAC,KAA8B,EAAE,IAAc;IACjE,IAAI,OAAO,GAAY,KAAK,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO,SAAS,CAAC;QACzC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,gBAAgB,CAAC,IAA6B;IACrD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC;QACvB,WAAW;QACX,WAAW;QACX,SAAS;QACT,QAAQ;QACR,OAAO;QACP,WAAW;QACX,YAAY;QACZ,SAAS;QACT,UAAU;QACV,WAAW;QACX,gBAAgB;KACjB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC;IACpH,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAgB;IAChD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,IAAI,qBAAqB,GAAG,CAAC,CAAC;IAC9B,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,SAAS;QAC9B,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,qBAAqB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;YAC/C,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACvC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAAE,SAAS;gBACnC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACzC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;QACjB,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC;QACpC,aAAa,EAAE,WAAW,CAAC,KAAK,CAAC;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS,CAAC;QACjC,qBAAqB;QACrB,kBAAkB;QAClB,iBAAiB;QACjB,aAAa;KACd,CAAC,CAAC;IAEH,SAAS,WAAW,CAAC,MAAe;QAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO;QAC9B,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS;YAAE,kBAAkB,EAAE,CAAC;QAC1D,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ;YAAE,iBAAiB,EAAE,CAAC;QACxD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;YAAE,aAAa,EAAE,CAAC;IACjF,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAgB;IAC3C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,SAAS;QAC9B,KAAK,MAAM,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;IACvC,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED,SAAS,SAAS,CAAC,MAAmB,EAAE,KAAc;IACpD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,MAAmB;IACtC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC3B,CAAC"}
package/dist/server.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
2
  import { Client } from "./client.js";
3
- import { errorMessage, log, summarizeArgs, summarizeResponseBody } from "./logger.js";
3
+ import { errorMessage, log, responseBusinessError, summarizeArgs, summarizeResponseBody } from "./logger.js";
4
4
  import { schemas, descriptions, exposedToolNames, toolRoutes, buildBody, getSessionId, resolveRoutePath, buildFactorSearchBody, } from "./tools.js";
5
5
  import { Version } from "./version.js";
6
6
  export function assertConfig(config) {
@@ -71,8 +71,9 @@ export function createAgentMcpServer(config) {
71
71
  result = await client.post(path, sessionId, body);
72
72
  }
73
73
  const durationMs = Date.now() - startedAt;
74
- if (result.status < 200 || result.status >= 300) {
75
- log("warn", "tool_call_backend_error", {
74
+ const businessError = responseBusinessError(result.body);
75
+ if (result.status < 200 || result.status >= 300 || businessError) {
76
+ log("warn", businessError ? "tool_call_business_error" : "tool_call_backend_error", {
76
77
  tool: name,
77
78
  path,
78
79
  sessionId,
@@ -83,7 +84,7 @@ export function createAgentMcpServer(config) {
83
84
  durationMs,
84
85
  ...summarizeResponseBody(result.body, true),
85
86
  });
86
- return errorContent(`HTTP ${result.status}\n${result.body}`);
87
+ return errorContent(`${businessError ? "Business error" : `HTTP ${result.status}`}\n${result.body}`);
87
88
  }
88
89
  log("info", "tool_call_success", {
89
90
  tool: name,
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/tools.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { z } from "zod";
2
2
  export declare const schemas: Record<string, z.ZodObject<any> | undefined>;
3
- export declare const exposedToolNames: readonly ["modeling_re_modeling", "modeling_update", "modeling_detail", "modeling_account_detail", "modeling_account_update_structured", "modeling_emission_detail", "modeling_emission_update_structured", "modeling_execute_structured", "report_generate", "report_regenerate", "report_detail", "factor_search", "unit_list"];
3
+ export declare const exposedToolNames: readonly ["modeling_re_modeling", "modeling_update", "modeling_detail", "modeling_account_detail", "modeling_account_update_structured", "modeling_emission_detail", "modeling_emission_add_structured", "modeling_emission_batch_add_structured", "modeling_emission_update_structured", "modeling_emission_batch_update_structured", "modeling_emission_delete_structured", "modeling_execute_structured", "report_generate", "report_regenerate", "report_detail", "factor_search", "unit_list"];
4
4
  export declare const descriptions: Record<string, string>;
5
- export type BodyKind = "agentSkill" | "sessionContext" | "workspaceFile" | "multipartArtifact" | "factorSearch";
5
+ export type BodyKind = "agentSkill" | "sessionContext" | "workspaceFile" | "multipartArtifact" | "factorSearch" | "singleEmissionAdd";
6
6
  export type RoutePath = string | ((args: Record<string, unknown>) => string);
7
7
  export interface ToolRoute {
8
8
  method: "POST";
package/dist/tools.js CHANGED
@@ -85,12 +85,17 @@ const emissionSourceSchema = z.object({
85
85
  clientSourceId: z.string().optional().describe("Agent-side temporary emission source id for troubleshooting and idempotency diagnostics."),
86
86
  name: z.string().min(1).describe("Emission source name, such as plastic, electricity, packaging, energy, water, or a standalone transport activity."),
87
87
  stage: z.string().min(1).describe("Lifecycle stage dictionary value. Prefer these values: MATERIAL=原材料获取, PRODUCT=生产制造, DISTRIBUTION=分销和储存/运输, USE=产品使用, WASTE_DISPOSAL=废弃处置. Backend lifecycle codes are also accepted: 0=原材料获取, 1=生产制造, 2=分销和储存, 3=产品使用, 4=废弃处置."),
88
- type: z.string().min(1).describe("Emission source type code. Use backend dictionary codes: 1=主料, 2=辅料, 3=包装材料, 4=再生材料, 5=能耗, 6=水耗, 7=运输, 21=废气, 22=废水, 23=固体废弃物, 24=可再生废料, 41=其他. Important: type=7 is only for a standalone transport/logistics activity. For inbound transport of a material, auxiliary material, packaging material, or recycled material, keep the parent source type as 1/2/3/4 and put transport legs in that source's transport[] field. Example: ABS plastic with supplier-to-factory freight should be type=1 with nested transport[], not a separate type=7 source."),
88
+ type: z.string().min(1).describe("Emission source type code. Use backend dictionary codes: 1=主料, 2=辅料, 3=包装材料, 4=再生材料, 5=能耗, 6=水耗, 7/TRANS/TRANSPORT=运输, 21=废气, 22=废水, 23=固体废弃物, 24=可再生废料, 41=其他. Important: type=7/TRANS/TRANSPORT is only for a standalone transport/logistics activity. For inbound transport of a material, auxiliary material, packaging material, or recycled material, keep the parent source type as 1/2/3/4 and put transport legs in that source's transport[] field. Example: ABS plastic with supplier-to-factory freight should be type=1 with nested transport[], not a separate type=7 source."),
89
89
  amount: z.string().min(1).describe("Activity data amount."),
90
90
  unitName: z.string().min(1).describe("Activity data unit name. Must be selected from unit_list.factorUnitM[].dictLabel. Emission sources can use the full unit dictionary, for example g, kg, t, kWh, m3, piece, or other standard units returned by unit_list."),
91
91
  rate: z.string().optional().describe("Optional unit conversion ratio from activity data unitName to the selected factor denominator unit. Use a confirmed conversion ratio; omit when uncertain so the backend can infer or validate it."),
92
- factor: factorSchema.describe("Selected factor. For a CCDB factor, pass sourceType=library and factorId. For a custom factor, pass sourceType=custom plus name/factor/unit/institution/year."),
93
- transport: z.array(transportSchema).optional().describe("Transport segments attached to this specific emission source. Prefer this field for supplier-to-factory or inbound transport of raw materials, auxiliary materials, packaging, recycled materials, and other transported inputs. Do not create a separate type=7 transport emission source for routine inbound transport that belongs to a specific material or packaging source. Only create a separate emission source with type=7 when the user explicitly asks to model an independent transport/logistics activity that cannot be attributed to one source. Example: put ABS plastic supplier-to-factory road transport inside the ABS plastic source's transport[]."),
92
+ factor: factorSchema.optional().describe("Selected factor for this emission source. Required for normal non-transport sources. For type=7 standalone transport sources, do not put the transport factor here; put it inside transport[].factor because the type=7 source itself is only a transport container."),
93
+ transportType: z.string().optional().describe("Compatibility-only flat transport mode for type=7/TRANS/TRANSPORT when transport[] is omitted. Prefer transport[].transportType. Supports road/railway/air/water or 1-4."),
94
+ transportWay: z.string().optional().describe("Compatibility-only flat transport calculation method for type=7/TRANS/TRANSPORT when transport[] is omitted. Prefer transport[].way. Supports weight/weight_rate/energy or 1-3."),
95
+ way: z.string().optional().describe("Compatibility-only alias of transportWay for type=7/TRANS/TRANSPORT when transport[] is omitted. Prefer transport[].way."),
96
+ distance: z.string().optional().describe("Compatibility-only flat transport distance for type=7/TRANS/TRANSPORT when transport[] is omitted. Prefer transport[].distance."),
97
+ distUnitName: z.string().optional().describe("Compatibility-only flat transport distance unit for type=7/TRANS/TRANSPORT when transport[] is omitted. Prefer transport[].distUnitName. Use kilometer/公里."),
98
+ transport: z.array(transportSchema).optional().describe("Transport segments attached to this specific emission source. Prefer this field for supplier-to-factory or inbound transport of raw materials, auxiliary materials, packaging, recycled materials, and other transported inputs. Do not create a separate type=7 transport emission source for routine inbound transport that belongs to a specific material or packaging source. Only create a separate emission source with type=7 when the user explicitly asks to model an independent transport/logistics activity that cannot be attributed to one source. For type=7, transport[] is required and must contain at least one segment with transportType, way, distance, amount/unitName, and factor. Example: put ABS plastic supplier-to-factory road transport inside the ABS plastic source's transport[]; create type=7 only for independent logistics."),
94
99
  remark: z.string().optional().describe("Emission source remark."),
95
100
  });
96
101
  const accountUpdateStructuredSchema = z.object({
@@ -119,6 +124,11 @@ const emissionUpdateStructuredSchema = emissionSourceSchema
119
124
  unitName: true,
120
125
  rate: true,
121
126
  factor: true,
127
+ transportType: true,
128
+ transportWay: true,
129
+ way: true,
130
+ distance: true,
131
+ distUnitName: true,
122
132
  transport: true,
123
133
  remark: true,
124
134
  })
@@ -127,12 +137,17 @@ const emissionUpdateStructuredSchema = emissionSourceSchema
127
137
  clientSourceId: z.string().optional().describe("Agent-side temporary id for this update request. Optional, only for troubleshooting/idempotency diagnostics; not a backend emission id."),
128
138
  name: z.string().optional().describe("排放源名称。仅当用户要求修改该单条排放源名称时传,例如 再生涤纶面料、市政电、环保PE胶袋。不要用于修改核算名称。"),
129
139
  stage: z.string().optional().describe("该排放源所属生命周期阶段。可传代码或英文枚举:0/MATERIAL=原材料获取,1/PRODUCT=生产制造,2/DISTRIBUTION=分销和储存,3/USE=产品使用,4/WASTE_DISPOSAL=废弃处置。"),
130
- type: z.string().optional().describe("排放源类型代码。1=主料,2=辅料,3=包装材料,4=再生材料,5=能耗,6=水耗,7=运输,21=废气,22=废水,23=固体废弃物,24=可再生废料,41=其他。原材料/包装的入厂运输不要改成 type=7,应放在该排放源 transport[]。"),
140
+ type: z.string().optional().describe("排放源类型代码。1=主料,2=辅料,3=包装材料,4=再生材料,5=能耗,6=水耗,7/TRANS/TRANSPORT=运输,21=废气,22=废水,23=固体废弃物,24=可再生废料,41=其他。原材料/包装的入厂运输不要改成 type=7,应放在该排放源 transport[]。只有独立物流/运输活动才使用 type=7;改成 type=7 时必须同时传 transportAction=replace 和非空 transport[]。"),
131
141
  amount: z.string().optional().describe("该排放源的活动数据数量,例如 0.105、4345、50。只表示当前 emissionId 对应排放源的数量,不是核算功能单位数量。"),
132
142
  unitName: z.string().optional().describe("该排放源的活动数据单位。必须来自 unit_list.factorUnitM[].dictLabel,例如 kg、g、t、kWh、m3、件。修改单位时通常也要确认 rate。"),
133
143
  rate: z.string().optional().describe("活动数据单位到所选因子分母单位的换算比例。例如活动数据是 g、因子是 kgCO2e/kg 时 rate=0.001;活动数据是 kg、因子是 kgCO2e/kg 时 rate=1。不确定时可省略让后端校验/推断。"),
134
- factor: factorSchema.optional().describe("该排放源使用的因子。库内因子传 sourceType=libraryfactorId;自定义因子传 sourceType=custom、name、factor、unit、institution、year。修改因子前建议先用 factor_search 查询。"),
135
- transport: z.array(transportSchema).optional().describe("该排放源下的运输段列表。原材料、辅料、包装、再生材料等入厂运输应放这里。只有 transportAction=replace 时,本字段会整体替换原运输;transportAction=clear 时不需要传;transportAction=keep 时通常省略。"),
144
+ factor: factorSchema.optional().describe("该排放源使用的因子。修改场景下如果传 factor,库内因子也必须给完整因子快照:sourceType=libraryfactorId、name、factor、unit、institution、year;自定义因子传 sourceType=custom、name、factor、unit、institution、year。修改因子前建议先用 factor_search 查询,并把选中结果里的因子字段带回来。"),
145
+ transportType: z.string().optional().describe("兼容扁平字段。仅当 type=7/TRANS/TRANSPORT transport[] 为空时,后端会把它折成一条运输段。推荐使用 transport[].transportType。"),
146
+ transportWay: z.string().optional().describe("兼容扁平字段。仅当 type=7/TRANS/TRANSPORT 且 transport[] 为空时,后端会把它折成一条运输段。推荐使用 transport[].way。"),
147
+ way: z.string().optional().describe("transportWay 的兼容别名。推荐使用 transport[].way。"),
148
+ distance: z.string().optional().describe("兼容扁平字段。仅当 type=7/TRANS/TRANSPORT 且 transport[] 为空时,作为运输距离。推荐使用 transport[].distance。"),
149
+ distUnitName: z.string().optional().describe("兼容扁平字段。仅当 type=7/TRANS/TRANSPORT 且 transport[] 为空时,作为运输距离单位。推荐使用 transport[].distUnitName。"),
150
+ transport: z.array(transportSchema).optional().describe("该排放源下的运输段列表。原材料、辅料、包装、再生材料等入厂运输应放这里。只有 transportAction=replace 时,本字段会整体替换原运输;transportAction=clear 时不需要传;transportAction=keep 时通常省略。若该排放源是 type=7 独立运输,transport[] 必须至少包含一条运输段,不能清空。"),
136
151
  remark: z.string().optional().describe("该单条排放源的备注、修改原因或数据质量说明。不要写核算整体备注。"),
137
152
  transportAction,
138
153
  })
@@ -178,6 +193,20 @@ export const schemas = {
178
193
  accountId: longId.describe("Product carbon account id"),
179
194
  emissionId: longId.describe("Emission source id to inspect before a structured update"),
180
195
  }),
196
+ modeling_emission_add_structured: z.object({
197
+ sessionId,
198
+ ...skillTraceFields,
199
+ accountId: longId.describe("Product carbon account id to add one emission source into"),
200
+ idempotencyKey,
201
+ emissionSource: emissionSourceSchema.describe("One new emission source to append to the existing account. Use the same structure as modeling_execute_structured.emissionSources[]. For normal non-transport sources, factor is required. For type=7/TRANS/TRANSPORT standalone transport, use a non-empty transport[] with transport[].factor."),
202
+ }),
203
+ modeling_emission_batch_add_structured: z.object({
204
+ sessionId,
205
+ ...skillTraceFields,
206
+ accountId: longId.describe("Product carbon account id to add emission sources into"),
207
+ idempotencyKey,
208
+ emissionSources: z.array(emissionSourceSchema).min(1).describe("New emission sources to append to the existing account. All items are committed in one transaction; if any item fails validation, the backend rolls back the whole batch. Use the same structure as modeling_execute_structured.emissionSources[]."),
209
+ }),
181
210
  modeling_emission_update_structured: z.object({
182
211
  sessionId,
183
212
  ...skillTraceFields,
@@ -186,6 +215,23 @@ export const schemas = {
186
215
  idempotencyKey,
187
216
  ...emissionUpdateStructuredSchema.shape,
188
217
  }),
218
+ modeling_emission_batch_update_structured: z.object({
219
+ sessionId,
220
+ ...skillTraceFields,
221
+ accountId: longId.describe("Product carbon account id whose emission sources should be updated"),
222
+ idempotencyKey,
223
+ emissionUpdates: z.array(emissionUpdateStructuredSchema.extend({
224
+ emissionId: longId.describe("Emission source id to update. The Agent should get this from modeling_account_detail or modeling_emission_detail, not guess it."),
225
+ })).min(1).describe("Patch updates for multiple emission sources under the same account. Each item must include emissionId and only the fields that should change. The backend commits all updates in one transaction; if any item fails, the whole batch rolls back."),
226
+ }),
227
+ modeling_emission_delete_structured: z.object({
228
+ sessionId,
229
+ ...skillTraceFields,
230
+ accountId: longId.describe("Product carbon account id that owns the emission source to delete"),
231
+ emissionId: longId.describe("Emission source id to delete. The Agent should get this from modeling_account_detail or modeling_emission_detail, not guess it."),
232
+ idempotencyKey,
233
+ reason: z.string().optional().describe("Reason for deleting this emission source, such as user confirmation that the source is out of scope or duplicated. Include a concise reason when available."),
234
+ }),
189
235
  modeling_execute_structured: z.object({
190
236
  sessionId,
191
237
  ...skillTraceFields,
@@ -200,7 +246,7 @@ export const schemas = {
200
246
  scopeValue: z.string().optional().describe("自定义生命周期阶段,逗号分隔:0=原材料获取,1=生产制造,2=分销和储存,3=产品使用,4=废弃处置。scope=2 时必填。"),
201
247
  startDate: z.string().optional().describe("Accounting period start date, format yyyy-MM-dd. Defaults to current year January 1."),
202
248
  endDate: z.string().optional().describe("Accounting period end date, format yyyy-MM-dd. Defaults to current year December 31."),
203
- emissionSources: z.array(emissionSourceSchema).min(1).describe("Structured emission source list extracted by the Agent. At least one source is required. When a source has related transport, attach transport legs to that source's transport[] instead of creating a separate transport source, unless the user explicitly wants a standalone transport/logistics activity. Example: one ABS plastic source can include its factor and transport[] road freight legs."),
249
+ emissionSources: z.array(emissionSourceSchema).min(1).describe("Structured emission source list extracted by the Agent. At least one source is required. When a source has related transport, attach transport legs to that source's transport[] instead of creating a separate transport source, unless the user explicitly wants a standalone transport/logistics activity. For normal non-transport sources, factor is required. For type=7/TRANS/TRANSPORT standalone transport sources, the source itself is only a transport container: omit source.factor and provide a non-empty transport[] with each transport segment's factor. Compatibility flat fields transportType/transportWay/way/distance/distUnitName are allowed only as fallback when transport[] is omitted, but transport[] is preferred. Example: one ABS plastic source can include its factor and transport[] road freight legs."),
204
250
  }),
205
251
  report_generate: z.object({
206
252
  sessionId,
@@ -261,7 +307,11 @@ export const exposedToolNames = [
261
307
  "modeling_account_detail",
262
308
  "modeling_account_update_structured",
263
309
  "modeling_emission_detail",
310
+ "modeling_emission_add_structured",
311
+ "modeling_emission_batch_add_structured",
264
312
  "modeling_emission_update_structured",
313
+ "modeling_emission_batch_update_structured",
314
+ "modeling_emission_delete_structured",
265
315
  "modeling_execute_structured",
266
316
  "report_generate",
267
317
  "report_regenerate",
@@ -277,8 +327,12 @@ export const descriptions = {
277
327
  modeling_account_detail: "Get structured product carbon account detail before inspecting or updating model data. This is the structured alias of modeling_detail. Use this first when the user wants to review or modify an existing model. Calls /modeling/account/detail. Requires accountId.",
278
328
  modeling_account_update_structured: "Update structured carbon account/model master information only: accountName, productName, specification, functional unit amount/unitName, accounting period, lifecycle scope, or account-level remark. Do not use this for emission source activity data, source factor, source unit, or source transport changes. Do not call this tool if there is no explicit account/master-data field to change. Call modeling_account_detail first if current values are needed. Calls /modeling/account/updateStructured. Requires accountId and idempotencyKey.",
279
329
  modeling_emission_detail: "Get one emission source detail before making a precise structured emission update. Use this when the user wants to change a specific material, energy source, packaging item, factor, or transport segment. Calls /modeling/emission/detail. Requires accountId and emissionId.",
280
- modeling_emission_update_structured: "Update one emission source under an existing carbon account using structured fields. Use this for precise changes to that source's name, lifecycle stage, type, activity amount, activity unitName, conversion rate, factor, transport segments, or source remark. Do not use it for accountName, productName, functional unit, accounting period, or lifecycle boundary changes. Do not call this tool if there is no explicit emission-source field to change. Include only fields that should change. For transport changes, set transportAction: keep, replace, or clear. Calls /modeling/emission/updateStructured. Requires accountId, emissionId, and idempotencyKey.",
281
- modeling_execute_structured: "Create a new product carbon model from Agent-extracted structured data. Use this only after the Agent has a complete product name, functional unit, emission source list, and selected factors. For material, auxiliary material, packaging, or recycled material transport, attach transport legs to the parent emissionSources[].transport field; do not create a standalone type=7 transport source unless the user explicitly asks for an independent transport/logistics activity. Example: ABS plastic with supplier-to-factory freight should be one source type=1 with nested transport[], not two sources. Calls /modeling/executeStructured. Requires idempotencyKey, productName, unitName, and emissionSources.",
330
+ modeling_emission_add_structured: "Add one new emission source to an existing carbon account. Use this when the user asks to add a single material, energy source, packaging item, waste source, water source, or standalone transport source. Call modeling_account_detail first when current model context is needed. For routine inbound transport of a material or packaging item, attach transport[] to that new source instead of adding a separate type=7 source. Calls /modeling/emission/addStructured. Requires accountId, idempotencyKey, and emissionSource.",
331
+ modeling_emission_batch_add_structured: "Add multiple new emission sources to an existing carbon account in one transaction. Use this when the user provides several new materials, energy sources, packaging items, wastes, water sources, or transport-related sources to append at once. If any item is invalid, the backend rolls back the whole batch. For type=7/TRANS/TRANSPORT standalone transport, use non-empty transport[] and put factors in transport[].factor. Calls /modeling/emission/batchAddStructured. Requires accountId, idempotencyKey, and emissionSources.",
332
+ modeling_emission_update_structured: "Update one emission source under an existing carbon account using structured fields. Use this for precise changes to that source's name, lifecycle stage, type, activity amount, activity unitName, conversion rate, factor, transport segments, or source remark. Do not use it for accountName, productName, functional unit, accounting period, or lifecycle boundary changes. Do not call this tool if there is no explicit emission-source field to change. Include only fields that should change. For transport changes, set transportAction: keep, replace, or clear. If changing a source to type=7 standalone transport, use transportAction=replace with a non-empty transport[]; do not clear transport on type=7. Calls /modeling/emission/updateStructured. Requires accountId, emissionId, and idempotencyKey.",
333
+ modeling_emission_batch_update_structured: "Update multiple emission sources under the same carbon account in one transaction. Use this when the user provides several precise source changes at once. Each emissionUpdates[] item must include emissionId and only fields to change. Call modeling_account_detail first to identify exact emissionIds; if any target is ambiguous, ask the user to confirm. If any item fails, the backend rolls back the whole batch. Calls /modeling/emission/batchUpdateStructured. Requires accountId, idempotencyKey, and emissionUpdates.",
334
+ modeling_emission_delete_structured: "Delete one emission source from an existing carbon account. Use this only when the user explicitly asks to remove/delete an emission source, or confirms that a specific source is duplicate, wrong, or outside the accounting boundary. First call modeling_account_detail to identify the exact emissionId; if the target source is ambiguous, ask the user to confirm. Do not use this for clearing transport only; use modeling_emission_update_structured with transportAction=clear instead. Calls /modeling/emission/deleteStructured. Requires accountId, emissionId, and idempotencyKey.",
335
+ modeling_execute_structured: "Create a new product carbon model from Agent-extracted structured data. Use this only after the Agent has a complete product name, functional unit, emission source list, and selected factors. For material, auxiliary material, packaging, or recycled material transport, attach transport legs to the parent emissionSources[].transport field; do not create a standalone type=7 transport source unless the user explicitly asks for an independent transport/logistics activity. For type=7 standalone transport, omit source-level factor and provide a non-empty transport[] with each segment's factor. Example: ABS plastic with supplier-to-factory freight should be one source type=1 with nested transport[], not two sources. Calls /modeling/executeStructured. Requires idempotencyKey, productName, unitName, and emissionSources.",
282
336
  report_generate: "为已有产品碳足迹账户生成新的报告。仅当用户明确要求生成报告、报告文件,或明确要求将排放源清单、生命周期阶段占比、材料占比、图表、结论、分析等内容整理进报告时调用本工具。不要用于普通查询、口头分析、查看清单或查看占比。需要 accountId 和 idempotencyKey;用户对报告内容的自然语言要求放入 input.content。",
283
337
  report_regenerate: "重新生成已有产品碳足迹报告。仅当用户明确要求重新生成报告、更新报告文件,或明确要求将排放源清单、生命周期阶段占比、材料占比、图表、结论、分析等内容补充进已有报告时调用本工具。不要用于普通查询、口头分析、查看清单或查看占比。需要 reportId 和 idempotencyKey;用户对重新生成报告的自然语言要求放入 input.content。",
284
338
  report_detail: "Get product carbon report detail and latest report URL.",
@@ -324,11 +378,31 @@ export const toolRoutes = {
324
378
  path: apipath.ModelingEmissionDetail(),
325
379
  bodyKind: "agentSkill",
326
380
  },
381
+ modeling_emission_add_structured: {
382
+ method: "POST",
383
+ path: apipath.ModelingEmissionAddStructured(),
384
+ bodyKind: "singleEmissionAdd",
385
+ },
386
+ modeling_emission_batch_add_structured: {
387
+ method: "POST",
388
+ path: apipath.ModelingEmissionBatchAddStructured(),
389
+ bodyKind: "agentSkill",
390
+ },
327
391
  modeling_emission_update_structured: {
328
392
  method: "POST",
329
393
  path: apipath.ModelingEmissionUpdateStructured(),
330
394
  bodyKind: "agentSkill",
331
395
  },
396
+ modeling_emission_batch_update_structured: {
397
+ method: "POST",
398
+ path: apipath.ModelingEmissionBatchUpdateStructured(),
399
+ bodyKind: "agentSkill",
400
+ },
401
+ modeling_emission_delete_structured: {
402
+ method: "POST",
403
+ path: apipath.ModelingEmissionDeleteStructured(),
404
+ bodyKind: "agentSkill",
405
+ },
332
406
  modeling_execute_structured: {
333
407
  method: "POST",
334
408
  path: apipath.ModelingExecuteStructured(),
@@ -399,6 +473,19 @@ export function buildBody(route, args) {
399
473
  runId: args.runId,
400
474
  }));
401
475
  }
476
+ if (route.bodyKind === "singleEmissionAdd") {
477
+ return normalizeIds(pickDefined({
478
+ sessionId: args.sessionId,
479
+ messageId: args.messageId,
480
+ traceId: args.traceId,
481
+ taskId: args.taskId,
482
+ accountId: args.accountId,
483
+ idempotencyKey: args.idempotencyKey,
484
+ emissionSources: args.emissionSource === undefined || args.emissionSource === null
485
+ ? undefined
486
+ : [args.emissionSource],
487
+ }));
488
+ }
402
489
  return normalizeIds(args);
403
490
  }
404
491
  export function resolveRoutePath(route, args) {
@@ -448,7 +535,12 @@ function normalizeIds(value) {
448
535
  return normalized;
449
536
  }
450
537
  function isIdField(key) {
451
- return key === "projectId" || key === "accountId" || key === "modelId" || key === "reportId" || key === "factorId";
538
+ return key === "projectId"
539
+ || key === "accountId"
540
+ || key === "emissionId"
541
+ || key === "modelId"
542
+ || key === "reportId"
543
+ || key === "factorId";
452
544
  }
453
545
  function normalizeNumericId(value) {
454
546
  const numericValue = Number(value);
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carbonstopper/agent-mcp",
3
- "version": "0.1.16",
3
+ "version": "0.1.18",
4
4
  "description": "MCP server for Carbonstop Agent internal skill APIs",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",