Connections & Capabilities
Connects To
Capabilities
Quickstart
Install
npx tscConfig
{
"mcpServers": {
"xcode": {
"command": "node",
"args": ["/path/to/xcode-mcp-server/dist/index.js"]
}
}
}Exposed MCP Tools (12)
create_xcode_projectCreates a new Xcode project from a template.
Creates new files and directories, modifying the file system.
add_swift_packageAdds a Swift Package dependency to the project.
Modifies the project configuration by adding a dependency.
read_fileReads the content of a file.
Read-only operation, no side effects.
write_fileWrites content to a file, creating it if it doesn't exist.
Modifies the file system by writing to files.
search_in_filesSearches for text content within files using patterns and regex.
Read-only operation, no side effects.
build_projectBuilds the Xcode project with specified scheme and configuration.
Executes build commands that can modify the file system.
test_projectRuns tests for the Xcode project with detailed failure reporting.
Executes test commands that can modify the file system.
list_simulatorsLists available iOS simulators with detailed information.
Read-only operation, no side effects.
boot_simulatorBoots a specified iOS simulator.
Starts a simulator, potentially consuming system resources.
shutdown_simulatorShuts down a specified iOS simulator.
Stops a simulator, potentially disrupting ongoing processes.
install_app_on_simulatorInstalls an application on a specified iOS simulator.
Installs an app, modifying the simulator's state.
xcrunExecutes Xcode commands via xcrun.
Can execute arbitrary Xcode commands, potentially leading to system modifications.
Safety Assessment
This server provides powerful Xcode integration but requires careful configuration to mitigate risks. It is safe when used with trusted AI assistants and well-defined project directories. It becomes risky when exposed to untrusted agents or when handling sensitive data without proper access controls.
- Path validation restricts file access to configured project directories.
- Debug logging is configurable and can be disabled.
- Implements Model Context Protocol (MCP) for standardized interaction.
- Clear separation of concerns in project structure.
- Allows file read and write operations, potentially leading to data modification or exfiltration.
- Executes Xcode commands via `xcrun`, which could be exploited if commands are not carefully validated.
- CocoaPods and Swift Package Manager integration could introduce vulnerabilities through dependencies.
- No built-in authentication mechanism beyond environment variables.
