-
-
Notifications
You must be signed in to change notification settings - Fork 193
Description
Bug Description
NOTE
Everything below this is generated with Claude Code. It looks correct on review but please flag if anything is wrong.
AI GENERATED
Description
When XcodeBuildMCP is installed via Smithery, the UI automation tools (describe_ui, tap, swipe, etc.) fail with the error:
Bundled axe tool not found. UI automation features are not available.
This is likely an installation issue with the npm package.
Please reinstall xcodebuildmcp or report this issue.
Environment
- XcodeBuildMCP version: 1.15.1
- Installation method: Smithery
- macOS version: Darwin 25.1.0 (arm64)
- axe version: v1.2.1 (installed via Homebrew at
/opt/homebrew/bin/axe)
Root Cause Analysis
The server looks for the bundled axe binary at a path relative to the entry point:
// From index.cjs (minified)
O7 = path.join(dirname(dirname(process.argv[1])), "bundled", "axe")When installed via Smithery, the cached installation at ~/.smithery/cache/servers/cameroncooke/xcodebuildmcp/current/ only contains:
- index.cjs
- manifest.json
- .metadata.json
The bundled/ directory with native binaries is not included in the Smithery cache.
Doctor Output Contradiction
Running doctor shows a contradiction:
Dependencies
- axe: ✅ v1.2.1 # System install detected
UI Automation (axe)
- Available: ❌ No # Bundled binary not found
- UI Automation Supported: ❌ No
Workaround
Creating a symlink from the expected bundled location to the system-installed axe resolves the issue:
mkdir -p ~/.smithery/cache/servers/cameroncooke/xcodebuildmcp/bundled
ln -sf /opt/homebrew/bin/axe ~/.smithery/cache/servers/cameroncooke/xcodebuildmcp/bundled/axe
Suggested Fix
Consider one of these approaches:
- Fallback to system axe: If the bundled binary isn't found, check if axe is available in PATH and use that instead
- Smithery packaging: Ensure the Smithery package includes the bundled binaries
- Documentation: Add a note about this limitation when using Smithery installation
Option 1 seems most robust since users who install via Homebrew (brew tap cameroncooke/axe && brew install axe) would have a working system binary available.
Debug Output
Unneeded, fix is covered in the body.
Editor/Client
Claude Code
MCP Server Version
1.15.1
LLM
4.5 Opus
MCP Configuration
Steps to Reproduce
use the describe_ui tool
Expected Behavior
It should have been able to use the tool.
Actual Behavior
Instead the tool failed due to a linking error with the axe executable.