Skip to main content
Glama
drewster99

xcode-mcp-server (drewster99)

by drewster99

get_build_errors

Read-onlyIdempotent

Retrieve build errors and warnings from the last Xcode build for a given project or workspace. Optionally filter output using regex and control line count.

Instructions

Get the build errors from the last build for the specified Xcode project or workspace.

Args:
    project_path: Path to an Xcode project or workspace directory.
    include_warnings: Include warnings in output. If not provided, uses global setting.
    regex_filter: Optional regex to filter error/warning lines
    max_lines: Maximum number of error/warning lines to show (default 25)

Returns:
    If no build has been performed: Returns plain text message.
    Otherwise, returns JSON string with format:
    {
        "full_log_path": "~/Library/Caches/xcode-mcp-server/logs/build-{hash}.txt",
        "summary": {"total_errors": N, "total_warnings": M, "showing_errors": X, "showing_warnings": Y},
        "errors_and_warnings": "Build succeeded/failed with N errors...

error: ... ..." } Output is filtered using regex patterns to match compiler errors/warnings, with errors prioritized over warnings. Includes full unfiltered log file for complete analysis.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_pathYes
include_warningsNo
regex_filterNo
max_linesNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

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

Annotations declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, which already indicate safe behavior. The description adds context such as conditional return formats (plain text vs JSON), error/warning prioritization, full log file path, and filtering behavior, providing valuable details beyond annotations.

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

Conciseness3/5

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

The description is moderately concise with a clear Args/Returns structure, but the Returns section is lengthy and could be trimmed for better conciseness without losing essential information.

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

Completeness4/5

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

Given 4 parameters, existing output schema, and annotations, the description covers the return format comprehensively for both cases (no build vs build performed) and explains parameter behaviors like default for max_lines and global setting for include_warnings. Minor missing explanation of 'global setting' prevents a perfect score.

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?

With 0% schema description coverage, the description provides brief but adequate semantics for all four parameters: project_path (path to directory), include_warnings (defaults to global setting), regex_filter (optional), max_lines (default 25). However, 'global setting' is not explained, and details are minimal.

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 the verb 'Get' and the resource 'build errors from the last build for the specified Xcode project or workspace.', which is specific and distinct from sibling tools like 'get_build_results' or 'build_project'.

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 implies it should be used after a build to retrieve errors, and mentions behavior when no build exists, but does not explicitly compare to alternatives like 'get_build_results' or provide when-not-to-use guidance.

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/drewster99/xcode-mcp-server'

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