@carbonstopper/agent-mcp 0.1.20 → 0.1.22
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 +49 -6
- package/dist/logger.js +73 -2
- package/dist/logger.js.map +1 -1
- package/dist/response.d.ts +9 -0
- package/dist/response.js +101 -0
- package/dist/response.js.map +1 -0
- package/dist/server.js +3 -1
- package/dist/server.js.map +1 -1
- package/dist/tools.d.ts +2 -1
- package/dist/tools.js +17 -12
- package/dist/tools.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -123,6 +123,30 @@ By default, request bodies are summarized rather than printed. Logs include ids
|
|
|
123
123
|
|
|
124
124
|
For temporary debugging, set `CARBONSTOP_LOG_BODY=true`. Text previews are still truncated to avoid large or sensitive logs.
|
|
125
125
|
|
|
126
|
+
## Error Responses
|
|
127
|
+
|
|
128
|
+
When a backend skill returns a business failure, the MCP server returns a JSON error payload to the Agent instead of prefixing the backend body with plain text. Structured validation details are preserved for automatic repair:
|
|
129
|
+
|
|
130
|
+
```json
|
|
131
|
+
{
|
|
132
|
+
"success": false,
|
|
133
|
+
"statusCode": 200,
|
|
134
|
+
"message": "stage 字段不接受当前取值,请使用生命周期阶段代码值",
|
|
135
|
+
"error": {
|
|
136
|
+
"errorCode": "ENUM_NOT_SUPPORTED",
|
|
137
|
+
"fieldPath": "emissionSources[0].stage",
|
|
138
|
+
"retryable": true,
|
|
139
|
+
"suggestedFix": {
|
|
140
|
+
"fieldPath": "emissionSources[0].stage",
|
|
141
|
+
"value": "0"
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
"failedItems": []
|
|
145
|
+
}
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
For batch add/update failures, read `failedItems[]` first. For single write failures, read `error.fieldPath`, `error.supportedValues`, `error.supportedLabels`, and `error.suggestedFix`.
|
|
149
|
+
|
|
126
150
|
## MCP Client Config
|
|
127
151
|
|
|
128
152
|
### Claude Code / Claude Desktop
|
|
@@ -472,7 +496,7 @@ Emission update field rules:
|
|
|
472
496
|
- `amount`: activity data amount for this emission source only.
|
|
473
497
|
- `unitName`: activity data unit from `unit_list.factorUnitM[].dictLabel`, for example `kg`, `g`, `t`, `kWh`, `m3`, `件`.
|
|
474
498
|
- `rate`: conversion ratio from activity unit to factor denominator unit, for example `g` to `kg` uses `0.001`.
|
|
475
|
-
- `factor`: selected factor for normal non-transport sources. In update tools,
|
|
499
|
+
- `factor`: selected factor for normal non-transport sources. In update tools, normal library factors currently must include a full factor snapshot: `sourceType`, `factorId`, `name`, `factor`, `unit`, `institution`, and `year`. Ecoinvent library factors, or encrypted/masked factor values, must use `sourceType: "library"` plus `factorId` only, optionally `factorPattern: "2"`; do not copy encrypted values, guess values, or send placeholders. Custom factors must include `sourceType`, `name`, `factor`, `unit`, `institution`, and `year`. For `type=7` standalone transport sources, put the transport factor in `transport[].factor`, not in source-level `factor`.
|
|
476
500
|
- `transport`: transport segments attached to this emission source. For material/packaging inbound transport, keep it here instead of creating a standalone transport source.
|
|
477
501
|
- 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.
|
|
478
502
|
- `remark`: source-level update reason or data quality note.
|
|
@@ -509,7 +533,17 @@ Use this when the user wants to update multiple existing emission sources under
|
|
|
509
533
|
"year": "2025",
|
|
510
534
|
"reason": "User requested a more specific polyester factor"
|
|
511
535
|
},
|
|
512
|
-
"remark": "Replaced factor after factor search"
|
|
536
|
+
"remark": "Replaced with a normal library factor after factor search"
|
|
537
|
+
},
|
|
538
|
+
{
|
|
539
|
+
"emissionId": 4783583185919744,
|
|
540
|
+
"factor": {
|
|
541
|
+
"sourceType": "library",
|
|
542
|
+
"factorId": 987654321,
|
|
543
|
+
"factorPattern": "2",
|
|
544
|
+
"reason": "Selected Ecoinvent factor. The backend resolves encrypted factor values from factorId."
|
|
545
|
+
},
|
|
546
|
+
"remark": "Replaced with an Ecoinvent factor; value is not provided by Agent"
|
|
513
547
|
}
|
|
514
548
|
]
|
|
515
549
|
}
|
|
@@ -585,7 +619,11 @@ Do not use this tool to clear only transport data. To remove transport from a so
|
|
|
585
619
|
}
|
|
586
620
|
```
|
|
587
621
|
|
|
588
|
-
|
|
622
|
+
Factor rules:
|
|
623
|
+
|
|
624
|
+
- Normal library factor in update tools: use `sourceType: "library"` and provide `factorId`, `name`, `factor`, `unit`, `institution`, and `year`.
|
|
625
|
+
- Ecoinvent library factor or encrypted/masked factor value in update tools: use `sourceType: "library"` and `factorId` only; `factorPattern: "2"` is recommended. Do not pass `factor`, do not guess values, and do not pass placeholders.
|
|
626
|
+
- Custom factor: use `sourceType: "custom"` and provide `name`, `factor`, `unit`, `institution`, and `year`.
|
|
589
627
|
|
|
590
628
|
Before calling `modeling_execute_structured`, the Agent should use the unit lookup/conversion API to normalize every `unitName` and, when needed, fill `rate`.
|
|
591
629
|
|
|
@@ -614,7 +652,7 @@ Structured dictionary values:
|
|
|
614
652
|
|
|
615
653
|
- `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.
|
|
616
654
|
- `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.
|
|
617
|
-
- `factor.sourceType`: `library` for a CCDB factor selected from `factor_search`; `custom` for a user-provided or Agent-provided custom factor.
|
|
655
|
+
- `factor.sourceType`: `library` for a CCDB factor selected from `factor_search`; `custom` for a user-provided or Agent-provided custom factor. In update tools, normal library factors currently need the full snapshot fields, while Ecoinvent library factors should be sent as factorId-only because the value may be encrypted.
|
|
618
656
|
- `transport.transportType`: transport mode code. Use backend enum codes: `1` road transport / 道路运输, `2` railway transport / 铁路运输, `3` air transport / 航空运输, `4` water transport / 水路运输.
|
|
619
657
|
- `transport.way`: transport calculation method code. Use backend enum codes: `1` WEIGHT / 按里程-产品重量, `2` WEIGHT_RATE / 按里程-载重比, `3` ENERGY / 按能耗.
|
|
620
658
|
|
|
@@ -627,11 +665,16 @@ Structured dictionary values:
|
|
|
627
665
|
"traceId": "langgraph_run_xxx",
|
|
628
666
|
"taskId": "factor_search_node",
|
|
629
667
|
"name": "ABS plastic",
|
|
630
|
-
"lang": "zh"
|
|
668
|
+
"lang": "zh",
|
|
669
|
+
"factorScope": 1
|
|
631
670
|
}
|
|
632
671
|
```
|
|
633
672
|
|
|
634
|
-
The backend accepts one `name` per request. Call `factor_search` only when the user has not provided a suitable reference factor for the emission source or transport segment. If the user provides a suitable factor, pass it directly in the structured modeling or update request as `sourceType: "custom"` or `sourceType: "library"` and do not search.
|
|
673
|
+
The backend accepts one `name` per request. Call `factor_search` only when the user has not provided a suitable reference factor for the emission source or transport segment. If the user provides a suitable factor, pass it directly in the structured modeling or update request as `sourceType: "custom"` or `sourceType: "library"` and do not search.
|
|
674
|
+
|
|
675
|
+
`factorScope` is optional: `1` Ecoinvent, `2` domestic factors, `3` any source. Pass it when the modeling task has a factor source preference. If omitted, the backend defaults to `3`. If `1` or `2` returns no result, the backend automatically falls back to `3`; the Agent should not retry fallback itself.
|
|
676
|
+
|
|
677
|
+
For normal materials, energy, packaging, waste, and other non-transport factors, the Agent should call `factor_search` multiple times with Chinese keywords, English keywords, material synonyms, process names, and product category terms, then compare returned rows. If the selected row is Ecoinvent or the value is encrypted/masked, do not copy the value into modeling or update requests; pass only `sourceType: "library"` and `factorId`, optionally `factorPattern: "2"`.
|
|
635
678
|
|
|
636
679
|
For transport factors, the Agent should use transport-specific keywords, not generic carbon knowledge questions. If the user provides a specific transport tool or factor name, search that exact keyword first. For road freight with no explicit tool, default to `中型柴油货车运输(载重8t)`; useful fallback keywords are `中型柴油货车运输(载重8t)`, `轻型柴油货车运输(载重2t)`, and `重型柴油货车运输`. When a returned row contains `id`, use that `id` as `modeling_execute_structured.emissionSources[].factor.factorId` or `transport[].factor.factorId`.
|
|
637
680
|
|
package/dist/logger.js
CHANGED
|
@@ -106,7 +106,7 @@ export function summarizeArgs(args) {
|
|
|
106
106
|
if (typeof args.amount === "string") {
|
|
107
107
|
summary.amount = args.amount;
|
|
108
108
|
}
|
|
109
|
-
for (const key of ["scope", "scopeValue"]) {
|
|
109
|
+
for (const key of ["scope", "scopeValue", "factorScope"]) {
|
|
110
110
|
if (args[key] !== undefined)
|
|
111
111
|
summary[key] = args[key];
|
|
112
112
|
}
|
|
@@ -174,7 +174,7 @@ function extractUsefulBodyPreview(body) {
|
|
|
174
174
|
try {
|
|
175
175
|
const parsed = JSON.parse(body);
|
|
176
176
|
if (isRecord(parsed)) {
|
|
177
|
-
const candidate = parsed.message || parsed.
|
|
177
|
+
const candidate = parsed.message || parsed.msg || nestedValue(parsed, ["error", "message"]) || parsed.code;
|
|
178
178
|
if (typeof candidate === "string" || typeof candidate === "number") {
|
|
179
179
|
return String(candidate);
|
|
180
180
|
}
|
|
@@ -203,12 +203,67 @@ function parseResponseSummary(body) {
|
|
|
203
203
|
const status = parsed.status ?? nestedValue(parsed, ["data", "status"]);
|
|
204
204
|
if (typeof status === "string")
|
|
205
205
|
summary.businessStatus = status;
|
|
206
|
+
const error = firstRecordValue(parsed, [["error"], ["data", "error"], ["data", "data", "error"]]);
|
|
207
|
+
if (error) {
|
|
208
|
+
Object.assign(summary, summarizeStructuredError(error));
|
|
209
|
+
}
|
|
210
|
+
const failedItems = firstArrayValue(parsed, [["failedItems"], ["data", "failedItems"], ["data", "data", "failedItems"]]);
|
|
211
|
+
if (failedItems) {
|
|
212
|
+
summary.failedItemCount = failedItems.length;
|
|
213
|
+
const firstFailedItem = failedItems.find(isRecord);
|
|
214
|
+
if (isRecord(firstFailedItem)) {
|
|
215
|
+
if (firstFailedItem.index !== undefined)
|
|
216
|
+
summary.firstFailedItemIndex = firstFailedItem.index;
|
|
217
|
+
if (typeof firstFailedItem.name === "string")
|
|
218
|
+
summary.firstFailedItemName = truncateText(firstFailedItem.name, 100);
|
|
219
|
+
if (typeof firstFailedItem.message === "string")
|
|
220
|
+
summary.firstFailedItemMessage = truncateText(firstFailedItem.message, 200);
|
|
221
|
+
if (isRecord(firstFailedItem.error)) {
|
|
222
|
+
const firstFailedError = summarizeStructuredError(firstFailedItem.error, "firstFailedItem");
|
|
223
|
+
Object.assign(summary, firstFailedError);
|
|
224
|
+
if (!error)
|
|
225
|
+
Object.assign(summary, summarizeStructuredError(firstFailedItem.error));
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
206
229
|
}
|
|
207
230
|
catch {
|
|
208
231
|
// Not a JSON response.
|
|
209
232
|
}
|
|
210
233
|
return summary;
|
|
211
234
|
}
|
|
235
|
+
function summarizeStructuredError(error, prefix = "") {
|
|
236
|
+
const key = (name) => prefix ? `${prefix}${name[0].toUpperCase()}${name.slice(1)}` : name;
|
|
237
|
+
const summary = {};
|
|
238
|
+
if (typeof error.errorCode === "string")
|
|
239
|
+
summary[key("errorCode")] = error.errorCode;
|
|
240
|
+
if (typeof error.fieldPath === "string")
|
|
241
|
+
summary[key("fieldPath")] = error.fieldPath;
|
|
242
|
+
if (error.retryable !== undefined)
|
|
243
|
+
summary[key("retryable")] = error.retryable;
|
|
244
|
+
if (typeof error.message === "string")
|
|
245
|
+
summary[key("errorMessage")] = truncateText(error.message, 200);
|
|
246
|
+
if (isRecord(error.suggestedFix)) {
|
|
247
|
+
const suggestedFix = error.suggestedFix;
|
|
248
|
+
if (typeof suggestedFix.fieldPath === "string")
|
|
249
|
+
summary[key("suggestedFixFieldPath")] = suggestedFix.fieldPath;
|
|
250
|
+
if (suggestedFix.value !== undefined)
|
|
251
|
+
summary[key("suggestedFixValue")] = previewValue(suggestedFix.value);
|
|
252
|
+
}
|
|
253
|
+
return summary;
|
|
254
|
+
}
|
|
255
|
+
function previewValue(value) {
|
|
256
|
+
if (typeof value === "string")
|
|
257
|
+
return truncateText(value, 200);
|
|
258
|
+
if (typeof value === "number" || typeof value === "boolean")
|
|
259
|
+
return value;
|
|
260
|
+
try {
|
|
261
|
+
return truncateText(JSON.stringify(value), 200);
|
|
262
|
+
}
|
|
263
|
+
catch {
|
|
264
|
+
return String(value);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
212
267
|
function pickDefined(value) {
|
|
213
268
|
const result = {};
|
|
214
269
|
for (const [key, childValue] of Object.entries(value)) {
|
|
@@ -229,6 +284,22 @@ function nestedValue(value, path) {
|
|
|
229
284
|
}
|
|
230
285
|
return current;
|
|
231
286
|
}
|
|
287
|
+
function firstRecordValue(value, paths) {
|
|
288
|
+
for (const path of paths) {
|
|
289
|
+
const result = nestedValue(value, path);
|
|
290
|
+
if (isRecord(result))
|
|
291
|
+
return result;
|
|
292
|
+
}
|
|
293
|
+
return undefined;
|
|
294
|
+
}
|
|
295
|
+
function firstArrayValue(value, paths) {
|
|
296
|
+
for (const path of paths) {
|
|
297
|
+
const result = nestedValue(value, path);
|
|
298
|
+
if (Array.isArray(result))
|
|
299
|
+
return result;
|
|
300
|
+
}
|
|
301
|
+
return undefined;
|
|
302
|
+
}
|
|
232
303
|
function changedFieldKeys(args) {
|
|
233
304
|
const excluded = new Set([
|
|
234
305
|
"sessionId",
|
package/dist/logger.js.map
CHANGED
|
@@ -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":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface NormalizedBackendError {
|
|
2
|
+
success: false;
|
|
3
|
+
statusCode: number;
|
|
4
|
+
message: string;
|
|
5
|
+
error?: Record<string, unknown>;
|
|
6
|
+
failedItems?: unknown[];
|
|
7
|
+
raw: unknown;
|
|
8
|
+
}
|
|
9
|
+
export declare function normalizeBackendErrorResponse(body: string, statusCode: number): NormalizedBackendError;
|
package/dist/response.js
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
export function normalizeBackendErrorResponse(body, statusCode) {
|
|
2
|
+
const parsed = parseJson(body);
|
|
3
|
+
const root = isRecord(parsed) ? parsed : undefined;
|
|
4
|
+
const error = firstRecord(root, [["error"], ["data", "error"], ["data", "data", "error"]]);
|
|
5
|
+
const failedItems = firstArray(root, [["failedItems"], ["data", "failedItems"], ["data", "data", "failedItems"]]);
|
|
6
|
+
const firstFailedItem = failedItems?.find(isRecord);
|
|
7
|
+
const firstFailedError = isRecord(firstFailedItem) && isRecord(firstFailedItem.error) ? firstFailedItem.error : undefined;
|
|
8
|
+
const message = firstString(root, [
|
|
9
|
+
["msg"],
|
|
10
|
+
["message"],
|
|
11
|
+
["data", "message"],
|
|
12
|
+
["data", "msg"],
|
|
13
|
+
["data", "data", "message"],
|
|
14
|
+
["data", "data", "msg"],
|
|
15
|
+
["error", "message"],
|
|
16
|
+
["data", "error", "message"],
|
|
17
|
+
["data", "data", "error", "message"],
|
|
18
|
+
]) ||
|
|
19
|
+
stringField(error, "message") ||
|
|
20
|
+
stringField(firstFailedItem, "message") ||
|
|
21
|
+
stringField(firstFailedError, "message") ||
|
|
22
|
+
rawText(body) ||
|
|
23
|
+
`HTTP ${statusCode}`;
|
|
24
|
+
return compact({
|
|
25
|
+
success: false,
|
|
26
|
+
statusCode,
|
|
27
|
+
message,
|
|
28
|
+
error: error || firstFailedError,
|
|
29
|
+
failedItems,
|
|
30
|
+
raw: parsed === undefined ? body : parsed,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
function parseJson(body) {
|
|
34
|
+
try {
|
|
35
|
+
return JSON.parse(body);
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return undefined;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function rawText(body) {
|
|
42
|
+
const trimmed = body.trim();
|
|
43
|
+
return trimmed ? trimmed : undefined;
|
|
44
|
+
}
|
|
45
|
+
function firstRecord(root, paths) {
|
|
46
|
+
for (const path of paths) {
|
|
47
|
+
const value = nestedValue(root, path);
|
|
48
|
+
if (isRecord(value))
|
|
49
|
+
return value;
|
|
50
|
+
}
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
function firstArray(root, paths) {
|
|
54
|
+
for (const path of paths) {
|
|
55
|
+
const value = nestedValue(root, path);
|
|
56
|
+
if (Array.isArray(value))
|
|
57
|
+
return value;
|
|
58
|
+
}
|
|
59
|
+
return undefined;
|
|
60
|
+
}
|
|
61
|
+
function firstString(root, paths) {
|
|
62
|
+
for (const path of paths) {
|
|
63
|
+
const value = nestedValue(root, path);
|
|
64
|
+
if (typeof value === "string" && value.trim())
|
|
65
|
+
return value;
|
|
66
|
+
if (typeof value === "number")
|
|
67
|
+
return String(value);
|
|
68
|
+
}
|
|
69
|
+
return undefined;
|
|
70
|
+
}
|
|
71
|
+
function stringField(value, key) {
|
|
72
|
+
if (!isRecord(value))
|
|
73
|
+
return undefined;
|
|
74
|
+
const child = value[key];
|
|
75
|
+
if (typeof child === "string" && child.trim())
|
|
76
|
+
return child;
|
|
77
|
+
if (typeof child === "number")
|
|
78
|
+
return String(child);
|
|
79
|
+
return undefined;
|
|
80
|
+
}
|
|
81
|
+
function nestedValue(root, path) {
|
|
82
|
+
let current = root;
|
|
83
|
+
for (const key of path) {
|
|
84
|
+
if (!isRecord(current))
|
|
85
|
+
return undefined;
|
|
86
|
+
current = current[key];
|
|
87
|
+
}
|
|
88
|
+
return current;
|
|
89
|
+
}
|
|
90
|
+
function compact(value) {
|
|
91
|
+
const result = {};
|
|
92
|
+
for (const [key, child] of Object.entries(value)) {
|
|
93
|
+
if (child !== undefined && child !== null)
|
|
94
|
+
result[key] = child;
|
|
95
|
+
}
|
|
96
|
+
return result;
|
|
97
|
+
}
|
|
98
|
+
function isRecord(value) {
|
|
99
|
+
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.js","sourceRoot":"","sources":["../src/response.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
2
|
import { Client } from "./client.js";
|
|
3
3
|
import { errorMessage, log, responseBusinessError, summarizeArgs, summarizeResponseBody } from "./logger.js";
|
|
4
|
+
import { normalizeBackendErrorResponse } from "./response.js";
|
|
4
5
|
import { schemas, descriptions, exposedToolNames, toolRoutes, buildBody, getSessionId, resolveRoutePath, buildFactorSearchBody, } from "./tools.js";
|
|
5
6
|
import { Version } from "./version.js";
|
|
6
7
|
export function assertConfig(config) {
|
|
@@ -73,6 +74,7 @@ export function createAgentMcpServer(config) {
|
|
|
73
74
|
const durationMs = Date.now() - startedAt;
|
|
74
75
|
const businessError = responseBusinessError(result.body);
|
|
75
76
|
if (result.status < 200 || result.status >= 300 || businessError) {
|
|
77
|
+
const normalizedError = normalizeBackendErrorResponse(result.body, result.status);
|
|
76
78
|
log("warn", businessError ? "tool_call_business_error" : "tool_call_backend_error", {
|
|
77
79
|
tool: name,
|
|
78
80
|
path,
|
|
@@ -84,7 +86,7 @@ export function createAgentMcpServer(config) {
|
|
|
84
86
|
durationMs,
|
|
85
87
|
...summarizeResponseBody(result.body, true),
|
|
86
88
|
});
|
|
87
|
-
return errorContent(
|
|
89
|
+
return errorContent(JSON.stringify(normalizedError, null, 2));
|
|
88
90
|
}
|
|
89
91
|
log("info", "tool_call_success", {
|
|
90
92
|
tool: name,
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,qBAAqB,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC7G,OAAO,EACL,OAAO,EACP,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM;YAAE,SAAS;QAEtB,MAAM,CAAC,YAAY,CACjB,IAAI,EACJ;YACE,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE;YACrC,WAAW,EAAE,MAAM;SACpB,EACD,KAAK,EAAE,IAAS,EAAE,EAAE;YAClB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,GAAG,CAAC,OAAO,EAAE,iBAAiB,EAAE;oBAC9B,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,cAAc;oBACrB,WAAW,EAAE,aAAa,CAAC,IAAI,IAAI,EAAE,CAAC;iBACvC,CAAC,CAAC;gBACH,OAAO,YAAY,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;YAC/C,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;gBACrC,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC3C,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACpC,MAAM,WAAW,GAAG,aAAa,CAAC,IAA+B,CAAC,CAAC;gBAEnE,GAAG,CAAC,MAAM,EAAE,iBAAiB,EAAE;oBAC7B,IAAI,EAAE,IAAI;oBACV,IAAI;oBACJ,SAAS;oBACT,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,WAAW;iBACZ,CAAC,CAAC;gBAEH,IAAI,MAAwC,CAAC;gBAC7C,IAAI,KAAK,CAAC,QAAQ,KAAK,cAAc,EAAE,CAAC;oBACtC,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC3E,CAAC;qBAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,mBAAmB,EAAE,CAAC;oBAClD,MAAM,UAAU,GAAG,IAA+B,CAAC;oBACnD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;oBACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;wBACrD,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBACD,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;gBAC7E,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;gBACpD,CAAC;gBACD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAE1C,MAAM,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACzD,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,aAAa,EAAE,CAAC;oBACjE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,yBAAyB,EAAE;wBAClF,IAAI,EAAE,IAAI;wBACV,IAAI;wBACJ,SAAS;wBACT,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,UAAU;wBACV,GAAG,qBAAqB,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;qBAC5C,CAAC,CAAC;oBACH,OAAO,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.d.ts
CHANGED
|
@@ -13,12 +13,13 @@ export declare const toolRoutes: Record<string, ToolRoute>;
|
|
|
13
13
|
export declare function buildBody(route: ToolRoute, args: Record<string, unknown>): unknown;
|
|
14
14
|
export declare function resolveRoutePath(route: ToolRoute, args: Record<string, unknown>): string;
|
|
15
15
|
export declare function buildFactorSearchBody(args: Record<string, unknown>): {
|
|
16
|
+
sign: string;
|
|
17
|
+
factorScope?: {} | undefined;
|
|
16
18
|
sessionId: unknown;
|
|
17
19
|
messageId: unknown;
|
|
18
20
|
traceId: unknown;
|
|
19
21
|
taskId: unknown;
|
|
20
22
|
name: string;
|
|
21
23
|
lang: string;
|
|
22
|
-
sign: string;
|
|
23
24
|
};
|
|
24
25
|
export declare function getSessionId(args: Record<string, unknown>): string;
|
package/dist/tools.js
CHANGED
|
@@ -58,14 +58,14 @@ const factorSchema = z.object({
|
|
|
58
58
|
sourceType: z
|
|
59
59
|
.enum(["library", "custom"])
|
|
60
60
|
.optional()
|
|
61
|
-
.describe("Factor source type. Use library
|
|
62
|
-
factorId: longId.optional().describe("CCDB library factor id selected from factor_search results. Required when sourceType=library.
|
|
63
|
-
name: z.string().optional().describe("
|
|
64
|
-
factor: z.string().optional().describe("
|
|
65
|
-
unit: z.string().optional().describe("
|
|
66
|
-
institution: z.string().optional().describe("
|
|
67
|
-
year: z.string().optional().describe("
|
|
68
|
-
factorPattern: z.string().optional().describe("
|
|
61
|
+
.describe("Factor source type. Use library for a CCDB factor selected from factor_search; use custom only when the user or Agent provides a custom emission factor."),
|
|
62
|
+
factorId: longId.optional().describe("CCDB library factor id selected from factor_search results. Required when sourceType=library. For normal library factors in update tools, also provide the full snapshot fields name, factor, unit, institution, and year. For Ecoinvent library factors, pass sourceType=library and factorId only; do not pass encrypted or placeholder factor values."),
|
|
63
|
+
name: z.string().optional().describe("Factor name. Required when sourceType=custom. For normal library factors in update tools, provide the returned snapshot name. For Ecoinvent library factors, omit when unavailable and use factorId only."),
|
|
64
|
+
factor: z.string().optional().describe("Emission factor value. Required when sourceType=custom. For normal library factors in update tools, provide the returned snapshot value. Do not provide this for Ecoinvent library factors because values may be encrypted or unavailable to Agent."),
|
|
65
|
+
unit: z.string().optional().describe("Factor unit, for example kgCO2e/kg. Required when sourceType=custom. For normal library factors in update tools, provide the returned snapshot unit. For Ecoinvent library factors, omit when unavailable and use factorId only."),
|
|
66
|
+
institution: z.string().optional().describe("Factor source or institution. Required when sourceType=custom. For normal library factors in update tools, provide the returned snapshot institution. For Ecoinvent library factors, omit when unavailable and use factorId only."),
|
|
67
|
+
year: z.string().optional().describe("Factor year. Required when sourceType=custom. For normal library factors in update tools, provide the returned snapshot year. For Ecoinvent library factors, omit when unavailable and use factorId only."),
|
|
68
|
+
factorPattern: z.string().optional().describe("Factor type code. Use 1 for normal factor, 2 for Ecoinvent factor when applicable. For Ecoinvent update requests, factorPattern=2 is recommended with factorId-only input."),
|
|
69
69
|
reason: z.string().optional().describe("Why the Agent selected this factor."),
|
|
70
70
|
evidence: z.string().optional().describe("External source, note, or evidence URL for the selected factor."),
|
|
71
71
|
});
|
|
@@ -78,7 +78,7 @@ const transportSchema = z.object({
|
|
|
78
78
|
rate: z.string().optional().describe("Optional unit conversion ratio from the transport activity mass unit plus kilometer to the selected transport factor denominator unit. Use a confirmed conversion ratio; omit when uncertain so the backend can infer or validate it."),
|
|
79
79
|
distance: z.string().optional().describe("Transport distance."),
|
|
80
80
|
distUnitName: z.string().optional().describe("Transport distance unit. Use kilometer only. Defaults to 公里 if omitted."),
|
|
81
|
-
factor: factorSchema.optional().describe("Transport factor. Required when the transport segment should use a specific factor. For freight factors, select a factor compatible with the transport mode and calculation method. For road freight, prefer factor_search keywords in this order: explicit user vehicle/tool if provided; otherwise default to 中型柴油货车运输(载重8t). Common road keywords are 中型柴油货车运输(载重8t), 轻型柴油货车运输(载重2t), 重型柴油货车运输."),
|
|
81
|
+
factor: factorSchema.optional().describe("Transport factor. Required when the transport segment should use a specific factor. In update tools, normal library factors must include sourceType=library, factorId, name, factor, unit, institution, and year; Ecoinvent library factors should pass sourceType=library and factorId only, optionally factorPattern=2, and must not pass encrypted or placeholder factor values. For freight factors, select a factor compatible with the transport mode and calculation method. For road freight, prefer factor_search keywords in this order: explicit user vehicle/tool if provided; otherwise default to 中型柴油货车运输(载重8t). Common road keywords are 中型柴油货车运输(载重8t), 轻型柴油货车运输(载重2t), 重型柴油货车运输."),
|
|
82
82
|
remark: z.string().optional().describe("Transport remark."),
|
|
83
83
|
});
|
|
84
84
|
const emissionSourceSchema = z.object({
|
|
@@ -141,7 +141,7 @@ const emissionUpdateStructuredSchema = emissionSourceSchema
|
|
|
141
141
|
amount: z.string().optional().describe("该排放源的活动数据数量,例如 0.105、4345、50。只表示当前 emissionId 对应排放源的数量,不是核算功能单位数量。"),
|
|
142
142
|
unitName: z.string().optional().describe("该排放源的活动数据单位。必须来自 unit_list.factorUnitM[].dictLabel,例如 kg、g、t、kWh、m3、件。修改单位时通常也要确认 rate。"),
|
|
143
143
|
rate: z.string().optional().describe("活动数据单位到所选因子分母单位的换算比例。例如活动数据是 g、因子是 kgCO2e/kg 时 rate=0.001;活动数据是 kg、因子是 kgCO2e/kg 时 rate=1。不确定时可省略让后端校验/推断。"),
|
|
144
|
-
factor: factorSchema.optional().describe("
|
|
144
|
+
factor: factorSchema.optional().describe("Emission source factor for update. Normal library factors currently must include the full snapshot: sourceType=library, factorId, name, factor, unit, institution, and year. Ecoinvent library factors or encrypted/masked factor values must use sourceType=library plus factorId only, optionally factorPattern=2; do not pass factor values, do not guess values, and do not pass placeholders. Custom factors must include sourceType=custom, name, factor, unit, institution, and year. Use factor_search before changing a factor and follow these library-vs-Ecoinvent rules."),
|
|
145
145
|
transportType: z.string().optional().describe("兼容扁平字段。仅当 type=7/TRANS/TRANSPORT 且 transport[] 为空时,后端会把它折成一条运输段。推荐使用 transport[].transportType。"),
|
|
146
146
|
transportWay: z.string().optional().describe("兼容扁平字段。仅当 type=7/TRANS/TRANSPORT 且 transport[] 为空时,后端会把它折成一条运输段。推荐使用 transport[].way。"),
|
|
147
147
|
way: z.string().optional().describe("transportWay 的兼容别名。推荐使用 transport[].way。"),
|
|
@@ -269,7 +269,8 @@ export const schemas = {
|
|
|
269
269
|
factor_search: z.object({
|
|
270
270
|
sessionId,
|
|
271
271
|
...skillTraceFields,
|
|
272
|
-
name: z.string().min(1).describe("Single CCDB factor search keyword. The backend accepts one keyword per call. Call factor_search only when the user has not provided a suitable reference factor for the emission source or transport segment. If the user provided a suitable factor, pass it directly as factor instead of searching. For normal factors, call factor_search repeatedly with Chinese keywords, English keywords, material synonyms, process names, and product category terms. For transport factors, do not search as a generic carbon Q&A. If the user provides a specific transport tool, search that exact tool first. For road freight with no explicit tool, default to 中型柴油货车运输(载重8t); useful road freight keywords are 中型柴油货车运输(载重8t), 轻型柴油货车运输(载重2t), 重型柴油货车运输. Use the selected result id as transport[].factor.factorId."),
|
|
272
|
+
name: z.string().min(1).describe("Single CCDB factor search keyword. The backend accepts one keyword per call. Call factor_search only when the user has not provided a suitable reference factor for the emission source or transport segment. If the user provided a suitable factor, pass it directly as factor instead of searching. For normal factors, call factor_search repeatedly with Chinese keywords, English keywords, material synonyms, process names, and product category terms. For transport factors, do not search as a generic carbon Q&A. If the user provides a specific transport tool, search that exact tool first. For road freight with no explicit tool, default to 中型柴油货车运输(载重8t); useful road freight keywords are 中型柴油货车运输(载重8t), 轻型柴油货车运输(载重2t), 重型柴油货车运输. Use the selected result id as transport[].factor.factorId. If the selected result is Ecoinvent or its factor value is encrypted/masked, do not copy the factor value into modeling or update requests; pass sourceType=library and factorId only."),
|
|
273
|
+
factorScope: z.union([z.number(), z.string().regex(/^\d+$/, "Expected a numeric factorScope string")]).optional().describe("Optional factor source preference. Use code values only: 1=Ecoinvent, 2=domestic factors, 3=any source. If omitted, the backend defaults to 3. When 1 or 2 has no result, the backend automatically falls back to 3; the Agent must not retry fallback itself."),
|
|
273
274
|
lang: z.string().optional().describe("Result language. Use zh by default, or en for English results."),
|
|
274
275
|
}),
|
|
275
276
|
unit_list: z.object({
|
|
@@ -335,7 +336,7 @@ export const descriptions = {
|
|
|
335
336
|
report_generate: "为已有产品碳足迹账户生成新的报告。仅当用户明确要求生成报告、报告文件,或明确要求将排放源清单、生命周期阶段占比、材料占比、图表、结论、分析等内容整理进报告时调用本工具。不要用于普通查询、口头分析、查看清单或查看占比。需要 accountId 和 idempotencyKey;用户对报告内容的自然语言要求放入 input.content。",
|
|
336
337
|
report_regenerate: "重新生成已有产品碳足迹报告。仅当用户明确要求重新生成报告、更新报告文件,或明确要求将排放源清单、生命周期阶段占比、材料占比、图表、结论、分析等内容补充进已有报告时调用本工具。不要用于普通查询、口头分析、查看清单或查看占比。需要 reportId 和 idempotencyKey;用户对重新生成报告的自然语言要求放入 input.content。",
|
|
337
338
|
report_detail: "Get product carbon report detail and latest report URL.",
|
|
338
|
-
factor_search: "Search CCDB emission factors before selecting factorId for structured modeling. Call this tool only when the user has not provided a suitable reference factor for the emission source or transport segment. If the user provided a suitable factor, pass that factor directly to modeling_execute_structured or the structured update tool as sourceType=custom or sourceType=library and do not search. The backend accepts one keyword per call. For normal factors, call this tool multiple times with Chinese keywords, English keywords, material synonyms, process names, and product category terms, then compare returned rows. For transport factors, use transport-specific keywords instead of generic Q&A terms: if the user gives a specific transport tool, search that tool; otherwise for default road freight search 中型柴油货车运输(载重8t) first, then 轻型柴油货车运输(载重2t) or 重型柴油货车运输 if context indicates light/heavy truck. When a returned row has id, use that id as factor.factorId or transport[].factor.factorId. The MCP server signs requests for /queryFactorListAgent.",
|
|
339
|
+
factor_search: "Search CCDB emission factors before selecting factorId for structured modeling. Call this tool only when the user has not provided a suitable reference factor for the emission source or transport segment. If the user provided a suitable factor, pass that factor directly to modeling_execute_structured or the structured update tool as sourceType=custom or sourceType=library and do not search. The backend accepts one keyword per call. Pass factorScope when the modeling task has a factor source preference: 1=Ecoinvent, 2=domestic factors, 3=any source. Do not implement fallback in Agent; when factorScope=1 or 2 returns no result, the backend automatically falls back to factorScope=3. For normal factors, call this tool multiple times with Chinese keywords, English keywords, material synonyms, process names, and product category terms, then compare returned rows. For transport factors, use transport-specific keywords instead of generic Q&A terms: if the user gives a specific transport tool, search that tool; otherwise for default road freight search 中型柴油货车运输(载重8t) first, then 轻型柴油货车运输(载重2t) or 重型柴油货车运输 if context indicates light/heavy truck. When a returned row has id, use that id as factor.factorId or transport[].factor.factorId. In update tools, normal library factors still need full snapshot fields; Ecoinvent or encrypted/masked factor rows must be passed as sourceType=library plus factorId only, optionally factorPattern=2, without copying or guessing factor values. The MCP server signs requests for /queryFactorListAgent.",
|
|
339
340
|
unit_list: "Get the Agent unit dictionary before structured modeling. Call this before modeling_execute_structured. The backend returns factorUnitM items: dictLabel=unitName to pass into modeling, dictValue=unit code, id=unit dictionary id, sourceName=unit category. For normal emission sources, choose from the full dictionary. For transport unitName, choose only mass units by sourceName; transport distance is kilometer.",
|
|
340
341
|
workspace_authorize_file: "Authorize a workspace file for the current Agent sandbox session. Use this before reading or using a user-uploaded workspace file.",
|
|
341
342
|
workspace_file_download_url: "Get a temporary download URL for an authorized workspace file.",
|
|
@@ -493,6 +494,9 @@ export function resolveRoutePath(route, args) {
|
|
|
493
494
|
export function buildFactorSearchBody(args) {
|
|
494
495
|
const name = typeof args.name === "string" ? args.name.trim() : "";
|
|
495
496
|
const lang = typeof args.lang === "string" && args.lang.trim() ? args.lang.trim() : "zh";
|
|
497
|
+
const factorScope = typeof args.factorScope === "string" && /^\d+$/.test(args.factorScope)
|
|
498
|
+
? Number(args.factorScope)
|
|
499
|
+
: args.factorScope;
|
|
496
500
|
return {
|
|
497
501
|
sessionId: args.sessionId,
|
|
498
502
|
messageId: args.messageId,
|
|
@@ -500,6 +504,7 @@ export function buildFactorSearchBody(args) {
|
|
|
500
504
|
taskId: args.taskId,
|
|
501
505
|
name,
|
|
502
506
|
lang,
|
|
507
|
+
...(factorScope !== undefined && factorScope !== null ? { factorScope } : {}),
|
|
503
508
|
sign: createHash("md5").update(`agent_ccdb${name}`).digest("hex"),
|
|
504
509
|
};
|
|
505
510
|
}
|
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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"}
|