Loading...
Loading...
Compare original and translation side by side
xcrun mcpbridgexcrun mcpbridgeclaude mcp add --transport stdio xcode -- xcrun mcpbridgeclaude mcp listxcodeclaude mcp add --transport stdio xcode -- xcrun mcpbridgeclaude mcp listxcodecodex mcp add xcode -- xcrun mcpbridgecodex mcp add xcode -- xcrun mcpbridge.cursor/mcp.json{
"mcpServers": {
"xcode": {
"command": "xcrun",
"args": ["mcpbridge"]
}
}
}structuredContentoutputSchema{
"mcpServers": {
"xcode": {
"command": "/path/to/XcodeMCPWrapper",
"args": []
}
}
}.cursor/mcp.json{
"mcpServers": {
"xcode": {
"command": "xcrun",
"args": ["mcpbridge"]
}
}
}outputSchemastructuredContent{
"mcpServers": {
"xcode": {
"command": "/path/to/XcodeMCPWrapper",
"args": []
}
}
}.vscode/mcp.json{
"servers": {
"xcode": {
"type": "stdio",
"command": "xcrun",
"args": ["mcpbridge"]
}
}
}.vscode/mcp.json{
"servers": {
"xcode": {
"type": "stdio",
"command": "xcrun",
"args": ["mcpbridge"]
}
}
}gemini mcp add xcode -- xcrun mcpbridgegemini mcp add xcode -- xcrun mcpbridgeXcodeListWindowstabIdentifier: <uuid>, workspacePath: /path/to/YourProject.xcodeprojXcodeListWindowstabIdentifier: <uuid>, workspacePath: /path/to/YourProject.xcodeprojxcode-selectxcode-selectMCP_XCODE_PIDundefinedMCP_XCODE_PIDundefinedundefinedundefinedMCP_XCODE_SESSION_IDMCP_XCODE_SESSION_IDdigraph troubleshoot {
rankdir=TB;
"Connection failed?" [shape=diamond];
"tools/list empty?" [shape=diamond];
"Wrong project?" [shape=diamond];
"Repeated permission prompts?" [shape=diamond];
"Client rejects responses?" [shape=diamond];
"Check Xcode running + toggle on" [shape=box];
"Open a project in Xcode" [shape=box];
"Use MCP_XCODE_PID or check tab targeting" [shape=box];
"Expected: PID changes on restart" [shape=box];
"Use XcodeMCPWrapper proxy" [shape=box];
"Connection failed?" -> "Check Xcode running + toggle on" [label="refused/timeout"];
"Connection failed?" -> "tools/list empty?" [label="connects OK"];
"tools/list empty?" -> "Open a project in Xcode" [label="no tools"];
"tools/list empty?" -> "Wrong project?" [label="tools listed"];
"Wrong project?" -> "Use MCP_XCODE_PID or check tab targeting" [label="yes"];
"Wrong project?" -> "Repeated permission prompts?" [label="no"];
"Repeated permission prompts?" -> "Expected: PID changes on restart" [label="yes"];
"Repeated permission prompts?" -> "Client rejects responses?" [label="no"];
"Client rejects responses?" -> "Use XcodeMCPWrapper proxy" [label="strict client (Cursor)"];
}digraph troubleshoot {
rankdir=TB;
"Connection failed?" [shape=diamond];
"tools/list empty?" [shape=diamond];
"Wrong project?" [shape=diamond];
"Repeated permission prompts?" [shape=diamond];
"Client rejects responses?" [shape=diamond];
"Check Xcode running + toggle on" [shape=box];
"Open a project in Xcode" [shape=box];
"Use MCP_XCODE_PID or check tab targeting" [shape=box];
"Expected: PID changes on restart" [shape=box];
"Use XcodeMCPWrapper proxy" [shape=box];
"Connection failed?" -> "Check Xcode running + toggle on" [label="refused/timeout"];
"Connection failed?" -> "tools/list empty?" [label="connects OK"];
"tools/list empty?" -> "Open a project in Xcode" [label="no tools"];
"tools/list empty?" -> "Wrong project?" [label="tools listed"];
"Wrong project?" -> "Use MCP_XCODE_PID or check tab targeting" [label="yes"];
"Wrong project?" -> "Repeated permission prompts?" [label="no"];
"Repeated permission prompts?" -> "Expected: PID changes on restart" [label="yes"];
"Repeated permission prompts?" -> "Client rejects responses?" [label="no"];
"Client rejects responses?" -> "Use XcodeMCPWrapper proxy" [label="strict client (Cursor)"];
}| Symptom | Cause | Fix |
|---|---|---|
| "Connection refused" | Xcode not running or MCP toggle off | Launch Xcode, enable MCP in Settings > Intelligence |
| tools/list returns empty | No project open, or permission not granted | Open a project, check for permission dialog in Xcode |
| Tools target wrong project | Multiple Xcode windows, wrong tab | Call |
| Repeated permission prompts | Client restarted (new PID) | Expected behavior — approve each time |
| Cursor/strict client errors | Missing | Use XcodeMCPWrapper as proxy |
| "No such command: mcpbridge" | Xcode < 26.3 | Update to Xcode 26.3+ |
| Slow/hanging tool calls | Large project indexing | Wait for Xcode indexing to complete |
| 症状 | 原因 | 解决方法 |
|---|---|---|
| "连接被拒绝" | Xcode未运行或MCP开关未开启 | 启动Xcode,在设置>智能助手中启用MCP |
| tools/list返回空 | 没有打开项目,或未授予权限 | 打开一个项目,检查Xcode中的权限对话框 |
| 工具指向错误的项目 | 多个Xcode窗口,标签页错误 | 调用 |
| 重复出现权限提示 | 客户端重启(新的PID) | 预期行为——每次都需要批准 |
| Cursor/严格客户端报错 | 响应中缺少 | 使用XcodeMCPWrapper作为代理 |
| "没有找到命令: mcpbridge" | Xcode版本低于26.3 | 升级到Xcode 26.3+ |
| 工具调用缓慢/挂起 | 大型项目正在索引 | 等待Xcode完成索引 |
~/Library/Developer/Xcode/CodingAssistant/codex
~/Library/Developer/Xcode/CodingAssistant/ClaudeAgentConfig~/Library/Developer/Xcode/CodingAssistant/codex
~/Library/Developer/Xcode/CodingAssistant/ClaudeAgentConfig