home / mcp / specter mcp server

Specter MCP Server

Provides a diagnostic and execution engine to build, test, debug, and interact with Android/iOS apps via MCP.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "abd3lraouf-specter-mcp": {
      "command": "specter-mcp",
      "args": [],
      "env": {
        "SPECTER_DEBUG": "true",
        "SPECTER_TIMEOUT": "60000",
        "ANDROID_SDK_ROOT": "/path/to/android/sdk",
        "SPECTER_LOG_LEVEL": "debug",
        "SPECTER_IOS_DEVICE": "booted",
        "SPECTER_ANDROID_DEVICE": "emulator-5554"
      }
    }
  }
}

Specter MCP is a diagnostic and execution engine that empowers AI agents to build, test, debug, and interact with Kotlin Multiplatform Mobile apps. It acts as the hands and eyes for your AI assistant, enabling actions like building apps, running tests, inspecting UI and app state, and analyzing crashes across Android and iOS.

How to use

You will connect an MCP client to Specter MCP to orchestrate mobile development tasks. Use it to build apps, run tests, capture UI context, inspect logs and app state, and drive automated E2E flows. The available commands expose functions such as building apps, launching them on devices, taking UI screenshots, and running Maestro test flows.

How to install

Prerequisites you need on your machine:

  • Node.js 20+ (verify with node --version)
  • Android SDK (verify with adb --version)
  • Xcode Command Line Tools on macOS (verify with xcrun --version)
  • Maestro (optional, verify with maestro --version)

Choose your installation path below and follow the commands exactly.

# Option 1: Install the MCP client globally (recommended)
npm install -g specter-mcp

# Option 2: Install from source
# 1) Clone the repository
# 2) Install dependencies and build
# 3) Run the built server (see configuration for how to start)

# Quick setup for Android/iOS prerequisites (macOS shown as example)
export ANDROID_SDK_ROOT="$HOME/Library/Android/sdk"
export PATH="$PATH:$ANDROID_SDK_ROOT/platform-tools"

# macOS iOS tooling (if not already installed)
xcode-select --install
sudo xcodebuild -license accept

# Maestro (optional, for E2E tests)
curl -Ls "https://get.maestro.mobile.dev" | bash

Additional configuration notes

Specter MCP can be run as a local stdio server or connected via a remote MCP endpoint. You can configure paths and environment variables to tailor how Specter communicates with your development environment.

Configuration examples

Choose one of the following configuration snippets to connect your MCP client to Specter MCP.

{
  "mcpServers": {
    "specter_mcp": {
      "command": "specter-mcp",
      "args": []
    }
  }
}

Environment variables

Configure debugging and platform specifics via environment variables. Common variables include enabling debug logs and pointing to your Android SDK path.

{
  "env": {
    "SPECTER_DEBUG": "true",
    "SPECTER_LOG_LEVEL": "debug",
    "ANDROID_SDK_ROOT": "/path/to/android/sdk"
  }
}

Troubleshooting tips

If you encounter path or tool issues, verify prerequisites and ensure the MCP client can execute the server binary. Re-check Android and iOS toolchains and confirm that the correct paths are set in your environment.

Available tools

build_app

Build Android/iOS app (debug/release)

install_app

Install APK or .app on device

launch_app

Launch installed app

get_ui_context

Screenshot + UI hierarchy

interact_with_ui

Tap, swipe, input text

run_unit_tests

Run unit tests

run_maestro_flow

Run Maestro E2E flows

run_linter

Run Detekt, SwiftLint, ktlint

list_devices

List emulators/simulators

manage_env

Boot/shutdown devices

clean_project

Clean build caches

analyze_crash

Parse crash logs, symbolicate

inspect_logs

Filter device logs

inspect_app_state

Read prefs, databases

deep_link_navigate

Open deep links