Skip to content

Commit 8407273

Browse files
committed
docs: add MCP resources documentation and client compatibility matrix
- Update README with comprehensive MCP feature compatibility table for all major editors - Add new "MCP Resources" section explaining efficient URI-based data access - Document VS Code, Cursor, Windsurf, Claude Code, and Claude Desktop support levels - Explain automatic fallback behavior and smart tool filtering - Update tool count from 84 to 105+ tools to reflect current state - Add MCP Feature Compatibility section to table of contents - Clarify difference between tools (function calls) and resources (URI access)
1 parent 2c7f716 commit 8407273

1 file changed

Lines changed: 30 additions & 2 deletions

File tree

README.md

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,11 @@ A Model Context Protocol (MCP) server that provides Xcode-related tools for inte
1616
- [Simulator management](#simulator-management)
1717
- [Device management](#device-management)
1818
- [App utilities](#app-utilities)
19+
- [MCP Resources](#mcp-resources)
1920
- [Getting started](#getting-started)
2021
- [Prerequisites](#prerequisites)
2122
- [Configure your MCP client](#configure-your-mcp-client)
23+
- [MCP Feature Compatibility](#mcp-feature-compatibility)
2224
- [Quick install](#quick-install)
2325
- [Manual installation](#manual-installation)
2426
- [Alternative installation method using mise](#alternative-installation-method-using-mise)
@@ -40,7 +42,7 @@ A Model Context Protocol (MCP) server that provides Xcode-related tools for inte
4042

4143
## Overview
4244

43-
XcodeBuildMCP is a Model Context Protocol (MCP) server that exposes Xcode operations as tools for AI assistants and other MCP clients. Built with a modern plugin architecture, it provides 84 self-contained tools organized into workflow-based directories, enabling programmatic interaction with Xcode projects, simulators, devices, and Swift packages through a standardized interface.
45+
XcodeBuildMCP is a Model Context Protocol (MCP) server that exposes Xcode operations as tools and resources for AI assistants and other MCP clients. Built with a modern plugin architecture, it provides 105+ self-contained tools organized into workflow-based directories, plus MCP resources for efficient data access, enabling programmatic interaction with Xcode projects, simulators, devices, and Swift packages through a standardized interface.
4446

4547
![xcodebuildmcp2](https://github.com/user-attachments/assets/8961d5db-f7ed-4e60-bbb8-48bfd0bc1353)
4648
<caption>Using Cursor to build, install, and launch an app on the iOS simulator while capturing logs at run-time.</caption>
@@ -92,7 +94,15 @@ The XcodeBuildMCP server provides the following tool capabilities:
9294
- Launch apps on simulators, physical devices, and macOS
9395
- Stop running apps with process ID or bundle ID management
9496
- Process monitoring and control for comprehensive app management
95-
-
97+
98+
### MCP Resources
99+
100+
For clients that support MCP resources (VS Code, Claude Code, Claude Desktop), XcodeBuildMCP provides efficient URI-based data access:
101+
102+
- **Simulators Resource** (`mcp://xcodebuild/simulators`): Direct access to available iOS simulators with UUIDs and states
103+
- **Automatic Fallback**: Clients without resource support automatically use equivalent tool-based APIs
104+
- **Smart Filtering**: Redundant tools are filtered out when resources are available to prevent duplicate functionality
105+
96106
> [!IMPORTANT]
97107
> Please note that XcodeBuildMCP will request xcodebuild to skip macro validation. This is to avoid errors when building projects that use Swift Macros.
98108
@@ -106,6 +116,24 @@ The XcodeBuildMCP server provides the following tool capabilities:
106116

107117
### Configure your MCP client
108118

119+
#### MCP Feature Compatibility
120+
121+
XcodeBuildMCP supports both MCP tools and resources. Different editors have varying levels of MCP feature support:
122+
123+
| Editor | Tools | Resources | Notes |
124+
|--------|-------|-----------|-------|
125+
| **VS Code** ||| Full MCP specification support |
126+
| **Cursor** ||| Tools only - resources not supported |
127+
| **Windsurf** ||| Tools and discovery only |
128+
| **Claude Code** ||| Full support for resources, tools, and routes |
129+
| **Claude Desktop** ||| Full support for resources, tools, and prompts |
130+
131+
**Resources vs Tools:**
132+
- **Tools**: Function-based API calls (e.g., `list_sims()` to get simulator list)
133+
- **Resources**: Efficient data access via URIs (e.g., `mcp://xcodebuild/simulators` for simulator data)
134+
135+
XcodeBuildMCP automatically detects your client's capabilities and provides the most appropriate interface. Clients with resource support get efficient URI-based data access, while others fall back to traditional tool calls.
136+
109137
#### Quick install
110138

111139
For a quick install, you can use the following links:

0 commit comments

Comments
 (0)