InstrumentsMCP

Wraps Xcode Instruments in an MCP server so agents can record traces and read profiling data.

View on GitHub ↗
Stars
★ 19
Last commit
11 Sept 2026
Maintenance
Active
Licence
MIT
Category
MCP Servers
GitHub
nemanjavlahovic/instruments-mcp-server

Overview

InstrumentsMCP is an MCP server that wraps Xcode Instruments so a coding agent can profile your app. It records traces, drives the simulator and returns structured profiling results, such as hotspots and main thread blockers, that the agent can act on. It also has a CLI mode for recording traces without an MCP client.

Features

  • 35 tools across profiling, UI automation, simulator control and trace analysis
  • One-shot profiles for CPU, SwiftUI, memory and more
  • Taps, types, swipes and gestures in the simulator
  • Launches apps, opens deep links, sends push notifications and takes screenshots
  • Re-analyses saved traces and tracks regressions against baselines
  • Supports xctrace 15.x to 26.x, including Deferred recording mode

Requirements

  • macOS
  • Xcode
  • Node.js 20 or later

Install

  1. Add to your project's .mcp.json

    {
      "mcpServers": {
        "instruments": {
          "command": "npx",
          "args": ["-y", "instrumentsmcp@latest"]
        }
      }
    }
  2. Or run it directly

    npx instrumentsmcp@latest

Example

Ask your agent to profile the feed screen; it records a Time Profiler trace and reports that FeedViewModel.loadItems() is blocking the main thread.

Works with

Claude CodeCursorWindsurfAny MCP client

Listed in

swiftskills.dev

Read the code before you install anything. SwiftAgents doesn't review or endorse the tools listed here. Active: a commit in the last 90 days. Slowing: last commit within the past year. Stale: older than a year, or archived.

More in this category