Commit ac8c2d9
fix: align MCPB manifest with Claude Desktop's 0.2 routing
Surfaced when Disconnect started failing in Claude Desktop with
`Invalid server ID format. Expected UUID or mcpsrv_* tagged ID.`
on the new install. The error endpoint was the cloud logout API
(`/api/.../mcp/logout/<server-id>`) — that path validates server
IDs as UUID or `mcpsrv_*` and rejects our slug name.
Compared our manifest against `local.mcpb.automattic.context-a8c`
(another Automattic MCPB on the same machine that disconnects
cleanly). Differences:
- We generated `manifest_version: 0.3`; context-a8c is `0.2`. Claude
Desktop's 0.3 handling appears to route disconnect through a
different code path that's broken for slug-named bundles.
- We were missing `display_name`. Without it Claude Desktop's UI
falls back to `name` (the long machine slug) for both display AND
internal routing, hitting the cloud-logout validator.
- We were missing `license`, `homepage`, `repository`, and
`compatibility.claude_desktop` / `compatibility.platforms` —
fields context-a8c declares.
Fix: align the manifest shape with context-a8c's known-working
pattern. `manifest_version` pinned to `0.2`; `display_name` now
populated as "WooCommerce for Claude — <hostname>" so the UI has a
human label distinct from the machine slug; standard `license` /
`homepage` / `repository` metadata included; `compatibility` expanded
with `claude_desktop` floor and platform list.
Verified the rebuilt manifest renders correctly via
`McpbBundle::manifest()` — all expected fields present, `name` slug
unchanged, `display_name` interpolates the store hostname.
User needs to:
1. Manually remove the broken extension dir (Claude Desktop's
disconnect button is still broken for the existing 0.3 install,
so the workaround stands for THIS install — see PR description)
2. Reinstall the freshly-built woocommerce-claude.zip
3. Try Disconnect on the new bundle to confirm the fix
303 PHPUnit tests still pass; PHPCS clean.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent ffb9291 commit ac8c2d9
1 file changed
Lines changed: 44 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
28 | 36 | | |
29 | 37 | | |
30 | | - | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
31 | 45 | | |
32 | 46 | | |
33 | 47 | | |
| |||
84 | 98 | | |
85 | 99 | | |
86 | 100 | | |
87 | | - | |
88 | | - | |
89 | | - | |
90 | | - | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
91 | 106 | | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
92 | 118 | | |
93 | 119 | | |
94 | 120 | | |
| |||
99 | 125 | | |
100 | 126 | | |
101 | 127 | | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
102 | 134 | | |
103 | 135 | | |
104 | 136 | | |
| |||
117 | 149 | | |
118 | 150 | | |
119 | 151 | | |
120 | | - | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
121 | 159 | | |
122 | 160 | | |
123 | 161 | | |
| |||
0 commit comments