Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Control Xcode directly via JXA for build, test, debug operations with XCLogParser integration
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"xcodemcp": {
"command": "npx",
"args": [
"-y",
"xcodemcp"
]
}
}
}Run this in your terminal
claude mcp add xcodemcp -- npx -y xcodemcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"xcodemcp": {
"command": "npx",
"args": [
"-y",
"xcodemcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"xcodemcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"xcodemcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account lapfelix, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (2.1.4) reached the registry 14 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Recta
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Cheaper cross-chain stablecoin routes for AI agents; 5 % of the verified saving, nothing if none.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Using with Apple's Official Xcode MCP: Apple now provides an official Xcode MCP server. XcodeMCP can run alongside it in sidekick mode (
--sidekick-only), providing complementary tools like project management and XCResult analysis. In a future version, XcodeMCP will transition to sidekick-only mode by default. See configuration below.
Model Context Protocol (MCP) server that controls Xcode directly through JavaScript for Automation (JXA). Available as both an MCP server and a standalone CLI.
brew install xclogparserXcodeMCP can be used in two ways:
xcodecontrolXCLogParser is recommended but optional:
brew install xclogparser
Run directly with npx:
npx -y xcodemcp@latest
Or install globally:
npm install -g xcodemcp
Add to your MCP configuration:
{
"mcpServers": { "xcodemcp": { "command": "npx", "args": ["-y", "xcodemcp@latest"], "env": { } } } }
To add XcodeMCP to Claude Code using the command line:
claude mcp add-json XcodeMCP '{
"command": "npx", "args": ["-y", "xcodemcp@latest"], "env": { } }'
To add XcodeMCP to Claude Code using the command line:
claude mcp add-json XcodeMCP '{
"command": "npx", "args": ["-y", "xcodemcp@latest", "--no-clean"], "env": { } }'
For projects where you're working with a single xcodeproj and scheme, you can configure preferred values to make tool parameters optional:
claude mcp add-json XcodeMCP '{
"command": "npx", "args": ["-y", "xcodemcp@latest"], "env": { "XCODE_MCP_PREFERRED_SCHEME": "MyApp", "XCODE_MCP_PREFERRED_XCODEPROJ": "MyApp.xcodeproj" } }'
With preferred values configured:
If /mcp in Claude Code indicates the MCP failed, try running it from the project folder manually to see what the output is: npx -y xcodemcp@latest
When using XcodeMCP alongside Apple's official Xcode MCP server, enable sidekick mode to only include complementary tools:
This excludes build/run/test/debug tools that Apple's MCP handles natively.
First, enable Xcode Tools in Xcode > Settings > Intelligence > Model Context Protocol.
Then add both Apple's Xcode MCP and XcodeMCP in sidekick mode:
# Add Apple's official Xcode MCP
claude mcp add --transport stdio xcode -- xcrun mcpbridge
claude mcp add-json xcodemcp '{"command": "npx", "args": ["-y", "xcodemcp@latest", "--sidekick-only"]}'
{
"mcpServers": { "xcode": { "command": "xcrun", "args": ["mcpbridge"] }, "xcodemcp": { "command": "npx", "args": ["-y", "xcodemcp@latest", "--sidekick-only"] } } }
Future direction: In a future version, XcodeMCP will transition to sidekick-only mode by default, focusing exclusively on tools that complement Apple's official Xcode MCP rather than duplicating functionality.
For local development:
git clone https://github.com/lapfelix/XcodeMCP.git
cd XcodeMCP npm install
npm run dev:ts
npm run build npm start
XcodeMCP includes a powerful CLI that provides 100% feature parity with the MCP server, allowing you to run any tool as a one-shot command:
Install globally to use the CLI:
npm install -g xcodemcp
# Show help and available tools
xcodecontrol --help
xcodecontrol build --xcodeproj /path/to/Project.xcodeproj --scheme MyScheme
xcodecontrol build --help
xcodecontrol build --json-input '{"xcodeproj": "/path/to/Project.xcodeproj", "scheme": "MyScheme"}'
xcodecontrol --json health-check
The CLI supports both absolute and relative paths for convenience:
# Absolute paths (traditional)
xcodecontrol build --xcodeproj /Users/dev/MyApp/MyApp.xcodeproj --scheme MyApp
xcodecontrol build --xcodeproj MyApp.xcodeproj --scheme MyApp xcodecontrol build --xcodeproj ../OtherProject/OtherProject.xcodeproj --scheme OtherApp
xcodecontrol open-file --filePath src/ViewController.swift --lineNumber 42
Relative paths are resolved from your current working directory, making the CLI much more convenient to use when working within project directories.
Control logging output with verbosity flags:
# Verbose mode (shows INFO and DEBUG logs)
xcodecontrol -v build --xcodeproj /path/to/Project.xcodeproj --scheme MyScheme
xcodecontrol -q test --xcodeproj /path/to/Project.xcodeproj
xcodecontrol run --xcodeproj /path/to/Project.xcodeproj --scheme MyScheme
# Check system health
xcodecontrol health-check
xcodecontrol build --xcodeproj /Users/dev/MyApp/MyApp.xcodeproj --scheme MyApp
xcodecontrol run --xcodeproj /Users/dev/MyApp/MyApp.xcodeproj --scheme MyApp
xcodecontrol test --xcodeproj /Users/dev/MyApp/MyApp.xcodeproj
xcodecontrol clean --xcodeproj /Users/dev/MyApp/MyApp.xcodeproj
xcodecontrol xcresult-browse --xcresult-path /path/to/result.xcresult
xcodecontrol xcresult-get-ui-hierarchy --xcresult-path /path/to/result.xcresult --test-id "MyTest/testMethod()" --timestamp 30.5
CLI commands use kebab-case instead of underscores:
xcode_build → buildxcode_test → testxcode_build_and_run → build-and-runxcode_health_check → health-checkxcresult_browse → xcresult-browsefind_xcresults → find-xcresultsProject Management:
xcode_open_project - Open projects and workspacesxcode_get_workspace_info - Get workspace status and detailsxcode_get_projects - List projects in workspacexcode_open_file - Open files with optional line numberBuild Operations:
xcode_build - Build with detailed error parsingxcode_clean - Clean build artifactsxcode_test - Run tests with optional argumentsxcode_build_and_run - Build and run the active schemexcode_debug - Start debugging sessionxcode_stop - Stop current operationConfiguration:
xcode_get_schemes - List available schemesxcode_set_active_scheme - Switch active schemexcode_get_run_destinations - List simulators and devicesXCResult Analysis:
xcresult_browse - Browse test results and analyze failuresxcresult_browser_get_console - Get console output for specific testsxcresult_summary - Quick overview of test resultsxcresult_get_screenshot - Extract screenshots from test failuresxcresult_get_ui_hierarchy - Get UI hierarchy as AI-readable JSON with timestamp selectionxcresult_get_ui_element - Get detailed properties of specific UI elements by indexxcresult_list_attachments - List all attachments for a testxcresult_export_attachment - Export specific attachments from test resultsDiagnostics:
xcode_health_check - Environment validation and troubleshootingXcodeMCP provides comprehensive tools for analyzing Xcode test results (.xcresult files), making it easy to debug test failures and extract valuable information:
t=type, l=label, f=frame, c=children, j=index)# Browse test results
xcresult_browse "/path/to/TestResults.xcresult"
xcresult_browser_get_console "/p
Only the beginning is shown; read the rest in the repo