Skip to content

fix(mcpb): default bundle tools to empty array when omitted - #791

Open
syf2211 wants to merge 1 commit into
arcadeai-labs:mainfrom
syf2211:fix/770-empty-tools-bundle
Open

fix(mcpb): default bundle tools to empty array when omitted#791
syf2211 wants to merge 1 commit into
arcadeai-labs:mainfrom
syf2211:fix/770-empty-tools-bundle

Conversation

@syf2211

@syf2211 syf2211 commented Jun 27, 2026

Copy link
Copy Markdown

Summary

When publishing a .mcpb bundle whose manifest omits the tools key, getBundleDeployPayload produced a serverCard with only serverInfo. The Smithery registry rejects that payload with 400 {"error":"No values to set"}.

This change always includes tools in the deploy payload, defaulting to an empty array when the manifest does not declare tools.

Motivation

Fixes #770. Users reported publish failures for valid stdio bundles unless they manually edited manifest.json to add "tools": []. Issue comments traced the root cause to conditional spreading in getBundleDeployPayload.

Changes

  • Default serverCard.tools to [] when manifest.tools is omitted
  • Add unit tests for omitted and explicit tools manifest values

Tests

  • pnpm test src/lib/__tests__/mcpb/get-bundle-deploy-payload.test.ts — 2 passed
  • pnpm test — 399 passed
  • pnpm run check — passed
  • pnpm run typecheck — passed

Notes

  • Explicit tools: [] in the manifest behaves the same as before
  • prompts and resources remain optional; only tools needed defaulting for the reported registry validation error
Bundles without a tools key produced a serverCard with only serverInfo,
which the Smithery registry rejects with "No values to set". Default to
an empty tools array so stdio bundles can publish without manifest edits.

Fixes arcadeai-labs#770
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant