Create Simulator
simctl-createCreate iOS simulator devices for testing by specifying device type and optional runtime, defaulting to the latest iOS.
Instructions
simctl-create
Create new iOS simulator devices dynamically.
Overview
Creates a new iOS simulator device with specified device type and runtime version. Automatically validates device types and runtimes against available options, defaulting to the latest iOS version if no runtime is specified. Supports all device types including iPhone, iPad, Apple Watch, and Apple TV.
Parameters
Required
name (string): Display name for the new simulator (e.g., "MyTestDevice")
deviceType (string): Device type identifier (e.g., "iPhone 16 Pro", "iPad Pro")
Optional
runtime (string): iOS/runtime version (e.g., "17.0") - defaults to latest available
Returns
Creation status with new device UDID, device type, runtime version, success indicator, command output, and guidance for next steps (boot, delete, erase).
Examples
Create iPhone with latest iOS
await simctlCreateTool({
name: "TestiPhone",
deviceType: "iPhone 16 Pro"
});Create iPad with specific iOS version
await simctlCreateTool({
name: "TestiPad",
deviceType: "iPad Pro (12.9-inch)",
runtime: "17.0"
});Related Tools
simctl-list: See available device types and runtimes
simctl-boot: Boot newly created device
simctl-delete: Remove created device when done
Notes
Device types: iPhone, iPad, Apple Watch, Apple TV
Runtime defaults to latest available iOS version
Created device persists until explicitly deleted
UDID is auto-generated and returned in response
Useful for CI/CD pipelines and automated testing
Device type can be partial match (e.g., "iPhone 16" matches "iPhone 16 Pro")
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| runtime | No | ||
| deviceType | Yes |