@letpeoplework/lighthouse-mcp-core 1.3.0 → 1.4.0
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/dist/index.cjs +87 -2
- package/dist/index.d.cts +27 -1
- package/dist/index.d.ts +27 -1
- package/dist/index.js +87 -2
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -185,7 +185,37 @@ var toolDefinitions = [
|
|
|
185
185
|
},
|
|
186
186
|
{
|
|
187
187
|
name: "lighthouse_team_metrics_cycleTimePercentiles",
|
|
188
|
-
description: "Get cycle-time percentiles for a team by ID, optionally filtered by start and end dates.",
|
|
188
|
+
description: "Get cycle-time percentiles for a team by ID, optionally filtered by start and end dates. Pass definitionId to get the percentiles for a named cycle time (premium) instead of the default cycle time.",
|
|
189
|
+
inputSchema: {
|
|
190
|
+
type: "object",
|
|
191
|
+
properties: {
|
|
192
|
+
...idInputSchema.properties,
|
|
193
|
+
...dateRangeProperties,
|
|
194
|
+
definitionId: {
|
|
195
|
+
type: "number",
|
|
196
|
+
description: "Optional named cycle time definition ID; omit for the default cycle time."
|
|
197
|
+
}
|
|
198
|
+
},
|
|
199
|
+
required: ["id"],
|
|
200
|
+
additionalProperties: false
|
|
201
|
+
}
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
name: "lighthouse_team_metrics_workItemAgePercentiles",
|
|
205
|
+
description: "Get work-item age percentiles for a team by ID, optionally filtered by start and end dates.",
|
|
206
|
+
inputSchema: {
|
|
207
|
+
type: "object",
|
|
208
|
+
properties: {
|
|
209
|
+
...idInputSchema.properties,
|
|
210
|
+
...dateRangeProperties
|
|
211
|
+
},
|
|
212
|
+
required: ["id"],
|
|
213
|
+
additionalProperties: false
|
|
214
|
+
}
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
name: "lighthouse_portfolio_metrics_workItemAgePercentiles",
|
|
218
|
+
description: "Get work-item age percentiles for a portfolio by ID, optionally filtered by start and end dates.",
|
|
189
219
|
inputSchema: {
|
|
190
220
|
type: "object",
|
|
191
221
|
properties: {
|
|
@@ -506,6 +536,13 @@ var getNumericId = (argumentsPayload) => {
|
|
|
506
536
|
}
|
|
507
537
|
return null;
|
|
508
538
|
};
|
|
539
|
+
var getDefinitionId = (argumentsPayload) => {
|
|
540
|
+
if (typeof argumentsPayload !== "object" || argumentsPayload === null || Array.isArray(argumentsPayload)) {
|
|
541
|
+
return void 0;
|
|
542
|
+
}
|
|
543
|
+
const value = argumentsPayload.definitionId;
|
|
544
|
+
return typeof value === "number" && Number.isInteger(value) ? value : void 0;
|
|
545
|
+
};
|
|
509
546
|
var isObjectRecord = (value) => {
|
|
510
547
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
511
548
|
};
|
|
@@ -589,6 +626,17 @@ var toolInputSchemas = {
|
|
|
589
626
|
view: import_zod.z.enum(["raw", "filtered"]).optional()
|
|
590
627
|
}),
|
|
591
628
|
lighthouse_team_metrics_cycleTimePercentiles: import_zod.z.object({
|
|
629
|
+
id: import_zod.z.number().int(),
|
|
630
|
+
startDate: isoDateStringSchema.optional(),
|
|
631
|
+
endDate: isoDateStringSchema.optional(),
|
|
632
|
+
definitionId: import_zod.z.number().int().optional()
|
|
633
|
+
}),
|
|
634
|
+
lighthouse_team_metrics_workItemAgePercentiles: import_zod.z.object({
|
|
635
|
+
id: import_zod.z.number().int(),
|
|
636
|
+
startDate: isoDateStringSchema.optional(),
|
|
637
|
+
endDate: isoDateStringSchema.optional()
|
|
638
|
+
}),
|
|
639
|
+
lighthouse_portfolio_metrics_workItemAgePercentiles: import_zod.z.object({
|
|
592
640
|
id: import_zod.z.number().int(),
|
|
593
641
|
startDate: isoDateStringSchema.optional(),
|
|
594
642
|
endDate: isoDateStringSchema.optional()
|
|
@@ -828,7 +876,12 @@ var createMcpCoreRuntime = (dependencies) => ({
|
|
|
828
876
|
return getErrorToolResult("team metrics: invalid id");
|
|
829
877
|
}
|
|
830
878
|
const range = getDateRange(argumentsPayload);
|
|
831
|
-
const
|
|
879
|
+
const definitionId = getDefinitionId(argumentsPayload);
|
|
880
|
+
const result = await client.getTeamCycleTimePercentiles(
|
|
881
|
+
id,
|
|
882
|
+
range,
|
|
883
|
+
definitionId
|
|
884
|
+
);
|
|
832
885
|
if (result.ok) {
|
|
833
886
|
return getSuccessToolResult(
|
|
834
887
|
`team cycleTimePercentiles: ${encodePayload(result.value)}`
|
|
@@ -838,6 +891,38 @@ var createMcpCoreRuntime = (dependencies) => ({
|
|
|
838
891
|
`team metrics: ${result.error.category} (${result.error.reason})`
|
|
839
892
|
);
|
|
840
893
|
}
|
|
894
|
+
if (name === "lighthouse_team_metrics_workItemAgePercentiles") {
|
|
895
|
+
const id = getNumericId(argumentsPayload);
|
|
896
|
+
if (id === null) {
|
|
897
|
+
return getErrorToolResult("team metrics: invalid id");
|
|
898
|
+
}
|
|
899
|
+
const range = getDateRange(argumentsPayload);
|
|
900
|
+
const result = await client.getTeamWorkItemAgePercentiles(id, range);
|
|
901
|
+
if (result.ok) {
|
|
902
|
+
return getSuccessToolResult(
|
|
903
|
+
`team workItemAgePercentiles: ${encodePayload(result.value)}`
|
|
904
|
+
);
|
|
905
|
+
}
|
|
906
|
+
return getErrorToolResult(
|
|
907
|
+
`team metrics: ${result.error.category} (${result.error.reason})`
|
|
908
|
+
);
|
|
909
|
+
}
|
|
910
|
+
if (name === "lighthouse_portfolio_metrics_workItemAgePercentiles") {
|
|
911
|
+
const id = getNumericId(argumentsPayload);
|
|
912
|
+
if (id === null) {
|
|
913
|
+
return getErrorToolResult("portfolio metrics: invalid id");
|
|
914
|
+
}
|
|
915
|
+
const range = getDateRange(argumentsPayload);
|
|
916
|
+
const result = await client.getPortfolioWorkItemAgePercentiles(id, range);
|
|
917
|
+
if (result.ok) {
|
|
918
|
+
return getSuccessToolResult(
|
|
919
|
+
`portfolio workItemAgePercentiles: ${encodePayload(result.value)}`
|
|
920
|
+
);
|
|
921
|
+
}
|
|
922
|
+
return getErrorToolResult(
|
|
923
|
+
`portfolio metrics: ${result.error.category} (${result.error.reason})`
|
|
924
|
+
);
|
|
925
|
+
}
|
|
841
926
|
if (name === "lighthouse_team_metrics_cumulativeStateTime") {
|
|
842
927
|
const id = getNumericId(argumentsPayload);
|
|
843
928
|
if (id === null) {
|
package/dist/index.d.cts
CHANGED
|
@@ -15,7 +15,7 @@ type McpToolResult = {
|
|
|
15
15
|
readonly content: readonly McpToolContent[];
|
|
16
16
|
};
|
|
17
17
|
type McpToolDefinition = {
|
|
18
|
-
readonly name: "lighthouse_health_check" | "lighthouse_version_get" | "lighthouse_worktracking_list" | "lighthouse_worktracking_get" | "lighthouse_team_list" | "lighthouse_team_get" | "lighthouse_team_refresh" | "lighthouse_portfolio_list" | "lighthouse_portfolio_get" | "lighthouse_portfolio_refresh" | "lighthouse_team_metrics_throughput" | "lighthouse_team_metrics_cycleTimePercentiles" | "lighthouse_team_metrics_workItemAge" | "lighthouse_team_metrics_totalWorkItemAge" | "lighthouse_portfolio_metrics_throughput" | "lighthouse_portfolio_metrics_workItemAge" | "lighthouse_portfolio_metrics_totalWorkItemAge" | "lighthouse_team_metrics_cumulativeStateTime" | "lighthouse_team_metrics_cumulativeStateTimeItems" | "lighthouse_team_metrics_cumulativeStateTimeCandidates" | "lighthouse_portfolio_metrics_cumulativeStateTime" | "lighthouse_portfolio_metrics_cumulativeStateTimeItems" | "lighthouse_portfolio_metrics_cumulativeStateTimeCandidates" | "lighthouse_feature_get" | "lighthouse_feature_workitems" | "lighthouse_delivery_list" | "lighthouse_blackout_list" | "lighthouse_blackout_create" | "lighthouse_blackout_update" | "lighthouse_blackout_delete" | "lighthouse_forecast_manual" | "lighthouse_forecast_backtest";
|
|
18
|
+
readonly name: "lighthouse_health_check" | "lighthouse_version_get" | "lighthouse_worktracking_list" | "lighthouse_worktracking_get" | "lighthouse_team_list" | "lighthouse_team_get" | "lighthouse_team_refresh" | "lighthouse_portfolio_list" | "lighthouse_portfolio_get" | "lighthouse_portfolio_refresh" | "lighthouse_team_metrics_throughput" | "lighthouse_team_metrics_cycleTimePercentiles" | "lighthouse_team_metrics_workItemAgePercentiles" | "lighthouse_portfolio_metrics_workItemAgePercentiles" | "lighthouse_team_metrics_workItemAge" | "lighthouse_team_metrics_totalWorkItemAge" | "lighthouse_portfolio_metrics_throughput" | "lighthouse_portfolio_metrics_workItemAge" | "lighthouse_portfolio_metrics_totalWorkItemAge" | "lighthouse_team_metrics_cumulativeStateTime" | "lighthouse_team_metrics_cumulativeStateTimeItems" | "lighthouse_team_metrics_cumulativeStateTimeCandidates" | "lighthouse_portfolio_metrics_cumulativeStateTime" | "lighthouse_portfolio_metrics_cumulativeStateTimeItems" | "lighthouse_portfolio_metrics_cumulativeStateTimeCandidates" | "lighthouse_feature_get" | "lighthouse_feature_workitems" | "lighthouse_delivery_list" | "lighthouse_blackout_list" | "lighthouse_blackout_create" | "lighthouse_blackout_update" | "lighthouse_blackout_delete" | "lighthouse_forecast_manual" | "lighthouse_forecast_backtest";
|
|
19
19
|
readonly description: string;
|
|
20
20
|
readonly inputSchema: {
|
|
21
21
|
readonly type: "object";
|
|
@@ -135,6 +135,32 @@ type McpRuntimeClient = {
|
|
|
135
135
|
readonly getTeamCycleTimePercentiles: (id: number, range?: {
|
|
136
136
|
readonly startDate: string;
|
|
137
137
|
readonly endDate: string;
|
|
138
|
+
}, definitionId?: number) => Promise<{
|
|
139
|
+
readonly ok: true;
|
|
140
|
+
readonly value: readonly unknown[];
|
|
141
|
+
} | {
|
|
142
|
+
readonly ok: false;
|
|
143
|
+
readonly error: {
|
|
144
|
+
readonly category: string;
|
|
145
|
+
readonly reason: string;
|
|
146
|
+
};
|
|
147
|
+
}>;
|
|
148
|
+
readonly getTeamWorkItemAgePercentiles: (id: number, range?: {
|
|
149
|
+
readonly startDate: string;
|
|
150
|
+
readonly endDate: string;
|
|
151
|
+
}) => Promise<{
|
|
152
|
+
readonly ok: true;
|
|
153
|
+
readonly value: readonly unknown[];
|
|
154
|
+
} | {
|
|
155
|
+
readonly ok: false;
|
|
156
|
+
readonly error: {
|
|
157
|
+
readonly category: string;
|
|
158
|
+
readonly reason: string;
|
|
159
|
+
};
|
|
160
|
+
}>;
|
|
161
|
+
readonly getPortfolioWorkItemAgePercentiles: (id: number, range?: {
|
|
162
|
+
readonly startDate: string;
|
|
163
|
+
readonly endDate: string;
|
|
138
164
|
}) => Promise<{
|
|
139
165
|
readonly ok: true;
|
|
140
166
|
readonly value: readonly unknown[];
|
package/dist/index.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ type McpToolResult = {
|
|
|
15
15
|
readonly content: readonly McpToolContent[];
|
|
16
16
|
};
|
|
17
17
|
type McpToolDefinition = {
|
|
18
|
-
readonly name: "lighthouse_health_check" | "lighthouse_version_get" | "lighthouse_worktracking_list" | "lighthouse_worktracking_get" | "lighthouse_team_list" | "lighthouse_team_get" | "lighthouse_team_refresh" | "lighthouse_portfolio_list" | "lighthouse_portfolio_get" | "lighthouse_portfolio_refresh" | "lighthouse_team_metrics_throughput" | "lighthouse_team_metrics_cycleTimePercentiles" | "lighthouse_team_metrics_workItemAge" | "lighthouse_team_metrics_totalWorkItemAge" | "lighthouse_portfolio_metrics_throughput" | "lighthouse_portfolio_metrics_workItemAge" | "lighthouse_portfolio_metrics_totalWorkItemAge" | "lighthouse_team_metrics_cumulativeStateTime" | "lighthouse_team_metrics_cumulativeStateTimeItems" | "lighthouse_team_metrics_cumulativeStateTimeCandidates" | "lighthouse_portfolio_metrics_cumulativeStateTime" | "lighthouse_portfolio_metrics_cumulativeStateTimeItems" | "lighthouse_portfolio_metrics_cumulativeStateTimeCandidates" | "lighthouse_feature_get" | "lighthouse_feature_workitems" | "lighthouse_delivery_list" | "lighthouse_blackout_list" | "lighthouse_blackout_create" | "lighthouse_blackout_update" | "lighthouse_blackout_delete" | "lighthouse_forecast_manual" | "lighthouse_forecast_backtest";
|
|
18
|
+
readonly name: "lighthouse_health_check" | "lighthouse_version_get" | "lighthouse_worktracking_list" | "lighthouse_worktracking_get" | "lighthouse_team_list" | "lighthouse_team_get" | "lighthouse_team_refresh" | "lighthouse_portfolio_list" | "lighthouse_portfolio_get" | "lighthouse_portfolio_refresh" | "lighthouse_team_metrics_throughput" | "lighthouse_team_metrics_cycleTimePercentiles" | "lighthouse_team_metrics_workItemAgePercentiles" | "lighthouse_portfolio_metrics_workItemAgePercentiles" | "lighthouse_team_metrics_workItemAge" | "lighthouse_team_metrics_totalWorkItemAge" | "lighthouse_portfolio_metrics_throughput" | "lighthouse_portfolio_metrics_workItemAge" | "lighthouse_portfolio_metrics_totalWorkItemAge" | "lighthouse_team_metrics_cumulativeStateTime" | "lighthouse_team_metrics_cumulativeStateTimeItems" | "lighthouse_team_metrics_cumulativeStateTimeCandidates" | "lighthouse_portfolio_metrics_cumulativeStateTime" | "lighthouse_portfolio_metrics_cumulativeStateTimeItems" | "lighthouse_portfolio_metrics_cumulativeStateTimeCandidates" | "lighthouse_feature_get" | "lighthouse_feature_workitems" | "lighthouse_delivery_list" | "lighthouse_blackout_list" | "lighthouse_blackout_create" | "lighthouse_blackout_update" | "lighthouse_blackout_delete" | "lighthouse_forecast_manual" | "lighthouse_forecast_backtest";
|
|
19
19
|
readonly description: string;
|
|
20
20
|
readonly inputSchema: {
|
|
21
21
|
readonly type: "object";
|
|
@@ -135,6 +135,32 @@ type McpRuntimeClient = {
|
|
|
135
135
|
readonly getTeamCycleTimePercentiles: (id: number, range?: {
|
|
136
136
|
readonly startDate: string;
|
|
137
137
|
readonly endDate: string;
|
|
138
|
+
}, definitionId?: number) => Promise<{
|
|
139
|
+
readonly ok: true;
|
|
140
|
+
readonly value: readonly unknown[];
|
|
141
|
+
} | {
|
|
142
|
+
readonly ok: false;
|
|
143
|
+
readonly error: {
|
|
144
|
+
readonly category: string;
|
|
145
|
+
readonly reason: string;
|
|
146
|
+
};
|
|
147
|
+
}>;
|
|
148
|
+
readonly getTeamWorkItemAgePercentiles: (id: number, range?: {
|
|
149
|
+
readonly startDate: string;
|
|
150
|
+
readonly endDate: string;
|
|
151
|
+
}) => Promise<{
|
|
152
|
+
readonly ok: true;
|
|
153
|
+
readonly value: readonly unknown[];
|
|
154
|
+
} | {
|
|
155
|
+
readonly ok: false;
|
|
156
|
+
readonly error: {
|
|
157
|
+
readonly category: string;
|
|
158
|
+
readonly reason: string;
|
|
159
|
+
};
|
|
160
|
+
}>;
|
|
161
|
+
readonly getPortfolioWorkItemAgePercentiles: (id: number, range?: {
|
|
162
|
+
readonly startDate: string;
|
|
163
|
+
readonly endDate: string;
|
|
138
164
|
}) => Promise<{
|
|
139
165
|
readonly ok: true;
|
|
140
166
|
readonly value: readonly unknown[];
|
package/dist/index.js
CHANGED
|
@@ -159,7 +159,37 @@ var toolDefinitions = [
|
|
|
159
159
|
},
|
|
160
160
|
{
|
|
161
161
|
name: "lighthouse_team_metrics_cycleTimePercentiles",
|
|
162
|
-
description: "Get cycle-time percentiles for a team by ID, optionally filtered by start and end dates.",
|
|
162
|
+
description: "Get cycle-time percentiles for a team by ID, optionally filtered by start and end dates. Pass definitionId to get the percentiles for a named cycle time (premium) instead of the default cycle time.",
|
|
163
|
+
inputSchema: {
|
|
164
|
+
type: "object",
|
|
165
|
+
properties: {
|
|
166
|
+
...idInputSchema.properties,
|
|
167
|
+
...dateRangeProperties,
|
|
168
|
+
definitionId: {
|
|
169
|
+
type: "number",
|
|
170
|
+
description: "Optional named cycle time definition ID; omit for the default cycle time."
|
|
171
|
+
}
|
|
172
|
+
},
|
|
173
|
+
required: ["id"],
|
|
174
|
+
additionalProperties: false
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
name: "lighthouse_team_metrics_workItemAgePercentiles",
|
|
179
|
+
description: "Get work-item age percentiles for a team by ID, optionally filtered by start and end dates.",
|
|
180
|
+
inputSchema: {
|
|
181
|
+
type: "object",
|
|
182
|
+
properties: {
|
|
183
|
+
...idInputSchema.properties,
|
|
184
|
+
...dateRangeProperties
|
|
185
|
+
},
|
|
186
|
+
required: ["id"],
|
|
187
|
+
additionalProperties: false
|
|
188
|
+
}
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
name: "lighthouse_portfolio_metrics_workItemAgePercentiles",
|
|
192
|
+
description: "Get work-item age percentiles for a portfolio by ID, optionally filtered by start and end dates.",
|
|
163
193
|
inputSchema: {
|
|
164
194
|
type: "object",
|
|
165
195
|
properties: {
|
|
@@ -480,6 +510,13 @@ var getNumericId = (argumentsPayload) => {
|
|
|
480
510
|
}
|
|
481
511
|
return null;
|
|
482
512
|
};
|
|
513
|
+
var getDefinitionId = (argumentsPayload) => {
|
|
514
|
+
if (typeof argumentsPayload !== "object" || argumentsPayload === null || Array.isArray(argumentsPayload)) {
|
|
515
|
+
return void 0;
|
|
516
|
+
}
|
|
517
|
+
const value = argumentsPayload.definitionId;
|
|
518
|
+
return typeof value === "number" && Number.isInteger(value) ? value : void 0;
|
|
519
|
+
};
|
|
483
520
|
var isObjectRecord = (value) => {
|
|
484
521
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
485
522
|
};
|
|
@@ -563,6 +600,17 @@ var toolInputSchemas = {
|
|
|
563
600
|
view: z.enum(["raw", "filtered"]).optional()
|
|
564
601
|
}),
|
|
565
602
|
lighthouse_team_metrics_cycleTimePercentiles: z.object({
|
|
603
|
+
id: z.number().int(),
|
|
604
|
+
startDate: isoDateStringSchema.optional(),
|
|
605
|
+
endDate: isoDateStringSchema.optional(),
|
|
606
|
+
definitionId: z.number().int().optional()
|
|
607
|
+
}),
|
|
608
|
+
lighthouse_team_metrics_workItemAgePercentiles: z.object({
|
|
609
|
+
id: z.number().int(),
|
|
610
|
+
startDate: isoDateStringSchema.optional(),
|
|
611
|
+
endDate: isoDateStringSchema.optional()
|
|
612
|
+
}),
|
|
613
|
+
lighthouse_portfolio_metrics_workItemAgePercentiles: z.object({
|
|
566
614
|
id: z.number().int(),
|
|
567
615
|
startDate: isoDateStringSchema.optional(),
|
|
568
616
|
endDate: isoDateStringSchema.optional()
|
|
@@ -802,7 +850,12 @@ var createMcpCoreRuntime = (dependencies) => ({
|
|
|
802
850
|
return getErrorToolResult("team metrics: invalid id");
|
|
803
851
|
}
|
|
804
852
|
const range = getDateRange(argumentsPayload);
|
|
805
|
-
const
|
|
853
|
+
const definitionId = getDefinitionId(argumentsPayload);
|
|
854
|
+
const result = await client.getTeamCycleTimePercentiles(
|
|
855
|
+
id,
|
|
856
|
+
range,
|
|
857
|
+
definitionId
|
|
858
|
+
);
|
|
806
859
|
if (result.ok) {
|
|
807
860
|
return getSuccessToolResult(
|
|
808
861
|
`team cycleTimePercentiles: ${encodePayload(result.value)}`
|
|
@@ -812,6 +865,38 @@ var createMcpCoreRuntime = (dependencies) => ({
|
|
|
812
865
|
`team metrics: ${result.error.category} (${result.error.reason})`
|
|
813
866
|
);
|
|
814
867
|
}
|
|
868
|
+
if (name === "lighthouse_team_metrics_workItemAgePercentiles") {
|
|
869
|
+
const id = getNumericId(argumentsPayload);
|
|
870
|
+
if (id === null) {
|
|
871
|
+
return getErrorToolResult("team metrics: invalid id");
|
|
872
|
+
}
|
|
873
|
+
const range = getDateRange(argumentsPayload);
|
|
874
|
+
const result = await client.getTeamWorkItemAgePercentiles(id, range);
|
|
875
|
+
if (result.ok) {
|
|
876
|
+
return getSuccessToolResult(
|
|
877
|
+
`team workItemAgePercentiles: ${encodePayload(result.value)}`
|
|
878
|
+
);
|
|
879
|
+
}
|
|
880
|
+
return getErrorToolResult(
|
|
881
|
+
`team metrics: ${result.error.category} (${result.error.reason})`
|
|
882
|
+
);
|
|
883
|
+
}
|
|
884
|
+
if (name === "lighthouse_portfolio_metrics_workItemAgePercentiles") {
|
|
885
|
+
const id = getNumericId(argumentsPayload);
|
|
886
|
+
if (id === null) {
|
|
887
|
+
return getErrorToolResult("portfolio metrics: invalid id");
|
|
888
|
+
}
|
|
889
|
+
const range = getDateRange(argumentsPayload);
|
|
890
|
+
const result = await client.getPortfolioWorkItemAgePercentiles(id, range);
|
|
891
|
+
if (result.ok) {
|
|
892
|
+
return getSuccessToolResult(
|
|
893
|
+
`portfolio workItemAgePercentiles: ${encodePayload(result.value)}`
|
|
894
|
+
);
|
|
895
|
+
}
|
|
896
|
+
return getErrorToolResult(
|
|
897
|
+
`portfolio metrics: ${result.error.category} (${result.error.reason})`
|
|
898
|
+
);
|
|
899
|
+
}
|
|
815
900
|
if (name === "lighthouse_team_metrics_cumulativeStateTime") {
|
|
816
901
|
const id = getNumericId(argumentsPayload);
|
|
817
902
|
if (id === null) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@letpeoplework/lighthouse-mcp-core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "Shared MCP semantics for Lighthouse",
|
|
5
5
|
"repository": "https://github.com/LetPeopleWork/lighthouse-clients",
|
|
6
6
|
"type": "module",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
27
27
|
"@toon-format/toon": "^2.1.0",
|
|
28
28
|
"zod": "^3.24.1",
|
|
29
|
-
"@letpeoplework/lighthouse-client": "1.
|
|
29
|
+
"@letpeoplework/lighthouse-client": "1.4.0"
|
|
30
30
|
},
|
|
31
31
|
"scripts": {
|
|
32
32
|
"build": "tsup src/index.ts --format esm,cjs --dts --clean",
|