Xcode MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PROJECTS_BASE_DIR | No | Path to your Xcode projects directory |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| set_projects_base_dirC | Sets the base directory where your Xcode projects are stored. |
| set_project_pathA | Sets the active Xcode project by specifying the path to its .xcodeproj directory. |
| get_active_projectB | Retrieves detailed information about the currently active Xcode project. |
| find_projectsB | Finds Xcode projects in the specified directory. |
| change_directoryA | Changes the active directory for relative path operations. |
| push_directoryA | Pushes the current directory onto a stack and changes to a new directory. |
| pop_directoryA | Pops a directory from the stack and changes to it. |
| get_current_directoryB | Returns the current active directory. |
| get_project_configurationA | Retrieves configuration details for the active project, including schemes and targets. |
| detect_active_projectB | Attempts to automatically detect the active Xcode project. |
| add_file_to_projectC | Adds a file to the active Xcode project. |
| create_workspaceA | Creates a new Xcode workspace and optionally adds existing projects to it. |
| add_project_to_workspaceB | Adds an existing project to the active workspace. |
| create_xcode_projectB | Creates a new Xcode project using a template. |
| read_fileA | Reads the contents of a file within the active project or allowed directories. |
| write_fileA | Writes or updates the content of a file within the active project or allowed directories. |
| copy_fileB | Copies a file or directory to a new location within allowed directories. |
| move_fileB | Moves a file or directory to a new location within allowed directories. |
| delete_fileA | Deletes a file or directory within allowed directories. |
| create_directoryC | Creates a new directory within allowed directories. |
| list_project_filesC | Lists all files within an Xcode project. |
| list_directoryB | Lists the contents of a directory, showing both files and subdirectories. |
| get_file_infoC | Gets detailed information about a file or directory. |
| find_filesB | Searches for files matching a pattern in a directory. |
| resolve_pathB | Resolves a path, taking into account the active directory and current project. |
| check_file_existsA | Checks if a file or directory exists at the specified path. |
| search_in_filesB | Searches for text content within files in a directory. |
| analyze_fileB | Analyzes a source file for potential issues using Xcode's static analyzer. |
| build_projectA | Builds the active Xcode project using the specified configuration and scheme. |
| run_testsB | Executes tests for the active Xcode project. |
| list_available_destinationsA | Lists available build destinations for the active Xcode project or workspace. |
| list_available_schemesA | Lists all available schemes in the active Xcode project or workspace. |
| clean_projectA | Cleans the build directory for the active Xcode project. |
| archive_projectB | Archives the active Xcode project for distribution. |
| pod_installA | Runs 'pod install' in the active project directory to install CocoaPods dependencies. |
| pod_updateC | Runs 'pod update' in the active project directory to update CocoaPods dependencies. |
| pod_outdatedA | Shows outdated pods in the current project and their available updates. |
| pod_repo_updateB | Updates the local clone of the CocoaPods spec repositories. |
| pod_deintegrateA | Deintegrate CocoaPods from the active project, removing all traces of CocoaPods. |
| check_cocoapodsA | Checks if the active project uses CocoaPods and returns setup information. |
| pod_initB | Generate a Podfile for the current project directory. |
| init_swift_packageA | Initializes a new Swift Package Manager project in the current directory. Use this tool first if your project doesn't have a Package.swift file yet and you want to start using Swift packages. |
| add_swift_packageA | Adds a Swift Package dependency to the active project. Note: Your project must already be set up for Swift Package Manager (must have a Package.swift file). If you haven't initialized SPM yet, use the init_swift_package tool first. |
| remove_swift_packageA | Removes a Swift Package dependency from the active project. |
| edit_package_swiftA | Directly edit the Package.swift file of the active SPM project. This is useful for making changes that aren't supported by the other SPM tools. |
| build_spm_packageA | Builds a Swift Package Manager package directly using 'swift build' instead of Xcode. |
| test_spm_packageB | Runs tests for a Swift Package Manager package directly using 'swift test' instead of Xcode. |
| get_package_infoC | Gets detailed information about a Swift Package Manager package. |
| update_swift_packageB | Updates the dependencies of your Swift project using Swift Package Manager. |
| swift_package_commandC | Executes Swift Package Manager commands in the active project directory. |
| build_swift_packageC | Builds a Swift Package using Swift Package Manager. |
| test_swift_packageC | Tests a Swift Package using Swift Package Manager. |
| show_swift_dependenciesB | Shows the resolved dependencies of a Swift Package. |
| clean_swift_packageA | Cleans the build artifacts of a Swift Package. |
| dump_swift_packageA | Dumps the Package.swift manifest as JSON. |
| generate_swift_docsB | Generates documentation for a Swift Package using DocC. |
| list_booted_simulatorsA | List all currently booted iOS simulators |
| list_simulatorsA | List all available iOS simulators with filtering options |
| boot_simulatorA | Boot an iOS simulator by UDID or name |
| shutdown_simulatorA | Shutdown a simulator by UDID, or shutdown all running simulators |
| install_appB | Install an app on a simulator |
| launch_appB | Launch an installed app on a simulator |
| terminate_appB | Terminate a running app on a simulator |
| open_urlB | Open a URL in a simulator |
| take_screenshotB | Take a screenshot of a simulator |
| reset_simulatorA | Reset a simulator by erasing all content and settings |
| list_installed_appsA | List all installed applications on a simulator |
| run_xcrunC | Executes a specified Xcode tool via xcrun |
| compile_asset_catalogB | Compiles an asset catalog (.xcassets) using actool |
| run_lldbC | Launches the LLDB debugger with optional arguments |
| trace_appB | Captures a performance trace of an application using xctrace |
| get_xcode_infoA | Get information about Xcode installations on the system |
| switch_xcodeB | Switch the active Xcode version |
| export_archiveB | Export an Xcode archive for distribution (App Store, Ad Hoc, Enterprise, Development) |
| validate_appA | Validate an app for App Store submission using altool |
| generate_icon_setA | Generate an app icon set from a source image |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/r-huijts/xcode-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server