Skip to main content
Glama
noahchalifour

emulator-hub

emulator-hub

A lease-based pool of self-hosted Android emulators. Agents (and humans) check out a slot through an MCP server or a small HTTP API, get exclusive use of a running emulator for a bounded lease, and release it (or let it expire) back to the pool; a live-view web UI lets a human watch or take over any active session.

Develop

uv sync
uv run pytest
./scripts/gen-grpc.sh

uv sync installs the runtime and dev dependency groups into .venv/. uv run pytest runs the test suite. ./scripts/gen-grpc.sh regenerates the gRPC/protobuf bindings in src/emulator_hub/_grpc from proto/.

Related MCP server: Emulator MCP Server

Images

Two images are published to GHCR, tagged only on v* release tags (no latest, no per-commit tags):

  • ghcr.io/noahchalifour/emulator-hub — the hub server (MCP + HTTP API + live view), built from the repo root Dockerfile.

  • ghcr.io/noahchalifour/emulator-hub-emulator — the Android emulator image each slot runs, built from emulator/Dockerfile.

Deploy

Deployment manifests live outside this repo, in kubernetes/apps/emulator-hub/ in noahchalifour/home-lab-infrastructure.

Fonts

The web UI vendors Inter and JetBrains Mono under src/emulator_hub/ui/fonts/, both licensed under the SIL Open Font License 1.1.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    An MCP server for managing local Android Virtual Devices (AVDs) and their lifecycles using Android SDK tools. It enables users to create, start, and stop emulators, while providing control over virtual sensors like the accelerometer and gyroscope.
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Controls Android emulators from any MCP-capable client via ADB and emulator CLI, supporting AVD management, APK operations, screen interactions, and device diagnostics.
    1
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Local MCP server for Android emulator control, exposing tools to get emulator status, inspect UI tree, capture screenshots, and open App settings via Appium and ADB.
    ISC