MCP server for Xcode build errors and debug output integration
Server has 11 tools with explicit schemas and descriptions visible in source. However, critical gaps limit production readiness: (1) Most descriptions are generic and under 100 chars, lacking WHEN/WHY context for LLM selection. (2) Parameter descriptions are minimal or absent, e.g., 'device_udid' has no format guidance. (3) No output schemas documented, LLMs cannot predict response structure for chaining. (4) No error handling guidance, tools return raw failures without recovery hints. (5) Several tools conflate concerns (watch_builds, get_live_build_errors) and lack clear differentiation. (6) No pagination support despite tools returning lists. Naming is generally good (verb_noun pattern), but descriptions and schemas fall short of production baseline (94% of A+ tools have full param descriptions; this server ~30%).
Analyze an Xcode project for common issues and patterns
Get current build errors and warnings from Xcode
Get list of connected iOS devices
Get recent console output and debug logs from Xcode
Get debug logs from a specific device, optionally filtered by app bundle ID
Get logs from a specific connected iOS device or simulator
Get live build errors from console monitoring
No output schemas documented. LLMs cannot predict response structure, breaking tool chaining and forcing agents to guess field names for downstream calls.
Parameter descriptions are minimal or missing. 'device_udid' has no format guidance (UUID? hex string?). 'filter_text' lacks examples of what patterns work. LLMs cannot infer valid input without explicit descriptions.
Tool descriptions lack WHEN/WHY context. 'Get live build errors from console monitoring' does not explain when to use this vs get_build_errors, or what 'live' means. LLMs cannot disambiguate similar tools.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 49 | <=2025-11-25 | v2 |
List recently built Xcode projects
Read a file from the current Xcode project
Save current device logs to a file
Start watching for new Xcode builds and errors
No error handling guidance. Tools return failures without recovery hints. E.g., if get_device_logs fails because device is offline, the LLM has no guidance to call get_connected_devices first.
No pagination support. list_recent_projects and get_console_logs return lists but lack limit/offset and total_count. Large result sets will blow context windows.