npm @doublespeed/mcpstdioupdated 11d ago
An MCP server that gives a coding agent a Mac. Build, test, archive and run iOS apps — native, React Native, Expo — on the doublespeed Mac fleet from Linux, a container, CI, or a Mac without Xcode.
What can you do with doublespeed — Xcode as an API?
@doublespeed/mcp
An MCP server that gives a coding agent a Mac. Build, test, archive and run iOS apps — native, React Native, Expo — on the doublespeed Mac fleet from Linux, a container, CI, or a Mac without Xcode.
Tool names match XcodeBuildMCP (build_sim, test_sim, build_run_sim, list_sims, discover_projs, list_schemes, stop_app_sim, doctor) so prompts and skills written for a local Mac work unchanged when there is no Mac.
Install
Needs Node 20+. check_project works with no key at all; everything else needs a DS_API_KEY (free $200 of Mac time at https://mac.doublespeed.ai/dashboard → API keys).
Claude Code
claude mcp add doublespeed -e DS_API_KEY=dsx_... -- npx -y @doublespeed/mcp
Cursor / Windsurf / Codex / VS Code — add to the client's MCP config:
{ "mcpServers": { "doublespeed": { "command": "npx", "args": ["-y", "@doublespeed/mcp"], "env": { "DS_API_KEY": "dsx_..." } } } }
Tools
| Tool | What it does | Where it runs |
|---|---|---|
discover_projs |
find .xcworkspace / .xcodeproj / Package.swift | local |
list_schemes |
shared schemes of a project/workspace | local |
list_sims |
simulators, runtimes and Xcode versions on the fleet | API |
check_project |
no key needed — schemes resolve, every Swift file parses, plists valid (lint, no compile) | Mac |
build_sim |
compile for the iOS Simulator; file:line:col errors |
Mac |
test_sim |
build + XCTest / Swift Testing; per-test results | Mac |
build_run_sim |
build, install, launch; returns a browser URL to a live simulator | Mac |
stop_app_sim |
end a live session | API |
archive_app |
unsigned .xcarchive (Release) |
Mac |
job_status |
status, diagnostics, tests, log tail of any job | API |
doctor |
key, API reachability, fleet capabilities | local + API |
Only files under workspaceRoot (default: the project's directory) are uploaded, content-addressed — after the first run only changed files move. A small app's test run takes ~20–40 s of Mac time and costs a few cents; nothing is billed while queued.
Not yet
Screenshots / accessibility tree of the running simulator, code signing and TestFlight upload. The live build_run_sim link is meant for a human to look at.
Agents without a Mac build, test and run iOS apps through mac.doublespeed.ai (npx -y @doublespeed/ds). Docs: https://mac.doublespeed.ai/docs.md
Install
Add doublespeed — Xcode as an API to your client. Pick the one you use.
claude mcp add mcp -- npx -y @doublespeed/mcpcodex mcp add mcp -- npx -y @doublespeed/mcpamp mcp add mcp -- npx -y @doublespeed/mcp{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@doublespeed/mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@doublespeed/mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"mcp","command":"npx","args":["-y","@doublespeed/mcp"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@doublespeed/mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@doublespeed/mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@doublespeed/mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@doublespeed/mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"@doublespeed/mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @doublespeed/mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
10 tools
doublespeed — Xcode as an API exposes 10 tools to a connected agent.
- discover_projs
- find .xcworkspace / .xcodeproj / Package.swift
- list_schemes
- shared schemes of a project/workspace
- list_sims
- simulators, runtimes and Xcode versions on the fleet
- check_project
- **no key needed** — schemes resolve, every Swift file parses, plists valid (lint, no compile)
- build_sim
- compile for the iOS Simulator; `file:line:col` errors
- test_sim
- build + XCTest / Swift Testing; per-test results
- build_run_sim
- build, install, launch; returns a **browser URL to a live simulator**
- stop_app_sim
- end a live session
- archive_app
- unsigned `.xcarchive` (Release)
- job_status
- status, diagnostics, tests, log tail of any job
Score
70 / 100
Good
- Documentation22/25
- Maintenance19/25
- Trust9/20
- Capability8/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 4 days ago
- Has a release history
- Repository is not archived
- No licence detected
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 10 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.1.1Latest | Aug 28, 2026 |
| 0.1.0 | Aug 28, 2026 |