-
-
Notifications
You must be signed in to change notification settings - Fork 175
Description
Description
Building a CocoaPods-based iOS project via build_sim (or build_run_sim) fails with xcfilelist path errors, even though the same project builds successfully with native xcodebuild.
Environment
- XcodeBuildMCP version: 1.15.1
- Xcode version: 26.2 (Build 17C52)
- macOS: Darwin 25.2.0 (arm64, Apple M4 Max)
- Node.js: v22.17.0
Setup
We configured session defaults:
workspacePath: /Users/.../neat-photo/NeatApp.xcworkspace
scheme: NeatPhoto-Local
simulatorId: A7121CCC-2EC1-40E0-B235-349FCE43A5CC
useLatestOS: true
Error
When running build_run_sim or build_sim, we get errors like:
error: Unable to load contents of file list: '/Target Support Files/FirebaseAnalytics/FirebaseAnalytics-xcframeworks-input-files.xcfilelist' (in target 'FirebaseAnalytics' from project 'Pods')
Note the path starts with /Target Support Files/... instead of the full path. The files exist at:
/Users/.../neat-photo/Pods/Target Support Files/FirebaseAnalytics/FirebaseAnalytics-xcframeworks-input-files.xcfilelist
Native xcodebuild works
Running the same build directly from the terminal succeeds:
cd /Users/.../neat-photo
xcodebuild -workspace NeatApp.xcworkspace -scheme NeatPhoto-Local \
-destination 'platform=iOS Simulator,name=iPhone 16 Pro,OS=18.5' build
# ** BUILD SUCCEEDED **Suspected Cause
After reviewing the source code, it appears xcodebuild may not be invoked with cwd set to the project directory. In src/utils/build-utils.ts, projectDir is extracted from the workspace path but only used for xcodemake operations, not passed to the command executor for xcodebuild.
In src/utils/command.ts, the spawn options use cwd: opts?.cwd which defaults to undefined (inheriting the MCP server's working directory rather than the project directory).
Possible Fix
Pass the project directory as cwd when executing xcodebuild:
await executor(command, platformOptions.logPrefix, true, { ...execOpts, cwd: projectDir })Questions
- Are we missing a configuration option to set the working directory?
- Is there a workaround for CocoaPods projects?
- Is this a known limitation?
Thanks for the great tool! The UI automation and simulator management features work wonderfully - we just can't get the build step working for our CocoaPods project.