Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | Controls logging verbosity. Options: SILENT, ERROR, WARN, INFO, DEBUG | INFO |
| XCODEMCP_LOG_FILE | No | Optional file path for logging. Logs are written to the specified file in addition to stderr | |
| XCODEMCP_CONSOLE_LOGGING | No | Enable/disable console output. Set to 'false' to disable stderr logging | true |
Schema
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| xcode_open_project | Open an Xcode project or workspace |
| xcode_close_project | Close the currently active Xcode project or workspace (automatically stops any running actions first) |
| xcode_build | Build a specific Xcode project or workspace with the specified scheme. If destination is not provided, uses the currently active destination. |
| xcode_get_schemes | Get list of available schemes for a specific project |
| xcode_set_active_scheme | Set the active scheme for a specific project |
| xcode_clean | Clean the build directory for a specific project |
| xcode_test | Run tests for a specific project |
| xcode_run | Run a specific project with the specified scheme |
| xcode_debug | Start debugging session for a specific project |
| xcode_stop | Stop the current scheme action |
| find_xcresults | Find all XCResult files for a specific project with timestamps and file information |
| xcode_get_run_destinations | Get list of available run destinations for a specific project |
| xcode_get_workspace_info | Get information about a specific workspace |
| xcode_get_projects | Get list of projects in a specific workspace |
| xcode_open_file | Open a file in Xcode |
| xcode_health_check | Perform a comprehensive health check of the XcodeMCP environment and configuration |
| xcresult_browse | Browse XCResult files - list all tests or show details for a specific test. Returns comprehensive test results including pass/fail status, failure details, and browsing instructions. Large console output (>20 lines or >2KB) is automatically saved to a temporary file. |
| xcresult_browser_get_console | Get console output and test activities for a specific test in an XCResult file. Large output (>20 lines or >2KB) is automatically saved to a temporary file. |
| xcresult_summary | Get a quick summary of test results from an XCResult file |
| xcresult_get_screenshot | Get screenshot from a failed test at specific timestamp - extracts frame from video attachment using ffmpeg |
| xcresult_get_ui_hierarchy | Get UI hierarchy attachment from test. Returns raw accessibility tree (best for AI), slim AI-readable JSON (default), or full JSON. |
| xcresult_get_ui_element | Get full details of a specific UI element by index from a previously exported UI hierarchy JSON file |
| xcresult_list_attachments | List all attachments for a specific test - shows attachment names, types, and indices for export |
| xcresult_export_attachment | Export a specific attachment by index - can convert App UI hierarchy attachments to JSON |