Skip to content

fix: repair broken examples and graduate UV runtime#206

Open
bryan-anthropic wants to merge 1 commit intomainfrom
worktree-fix-examples-uv-graduation
Open

fix: repair broken examples and graduate UV runtime#206
bryan-anthropic wants to merge 1 commit intomainfrom
worktree-fix-examples-uv-graduation

Conversation

@bryan-anthropic
Copy link
Collaborator

Summary

  • hello-world-node (examples/hello-world-node installs but does not function on Claude desktop #200): Server crashes on initialize in Claude Desktop because server.connect(transport) was not awaited. Wrapped in async main() with proper error handling.
  • hello-world-uv: mcpb pack fails because v0.4 schema requires mcp_config but the example omitted it. Added the required mcp_config block with uv run pattern.
  • file-manager-python (Error of building DXT for examples/file-manager-python #47, Python File manager MCP example server doesn't run #72): Multiple failures — v0.1 manifest with privacy_policies (schema violation), command: "python" (ENOENT on macOS), no bundled deps. Converted to v0.4/uv runtime with proper mcp_config, cleaned up pyproject.toml, added .mcpbignore.
  • UV graduation: Removed "experimental" labels from UV runtime across docs (MANIFEST.md, README.md) and schema comments.
  • Default version bump: DEFAULT_MANIFEST_VERSION from "0.2" to "0.3" (v0.3 has been stable since Feb 2026).

Verification

All three examples smoke-tested locally:

Example mcpb pack MCP initialize (stdio) tools/list
hello-world-node 496.6kB, 4 files responds correctly n/a (tested separately)
hello-world-uv 2.5kB, 5 files responds correctly 1 tool (say_hello)
file-manager-python 2.2kB, 3 files responds correctly 3 tools
  • 109/109 tests pass
  • No schema drift (JSON schemas regenerated cleanly)

Closes #200, closes #47, closes #72.

🤖 Generated with Claude Code

- hello-world-node: wrap server startup in async main() with proper
  await on server.connect(transport) — fixes crash on initialize in
  Claude Desktop UtilityProcess runtime (closes #200)
- hello-world-uv: add required mcp_config block — v0.4 schema requires
  it but the example omitted it, causing mcpb pack to fail
- file-manager-python: convert from broken v0.1/python to v0.4/uv —
  the old manifest had privacy_policies on v0.1 (schema violation),
  used command "python" (ENOENT on macOS), and had no bundled deps.
  Now uses UV runtime with proper mcp_config (closes #47, closes #72)
- Graduate UV runtime from experimental across docs and schema comments
- Bump DEFAULT_MANIFEST_VERSION from 0.2 to 0.3

All three examples verified: pack succeeds, server responds to MCP
initialize over stdio, tools/list returns expected tools.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant