@burdenoff/mcp-libs 2026.825.3 → 2026.902.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.
@@ -1747,7 +1747,8 @@ function registerProjectTools(server, ctx, track) {
1747
1747
  {
1748
1748
  title: "Archive Project",
1749
1749
  description: "Archive a project (soft-close without deleting).",
1750
- inputSchema: { id: z.string().describe("Project ID") }
1750
+ inputSchema: { id: z.string().describe("Project ID") },
1751
+ annotations: { destructiveHint: true }
1751
1752
  },
1752
1753
  async ({ id }) => {
1753
1754
  try {
@@ -3234,7 +3235,8 @@ function registerExpenseTools(server, ctx, track) {
3234
3235
  inputSchema: {
3235
3236
  id: z.string().describe("Expense ID"),
3236
3237
  workspaceId: z.string().describe("Workspace ID")
3237
- }
3238
+ },
3239
+ annotations: { destructiveHint: true }
3238
3240
  },
3239
3241
  async ({ id, workspaceId }) => {
3240
3242
  try {
@@ -3260,7 +3262,8 @@ function registerExpenseTools(server, ctx, track) {
3260
3262
  id: z.string().describe("Expense ID"),
3261
3263
  workspaceId: z.string().describe("Workspace ID"),
3262
3264
  reason: z.string().optional().describe("Rejection reason")
3263
- }
3265
+ },
3266
+ annotations: { destructiveHint: true }
3264
3267
  },
3265
3268
  async ({ id, workspaceId, reason }) => {
3266
3269
  try {
@@ -3441,7 +3444,8 @@ function registerApprovalTools(server, ctx, track) {
3441
3444
  inputSchema: {
3442
3445
  id: z.string().describe("Approval request ID"),
3443
3446
  notes: z.string().optional().describe("Reviewer notes")
3444
- }
3447
+ },
3448
+ annotations: { destructiveHint: true }
3445
3449
  },
3446
3450
  async ({ id, notes }) => {
3447
3451
  try {
@@ -3466,7 +3470,8 @@ function registerApprovalTools(server, ctx, track) {
3466
3470
  inputSchema: {
3467
3471
  id: z.string().describe("Approval request ID"),
3468
3472
  reason: z.string().min(1).describe("Rejection reason")
3469
- }
3473
+ },
3474
+ annotations: { destructiveHint: true }
3470
3475
  },
3471
3476
  async ({ id, reason }) => {
3472
3477
  try {
@@ -3513,7 +3518,11 @@ function registerApprovalTools(server, ctx, track) {
3513
3518
  {
3514
3519
  title: "Withdraw Request",
3515
3520
  description: "Withdraw a pending time-approval request.",
3516
- inputSchema: { id: z.string().describe("Approval request ID") }
3521
+ inputSchema: { id: z.string().describe("Approval request ID") },
3522
+ // BOFF-3903: approve/reject already carry this annotation (prior fix);
3523
+ // withdraw cancels an in-flight approval workflow just as
3524
+ // consequentially and was missed by that pass.
3525
+ annotations: { destructiveHint: true }
3517
3526
  },
3518
3527
  async ({ id }) => {
3519
3528
  try {
@@ -3677,7 +3686,8 @@ function registerResourcingTools(server, ctx, track) {
3677
3686
  {
3678
3687
  title: "Activate Resource Plan",
3679
3688
  description: "Activate a resource plan by ID.",
3680
- inputSchema: { id: z.string().describe("Resource plan ID") }
3689
+ inputSchema: { id: z.string().describe("Resource plan ID") },
3690
+ annotations: { destructiveHint: true }
3681
3691
  },
3682
3692
  async ({ id }) => {
3683
3693
  try {
@@ -5296,7 +5306,8 @@ function registerChannelTools(server, ctx, track) {
5296
5306
  {
5297
5307
  title: "Sync Channel",
5298
5308
  description: "Trigger a sync for a tracking channel.",
5299
- inputSchema: { id: z.string().describe("Channel config ID") }
5309
+ inputSchema: { id: z.string().describe("Channel config ID") },
5310
+ annotations: { destructiveHint: true }
5300
5311
  },
5301
5312
  async ({ id }) => {
5302
5313
  try {
@@ -5934,7 +5945,8 @@ function registerConfigTools(server, ctx, track) {
5934
5945
  isSecret: z.boolean().optional()
5935
5946
  })
5936
5947
  ).min(1).describe("Configuration entries to set")
5937
- }
5948
+ },
5949
+ annotations: { destructiveHint: true }
5938
5950
  },
5939
5951
  async ({ inputs }) => {
5940
5952
  try {
@@ -6103,7 +6115,8 @@ function registerConfigTools(server, ctx, track) {
6103
6115
  {
6104
6116
  title: "Clear UI Session",
6105
6117
  description: "Clear the calling user\u2019s saved UI session.",
6106
- inputSchema: {}
6118
+ inputSchema: {},
6119
+ annotations: { destructiveHint: true }
6107
6120
  },
6108
6121
  async () => {
6109
6122
  try {