Skip to main content
Glama

build_run_sim_id_ws

Build and run apps from an Xcode workspace on a specific simulator by specifying workspacePath, scheme, and simulator UUID. Supports custom build configurations and derived data paths.

Instructions

Builds and runs an app from a workspace on a simulator specified by UUID. IMPORTANT: Requires workspacePath, scheme, and simulatorId. Example: build_run_sim_id_ws({ workspacePath: '/path/to/workspace', scheme: 'MyScheme', simulatorId: 'SIMULATOR_UUID' })

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
configurationNoBuild configuration (Debug, Release, etc.)
derivedDataPathNoPath where build products and other derived data will go
extraArgsNoAdditional xcodebuild arguments
preferXcodebuildNoIf true, prefers xcodebuild over the experimental incremental build system, useful for when incremental build system fails.
schemeYesThe scheme to use (Required)
simulatorIdYesUUID of the simulator to use (obtained from listSimulators) (Required)
useLatestOSNoWhether to use the latest OS version for the named simulator
workspacePathYesPath to the .xcworkspace file (Required)
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that the tool 'builds and runs' an app, implying a mutation/write operation, but doesn't disclose critical behavioral traits such as whether this is a long-running process, potential side effects (e.g., overwriting previous builds), authentication needs, error handling, or output format. The example helps but doesn't compensate for the lack of transparency in a complex 8-parameter tool with no annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with two sentences: one stating the purpose and one providing requirements and an example. It's front-loaded with the core functionality, and the example adds practical value without unnecessary verbosity. Every sentence earns its place, though the structure could be slightly improved by separating requirements more clearly from the example.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (8 parameters, no annotations, no output schema), the description is moderately complete. It covers the basic purpose and required parameters but lacks details on behavioral aspects, output expectations, and differentiation from siblings. For a build-and-run tool with significant parameters and no structured safety hints, the description should provide more context about execution flow, success/failure indicators, and environmental prerequisites to be fully adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, meaning all parameters are well-documented in the input schema itself. The description adds minimal value beyond the schema by listing the three required parameters in the text and providing an example that shows their usage. However, it doesn't explain parameter interactions, dependencies, or provide additional context beyond what's already in the schema descriptions. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Builds and runs an app from a workspace on a simulator specified by UUID.' It specifies the verb ('builds and runs'), resource ('app from a workspace'), and target ('simulator specified by UUID'), making the action clear. However, it doesn't explicitly differentiate from sibling tools like 'build_run_sim_name_ws' (which uses simulator name instead of UUID) or 'build_dev_ws' (which targets a device), leaving room for improvement in sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides some usage context by listing required parameters (workspacePath, scheme, simulatorId) and giving an example, which implies when to use this tool. However, it doesn't explicitly state when to choose this tool over alternatives (e.g., vs. 'build_run_sim_name_ws' for UUID-based vs. name-based simulator targeting, or vs. 'build_run_mac_ws' for macOS builds). The guidance is implied rather than explicit, lacking clear when/when-not directives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Related Tools

Latest Blog Posts

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/getsentry/XcodeBuildMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server