You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -362,7 +362,7 @@ This project uses [Sentry](https://sentry.io/) for error monitoring and diagnost
362
362
- Error logs may include details such as error messages, stack traces, and (in some cases) file paths or project names. You can review the sources in this repository to see exactly what is logged.
363
363
364
364
### Opting Out of Sentry
365
-
- If you do not wish to send error logs to Sentry, you can opt out by setting the environment variable `SENTRY_DISABLED=true`.
365
+
- If you do not wish to send error logs to Sentry, you can opt out by setting the environment variable `XCODEBUILDMCP_SENTRY_DISABLED=true`.
366
366
367
367
Example MCP client configuration:
368
368
```json
@@ -375,7 +375,7 @@ Example MCP client configuration:
Copy file name to clipboardExpand all lines: docs/TOOLS.md
+14-16Lines changed: 14 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,12 @@
1
1
# XcodeBuildMCP Tools Reference
2
2
3
-
XcodeBuildMCP provides 61 tools organized into 12 workflow groups for comprehensive Apple development workflows.
3
+
XcodeBuildMCP provides 59 tools organized into 12 workflow groups for comprehensive Apple development workflows.
4
4
5
5
## Key Changes (v1.11+)
6
6
7
7
**Unified Tool Architecture**: Tools that previously had separate variants (e.g., `build_sim_id`, `build_sim_name`) have been consolidated into unified tools that accept either parameter using XOR validation.
8
8
9
-
**XOR Parameter Pattern**: Many tools now use mutually exclusive parameters (e.g., `simulatorId` OR `simulatorName`, never both) enforced via Zod schema refinements. This reduces the total tool count from ~85 to 61 while maintaining full functionality.
9
+
**XOR Parameter Pattern**: Many tools now use mutually exclusive parameters (e.g., `simulatorId` OR `simulatorName`, never both) enforced via Zod schema refinements. This reduces the total tool count from ~85 to 59 while maintaining full functionality.
10
10
11
11
## Workflow Groups
12
12
@@ -27,21 +27,19 @@ XcodeBuildMCP provides 61 tools organized into 12 workflow groups for comprehens
27
27
-`test_device` - Runs tests for an Apple project or workspace on a physical device (iPhone, iPad, Apple Watch, Apple TV, Apple Vision Pro) using xcodebuild test and parses xcresult output. Provide exactly one of projectPath or workspacePath.
28
28
29
29
### iOS Simulator Development (`simulator`)
30
-
**Purpose**: Complete iOS development workflow for both .xcodeproj and .xcworkspace files targeting simulators. Build, test, deploy, and interact with iOS apps on simulators. (13 tools)
30
+
**Purpose**: Complete iOS development workflow for both .xcodeproj and .xcworkspace files targeting simulators. Build, test, deploy, and interact with iOS apps on simulators. (11 tools)
31
31
32
32
-`boot_sim` - Boots an iOS simulator. After booting, use open_sim() to make the simulator visible.
33
-
-`build_run_simulator` - Builds and runs an app from a project or workspace on a specific simulator by UUID or name. Provide exactly one of projectPath or workspacePath, and exactly one of simulatorId or simulatorName.
34
-
-`build_simulator` - Builds an app from a project or workspace for a specific simulator by UUID or name. Provide exactly one of projectPath or workspacePath, and exactly one of simulatorId or simulatorName.
35
-
-`get_simulator_app_path` - Gets the app bundle path for a simulator by UUID or name using either a project or workspace file.
33
+
-`build_run_sim` - Builds and runs an app from a project or workspace on a specific simulator by UUID or name. Provide exactly one of projectPath or workspacePath, and exactly one of simulatorId or simulatorName.
34
+
-`build_sim` - Builds an app from a project or workspace for a specific simulator by UUID or name. Provide exactly one of projectPath or workspacePath, and exactly one of simulatorId or simulatorName.
35
+
-`get_sim_app_path` - Gets the app bundle path for a simulator by UUID or name using either a project or workspace file.
36
36
-`install_app_sim` - Installs an app in an iOS simulator.
37
37
-`launch_app_logs_sim` - Launches an app in an iOS simulator and captures its logs.
38
-
-`launch_app_sim` - Launches an app in an iOS simulator. If simulator window isn't visible, use open_sim() first. IMPORTANT: You MUST provide both the simulatorUuid and bundleId parameters. Note: You must install the app in the simulator before launching. The typical workflow is: build → install → launch. Example: launch_app_sim({ simulatorUuid: 'YOUR_UUID_HERE', bundleId: 'com.example.MyApp' })
39
-
-`launch_app_sim_name` - Launches an app in an iOS simulator by simulator name. If simulator window isn't visible, use open_sim() first. IMPORTANT: You MUST provide both the simulatorName and bundleId parameters. Note: You must install the app in the simulator before launching. The typical workflow is: build → install → launch. Example: launch_app_sim_name({ simulatorName: 'iPhone 16', bundleId: 'com.example.MyApp' })
38
+
-`launch_app_sim` - Launches an app in an iOS simulator by UUID or name. If simulator window isn't visible, use open_sim() first. or launch_app_sim({ simulatorName: 'iPhone 16', bundleId: 'com.example.MyApp' })
40
39
-`list_sims` - Lists available iOS simulators with their UUIDs.
41
40
-`open_sim` - Opens the iOS Simulator app.
42
-
-`stop_app_sim` - Stops an app running in an iOS simulator. Requires simulatorUuid and bundleId.
43
-
-`stop_app_sim_name` - Stops an app running in an iOS simulator by simulator name. IMPORTANT: You MUST provide both the simulatorName and bundleId parameters.
44
-
-`test_simulator` - Runs tests on a simulator by UUID or name using xcodebuild test and parses xcresult output. Works with both Xcode projects (.xcodeproj) and workspaces (.xcworkspace).
41
+
-`stop_app_sim` - Stops an app running in an iOS simulator by UUID or name. or stop_app_sim({ simulatorName: "iPhone 16", bundleId: "com.example.MyApp" })
42
+
-`test_sim` - Runs tests on a simulator by UUID or name using xcodebuild test and parses xcresult output. Works with both Xcode projects (.xcodeproj) and workspaces (.xcworkspace).
45
43
46
44
### Log Capture & Management (`logging`)
47
45
**Purpose**: Log capture and management tools for iOS simulators and physical devices. Start, stop, and analyze application and system logs during development and testing. (4 tools)
@@ -56,7 +54,7 @@ XcodeBuildMCP provides 61 tools organized into 12 workflow groups for comprehens
56
54
57
55
-`build_macos` - Builds a macOS app using xcodebuild from a project or workspace. Provide exactly one of projectPath or workspacePath. Example: build_macos({ projectPath: '/path/to/MyProject.xcodeproj', scheme: 'MyScheme' })
58
56
-`build_run_macos` - Builds and runs a macOS app from a project or workspace in one step. Provide exactly one of projectPath or workspacePath. Example: build_run_macos({ projectPath: '/path/to/MyProject.xcodeproj', scheme: 'MyScheme' })
59
-
-`get_macos_app_path` - Gets the app bundle path for a macOS application using either a project or workspace. Provide exactly one of projectPath or workspacePath. Example: get_macos_app_path({ projectPath: '/path/to/project.xcodeproj', scheme: 'MyScheme' })
57
+
-`get_mac_app_path` - Gets the app bundle path for a macOS application using either a project or workspace. Provide exactly one of projectPath or workspacePath. Example: get_mac_app_path({ projectPath: '/path/to/project.xcodeproj', scheme: 'MyScheme' })
60
58
-`launch_mac_app` - Launches a macOS application. Note: In some environments, this tool may be prefixed as mcp0_launch_macos_app.
61
59
-`stop_mac_app` - Stops a running macOS application. Can stop by app name or process ID.
62
60
-`test_macos` - Runs tests for a macOS project or workspace using xcodebuild test and parses xcresult output. Provide exactly one of projectPath or workspacePath.
@@ -84,9 +82,9 @@ XcodeBuildMCP provides 61 tools organized into 12 workflow groups for comprehens
84
82
### Simulator Management (`simulator-management`)
85
83
**Purpose**: Tools for managing simulators from booting, opening simulators, listing simulators, stopping simulators and setting simulator environment options like location, network, statusbar and appearance. (4 tools)
86
84
87
-
-`reset_simulator_location` - Resets the simulator's location to default.
85
+
-`reset_sim_location` - Resets the simulator's location to default.
88
86
-`set_sim_appearance` - Sets the appearance mode (dark/light) of an iOS simulator.
89
-
-`set_simulator_location` - Sets a custom GPS location for the simulator.
87
+
-`set_sim_location` - Sets a custom GPS location for the simulator.
90
88
-`sim_statusbar` - Sets the data network indicator in the iOS simulator status bar. Use "clear" to reset all overrides, or specify a network type (hide, wifi, 3g, 4g, lte, lte-a, lte+, 5g, 5g+, 5g-uwb, 5g-uc).
91
89
92
90
### Swift Package Manager (`swift-package`)
@@ -123,10 +121,10 @@ XcodeBuildMCP provides 61 tools organized into 12 workflow groups for comprehens
0 commit comments