PluginBench
MCP Server
Maintained
MIT

io.github.Yercko/devilge MCP Server

io.github.Yercko/devilge

What is the io.github.Yercko/devilge MCP server?

Android/KMM MCP server: logcat, ADB device control, Compose previews, network, Maestro flows.

How to install io.github.Yercko/devilge

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • DEVILGE_ANDROID_PROJECT_ROOT
    required

    Absolute path to the Android/KMM project root that devilge inspects (Gradle modules, source files, build outputs).

  • DEVILGE_OUTPUTS_ROOT

    Directory where devilge writes screenshots and UI dumps. Defaults to <projectRoot>/.devilge-outputs/.

  • DEVILGE_DEFAULT_DEVICE_SERIAL

    Default ADB serial used when a tool does not specify one. Useful when several devices/emulators are attached.

  • DEVILGE_FLOWS_ROOT

    Directory containing Maestro YAML flows. Defaults to <projectRoot>/devilge-flows/.

  • DEVILGE_MAESTRO_BIN_PATH

    Absolute path to the Maestro binary. If unset, devilge resolves it from PATH; if absent, Maestro tools degrade gracefully.

  • DEVILGE_ALLOW_FLOW_SCRIPTS

    Set to 'true' to allow Maestro flows containing 'runScript:' blocks. Default is false; flows with scripts are rejected.

  • DEVILGE_HTTP_LOG_TAGS

    Comma-separated logcat tags scanned for HTTP traffic. Defaults to 'HttpClient,OkHttp' (covers Ktor + OkHttp/Retrofit).

  • DEVILGE_HTTP_LOG_FORMAT

    HTTP log parser to use: 'auto' (default), 'ktor', or 'okhttp'.

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "devilge": {
      "command": "npx",
      "args": [
        "-y",
        "devilge"
      ],
      "env": {
        "DEVILGE_ANDROID_PROJECT_ROOT": "<YOUR_DEVILGE_ANDROID_PROJECT_ROOT>",
        "DEVILGE_OUTPUTS_ROOT": "<YOUR_DEVILGE_OUTPUTS_ROOT>",
        "DEVILGE_DEFAULT_DEVICE_SERIAL": "<YOUR_DEVILGE_DEFAULT_DEVICE_SERIAL>",
        "DEVILGE_FLOWS_ROOT": "<YOUR_DEVILGE_FLOWS_ROOT>",
        "DEVILGE_MAESTRO_BIN_PATH": "<YOUR_DEVILGE_MAESTRO_BIN_PATH>",
        "DEVILGE_ALLOW_FLOW_SCRIPTS": "<YOUR_DEVILGE_ALLOW_FLOW_SCRIPTS>",
        "DEVILGE_HTTP_LOG_TAGS": "<YOUR_DEVILGE_HTTP_LOG_TAGS>",
        "DEVILGE_HTTP_LOG_FORMAT": "<YOUR_DEVILGE_HTTP_LOG_FORMAT>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "devilge": {
      "command": "npx",
      "args": [
        "-y",
        "devilge"
      ],
      "env": {
        "DEVILGE_ANDROID_PROJECT_ROOT": "<YOUR_DEVILGE_ANDROID_PROJECT_ROOT>",
        "DEVILGE_OUTPUTS_ROOT": "<YOUR_DEVILGE_OUTPUTS_ROOT>",
        "DEVILGE_DEFAULT_DEVICE_SERIAL": "<YOUR_DEVILGE_DEFAULT_DEVICE_SERIAL>",
        "DEVILGE_FLOWS_ROOT": "<YOUR_DEVILGE_FLOWS_ROOT>",
        "DEVILGE_MAESTRO_BIN_PATH": "<YOUR_DEVILGE_MAESTRO_BIN_PATH>",
        "DEVILGE_ALLOW_FLOW_SCRIPTS": "<YOUR_DEVILGE_ALLOW_FLOW_SCRIPTS>",
        "DEVILGE_HTTP_LOG_TAGS": "<YOUR_DEVILGE_HTTP_LOG_TAGS>",
        "DEVILGE_HTTP_LOG_FORMAT": "<YOUR_DEVILGE_HTTP_LOG_FORMAT>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "devilge": {
      "command": "npx",
      "args": [
        "-y",
        "devilge"
      ],
      "env": {
        "DEVILGE_ANDROID_PROJECT_ROOT": "<YOUR_DEVILGE_ANDROID_PROJECT_ROOT>",
        "DEVILGE_OUTPUTS_ROOT": "<YOUR_DEVILGE_OUTPUTS_ROOT>",
        "DEVILGE_DEFAULT_DEVICE_SERIAL": "<YOUR_DEVILGE_DEFAULT_DEVICE_SERIAL>",
        "DEVILGE_FLOWS_ROOT": "<YOUR_DEVILGE_FLOWS_ROOT>",
        "DEVILGE_MAESTRO_BIN_PATH": "<YOUR_DEVILGE_MAESTRO_BIN_PATH>",
        "DEVILGE_ALLOW_FLOW_SCRIPTS": "<YOUR_DEVILGE_ALLOW_FLOW_SCRIPTS>",
        "DEVILGE_HTTP_LOG_TAGS": "<YOUR_DEVILGE_HTTP_LOG_TAGS>",
        "DEVILGE_HTTP_LOG_FORMAT": "<YOUR_DEVILGE_HTTP_LOG_FORMAT>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "devilge": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "devilge"
      ],
      "env": {
        "DEVILGE_ANDROID_PROJECT_ROOT": "<YOUR_DEVILGE_ANDROID_PROJECT_ROOT>",
        "DEVILGE_OUTPUTS_ROOT": "<YOUR_DEVILGE_OUTPUTS_ROOT>",
        "DEVILGE_DEFAULT_DEVICE_SERIAL": "<YOUR_DEVILGE_DEFAULT_DEVICE_SERIAL>",
        "DEVILGE_FLOWS_ROOT": "<YOUR_DEVILGE_FLOWS_ROOT>",
        "DEVILGE_MAESTRO_BIN_PATH": "<YOUR_DEVILGE_MAESTRO_BIN_PATH>",
        "DEVILGE_ALLOW_FLOW_SCRIPTS": "<YOUR_DEVILGE_ALLOW_FLOW_SCRIPTS>",
        "DEVILGE_HTTP_LOG_TAGS": "<YOUR_DEVILGE_HTTP_LOG_TAGS>",
        "DEVILGE_HTTP_LOG_FORMAT": "<YOUR_DEVILGE_HTTP_LOG_FORMAT>"
      }
    }
  }
}
Claude Code
claude mcp add devilge --env DEVILGE_ANDROID_PROJECT_ROOT=<YOUR_DEVILGE_ANDROID_PROJECT_ROOT> --env DEVILGE_OUTPUTS_ROOT=<YOUR_DEVILGE_OUTPUTS_ROOT> --env DEVILGE_DEFAULT_DEVICE_SERIAL=<YOUR_DEVILGE_DEFAULT_DEVICE_SERIAL> --env DEVILGE_FLOWS_ROOT=<YOUR_DEVILGE_FLOWS_ROOT> --env DEVILGE_MAESTRO_BIN_PATH=<YOUR_DEVILGE_MAESTRO_BIN_PATH> --env DEVILGE_ALLOW_FLOW_SCRIPTS=<YOUR_DEVILGE_ALLOW_FLOW_SCRIPTS> --env DEVILGE_HTTP_LOG_TAGS=<YOUR_DEVILGE_HTTP_LOG_TAGS> --env DEVILGE_HTTP_LOG_FORMAT=<YOUR_DEVILGE_HTTP_LOG_FORMAT> -- npx -y devilge

Related MCP servers

Give your AI agent stealth web scraping with Cloudflare bypass and CSS selection, powered by Scrapling.

67k
Python
BSD-3-Clause
View repository →

Give your AI coding agent full control of a live Chrome browser for automation, debugging, and performance analysis.

45k
TypeScript
Apache-2.0
View repository →

Let AI agents manage your Puter files, websites, and serverless workers over MCP.

43k
TypeScript
AGPL-3.0
View repository →

Browser automation for AI agents via MCP, powering ByteDance's Agent TARS hybrid GUI/DOM browser control.

37k
TypeScript
Apache-2.0
View repository →

Run arbitrary shell commands from an MCP-connected AI agent.

37k
TypeScript
Apache-2.0
View repository →

Filesystem access MCP server from ByteDance's UI-TARS/Agent TARS ecosystem.

37k
TypeScript
Apache-2.0
View repository →