Skip to main content
Glama
conorluddy

XC-MCP: XCode CLI wrapper

by conorluddy

xcodebuild-version

Get Xcode and SDK version information with structured JSON output. Validates installation and provides clear errors, ideal for CI/CD and environment validation.

Instructions

xcodebuild-version

Get Xcode and SDK version information with structured output

What it does

Retrieves comprehensive version information about your Xcode installation and available SDKs. Returns structured JSON data that's easy to parse and validate, eliminating the need to parse raw command-line output. Validates Xcode installation before execution to provide clear error messages if Xcode is not properly configured.

Why you'd use it

  • Validate environment before running builds or tests (CI/CD validation)

  • Check SDK availability for specific platform versions

  • Ensure consistent Xcode versions across team or build environments

  • Get structured version data for automated tooling and scripts

Parameters

Optional

  • sdk (string): Query specific SDK version (e.g., "iphoneos", "iphonesimulator")

  • outputFormat (string, default: 'json'): "json" or "text" output format

Returns

Structured JSON response containing Xcode version, build number, and SDK information. Falls back gracefully to text format for older Xcode versions that don't support JSON output.

Examples

Get Xcode version as JSON

const result = await xcodebuildVersionTool({ outputFormat: "json" });

Query specific SDK

const sdkInfo = await xcodebuildVersionTool({ sdk: "iphoneos" });
  • xcodebuild-showsdks: Show all available SDKs

  • xcodebuild-list: List project information

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sdkNo
outputFormatNojson
Behavior4/5

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

With no annotations, the description carries full burden. It discloses validation of Xcode installation and graceful fallback to text format for older versions. These are useful behavioral traits, though no side effects or destructive actions are expected.

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 well-organized with sections and examples, but slightly lengthy. Every sentence adds value, maintaining clarity without unnecessary verbosity.

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

Completeness5/5

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

Despite no output schema, the description adequately explains the return value: structured JSON with version info and fallback to text. All necessary information for a version retrieval tool is covered.

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

Parameters4/5

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

Schema coverage is 0%, so description compensates. It explains both parameters: 'sdk' for querying specific SDKs and 'outputFormat' with default 'json' and enum values. Examples and fallback behavior add context beyond schema.

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

Purpose5/5

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

The description clearly states 'Get Xcode and SDK version information' with a specific verb and resource. It distinguishes itself from sibling tools like xcodebuild-showsdks and xcodebuild-list by focusing on version retrieval.

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

Usage Guidelines4/5

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

The 'Why you'd use it' section provides clear use cases such as CI/CD validation and environment consistency. However, it does not explicitly state when not to use this tool or mention alternatives beyond related tools.

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

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/conorluddy/xc-mcp'

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