@burdenoff/mcp-libs 2026.805.2 → 2026.820.1
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/modules/govcitizenhub/index.cjs +18 -3
- package/dist/modules/govcitizenhub/index.cjs.map +1 -1
- package/dist/modules/govcitizenhub/index.js +18 -3
- package/dist/modules/govcitizenhub/index.js.map +1 -1
- package/dist/modules/mybodyshield/index.cjs +40 -17
- package/dist/modules/mybodyshield/index.cjs.map +1 -1
- package/dist/modules/mybodyshield/index.js +40 -17
- package/dist/modules/mybodyshield/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -378,7 +378,8 @@ function registerProgramTools(server, ctx, track) {
|
|
|
378
378
|
{
|
|
379
379
|
title: "Get Training Program",
|
|
380
380
|
description: "Fetch a single Mybodyshield training program by ID, including its nested workouts and exercises.",
|
|
381
|
-
inputSchema: { id: zod.z.string().describe("Program ID") }
|
|
381
|
+
inputSchema: { id: zod.z.string().describe("Program ID") },
|
|
382
|
+
annotations: { readOnlyHint: true }
|
|
382
383
|
},
|
|
383
384
|
async ({ id }) => {
|
|
384
385
|
try {
|
|
@@ -404,7 +405,8 @@ function registerProgramTools(server, ctx, track) {
|
|
|
404
405
|
limit: zod.z.number().int().optional().describe("Page size (default 50)"),
|
|
405
406
|
offset: zod.z.number().int().optional().describe("Pagination offset (default 0)"),
|
|
406
407
|
cursor: zod.z.string().optional().describe("Opaque pagination cursor")
|
|
407
|
-
}
|
|
408
|
+
},
|
|
409
|
+
annotations: { readOnlyHint: true }
|
|
408
410
|
},
|
|
409
411
|
async ({ memberId, status, limit, offset, cursor }) => {
|
|
410
412
|
try {
|
|
@@ -598,7 +600,8 @@ function registerWorkoutTools(server, ctx, track) {
|
|
|
598
600
|
{
|
|
599
601
|
title: "List Program Workouts",
|
|
600
602
|
description: "List the workouts for a program (ordered), each with its nested exercises.",
|
|
601
|
-
inputSchema: { programId: zod.z.string().describe("Program ID") }
|
|
603
|
+
inputSchema: { programId: zod.z.string().describe("Program ID") },
|
|
604
|
+
annotations: { readOnlyHint: true }
|
|
602
605
|
},
|
|
603
606
|
async ({ programId }) => {
|
|
604
607
|
try {
|
|
@@ -713,7 +716,8 @@ function registerSessionTools(server, ctx, track) {
|
|
|
713
716
|
{
|
|
714
717
|
title: "Get Workout Session",
|
|
715
718
|
description: "Fetch a single workout session by ID, including its logged sets.",
|
|
716
|
-
inputSchema: { id: zod.z.string().describe("Workout session ID") }
|
|
719
|
+
inputSchema: { id: zod.z.string().describe("Workout session ID") },
|
|
720
|
+
annotations: { readOnlyHint: true }
|
|
717
721
|
},
|
|
718
722
|
async ({ id }) => {
|
|
719
723
|
try {
|
|
@@ -739,7 +743,8 @@ function registerSessionTools(server, ctx, track) {
|
|
|
739
743
|
limit: zod.z.number().int().optional().describe("Page size (default 50)"),
|
|
740
744
|
offset: zod.z.number().int().optional().describe("Pagination offset (default 0)"),
|
|
741
745
|
cursor: zod.z.string().optional().describe("Opaque pagination cursor")
|
|
742
|
-
}
|
|
746
|
+
},
|
|
747
|
+
annotations: { readOnlyHint: true }
|
|
743
748
|
},
|
|
744
749
|
async ({ programId, status, limit, offset, cursor }) => {
|
|
745
750
|
try {
|
|
@@ -865,7 +870,8 @@ function registerNutritionTools(server, ctx, track) {
|
|
|
865
870
|
{
|
|
866
871
|
title: "Get Nutrition Plan",
|
|
867
872
|
description: "Fetch a single nutrition plan by ID, including its logged meals.",
|
|
868
|
-
inputSchema: { id: zod.z.string().describe("Nutrition plan ID") }
|
|
873
|
+
inputSchema: { id: zod.z.string().describe("Nutrition plan ID") },
|
|
874
|
+
annotations: { readOnlyHint: true }
|
|
869
875
|
},
|
|
870
876
|
async ({ id }) => {
|
|
871
877
|
try {
|
|
@@ -887,7 +893,8 @@ function registerNutritionTools(server, ctx, track) {
|
|
|
887
893
|
description: "Fetch the active nutrition plan for a member (defaults to the calling actor when memberId is omitted). Returns null when there's no active plan.",
|
|
888
894
|
inputSchema: {
|
|
889
895
|
memberId: zod.z.string().optional().describe("Member (user) ID (default: calling actor)")
|
|
890
|
-
}
|
|
896
|
+
},
|
|
897
|
+
annotations: { readOnlyHint: true }
|
|
891
898
|
},
|
|
892
899
|
async ({ memberId }) => {
|
|
893
900
|
try {
|
|
@@ -1016,7 +1023,11 @@ function registerNutritionTools(server, ctx, track) {
|
|
|
1016
1023
|
{
|
|
1017
1024
|
title: "Activate Nutrition Plan",
|
|
1018
1025
|
description: "Make a nutrition plan the active plan for its member (deactivating any other active plan).",
|
|
1019
|
-
inputSchema: { id: zod.z.string().describe("Nutrition plan ID") }
|
|
1026
|
+
inputSchema: { id: zod.z.string().describe("Nutrition plan ID") },
|
|
1027
|
+
// BOFF-3859: activation implicitly deactivates the prior active plan, so
|
|
1028
|
+
// this is a destructive side-effect mutation despite the absence of a
|
|
1029
|
+
// `delete` segment in the tool name.
|
|
1030
|
+
annotations: { destructiveHint: true }
|
|
1020
1031
|
},
|
|
1021
1032
|
async ({ id }) => {
|
|
1022
1033
|
try {
|
|
@@ -1038,7 +1049,8 @@ function registerNutritionTools(server, ctx, track) {
|
|
|
1038
1049
|
inputSchema: {
|
|
1039
1050
|
memberId: zod.z.string().optional().describe("Member (user) ID (default: calling actor)"),
|
|
1040
1051
|
date: zod.z.string().optional().describe("Day to roll up (ISO-8601 DateTime; default: today)")
|
|
1041
|
-
}
|
|
1052
|
+
},
|
|
1053
|
+
annotations: { readOnlyHint: true }
|
|
1042
1054
|
},
|
|
1043
1055
|
async ({ memberId, date }) => {
|
|
1044
1056
|
try {
|
|
@@ -1065,7 +1077,8 @@ function registerMealTools(server, ctx, track) {
|
|
|
1065
1077
|
limit: zod.z.number().int().optional().describe("Page size (default 50)"),
|
|
1066
1078
|
offset: zod.z.number().int().optional().describe("Pagination offset (default 0)"),
|
|
1067
1079
|
cursor: zod.z.string().optional().describe("Opaque pagination cursor")
|
|
1068
|
-
}
|
|
1080
|
+
},
|
|
1081
|
+
annotations: { readOnlyHint: true }
|
|
1069
1082
|
},
|
|
1070
1083
|
async ({ planId, mealType, limit, offset, cursor }) => {
|
|
1071
1084
|
try {
|
|
@@ -1139,7 +1152,11 @@ function registerMealTools(server, ctx, track) {
|
|
|
1139
1152
|
{
|
|
1140
1153
|
title: "Delete Meal Log",
|
|
1141
1154
|
description: "Delete a logged meal by ID. Returns true on success.",
|
|
1142
|
-
inputSchema: { id: zod.z.string().describe("Meal log ID") }
|
|
1155
|
+
inputSchema: { id: zod.z.string().describe("Meal log ID") },
|
|
1156
|
+
// BOFF-3859: hard delete of a logged meal. The name heuristic already
|
|
1157
|
+
// treats `*_delete` as destructive, but we declare it explicitly for the
|
|
1158
|
+
// audit trail.
|
|
1159
|
+
annotations: { destructiveHint: true }
|
|
1143
1160
|
},
|
|
1144
1161
|
async ({ id }) => {
|
|
1145
1162
|
try {
|
|
@@ -1162,7 +1179,8 @@ function registerGoalTools(server, ctx, track) {
|
|
|
1162
1179
|
{
|
|
1163
1180
|
title: "Get Goal",
|
|
1164
1181
|
description: "Fetch a single goal by ID.",
|
|
1165
|
-
inputSchema: { id: zod.z.string().describe("Goal ID") }
|
|
1182
|
+
inputSchema: { id: zod.z.string().describe("Goal ID") },
|
|
1183
|
+
annotations: { readOnlyHint: true }
|
|
1166
1184
|
},
|
|
1167
1185
|
async ({ id }) => {
|
|
1168
1186
|
try {
|
|
@@ -1188,7 +1206,8 @@ function registerGoalTools(server, ctx, track) {
|
|
|
1188
1206
|
limit: zod.z.number().int().optional().describe("Page size (default 50)"),
|
|
1189
1207
|
offset: zod.z.number().int().optional().describe("Pagination offset (default 0)"),
|
|
1190
1208
|
cursor: zod.z.string().optional().describe("Opaque pagination cursor")
|
|
1191
|
-
}
|
|
1209
|
+
},
|
|
1210
|
+
annotations: { readOnlyHint: true }
|
|
1192
1211
|
},
|
|
1193
1212
|
async ({ memberId, status, limit, offset, cursor }) => {
|
|
1194
1213
|
try {
|
|
@@ -1336,7 +1355,8 @@ function registerMetricTools(server, ctx, track) {
|
|
|
1336
1355
|
limit: zod.z.number().int().optional().describe("Page size (default 50)"),
|
|
1337
1356
|
offset: zod.z.number().int().optional().describe("Pagination offset (default 0)"),
|
|
1338
1357
|
cursor: zod.z.string().optional().describe("Opaque pagination cursor")
|
|
1339
|
-
}
|
|
1358
|
+
},
|
|
1359
|
+
annotations: { readOnlyHint: true }
|
|
1340
1360
|
},
|
|
1341
1361
|
async ({ memberId, type, limit, offset, cursor }) => {
|
|
1342
1362
|
try {
|
|
@@ -1397,7 +1417,8 @@ function registerRecoveryTools(server, ctx, track) {
|
|
|
1397
1417
|
inputSchema: {
|
|
1398
1418
|
memberId: zod.z.string().optional().describe("Filter by member (user) ID"),
|
|
1399
1419
|
metric: RecoveryMetricEnum.optional().describe("Filter by recovery metric")
|
|
1400
|
-
}
|
|
1420
|
+
},
|
|
1421
|
+
annotations: { readOnlyHint: true }
|
|
1401
1422
|
},
|
|
1402
1423
|
async ({ memberId, metric }) => {
|
|
1403
1424
|
try {
|
|
@@ -1454,7 +1475,8 @@ function registerCoachingTools(server, ctx, track) {
|
|
|
1454
1475
|
inputSchema: {
|
|
1455
1476
|
memberId: zod.z.string().optional().describe("Filter by member (user) ID"),
|
|
1456
1477
|
status: CoachingStatusEnum.optional().describe("Filter by coaching status")
|
|
1457
|
-
}
|
|
1478
|
+
},
|
|
1479
|
+
annotations: { readOnlyHint: true }
|
|
1458
1480
|
},
|
|
1459
1481
|
async ({ memberId, status }) => {
|
|
1460
1482
|
try {
|
|
@@ -1540,7 +1562,8 @@ function registerHealthTools(server, ctx, track) {
|
|
|
1540
1562
|
{
|
|
1541
1563
|
title: "Mybodyshield Health Check",
|
|
1542
1564
|
description: "Public liveness/identity probe for the Mybodyshield subgraph (mybHealth). Requires no authentication.",
|
|
1543
|
-
inputSchema: {}
|
|
1565
|
+
inputSchema: {},
|
|
1566
|
+
annotations: { readOnlyHint: true }
|
|
1544
1567
|
},
|
|
1545
1568
|
async () => {
|
|
1546
1569
|
try {
|