Skip to content

Scry logo — a stacked-bar s-curve mark on warm graphite, two olive accent bars

Scry.

Your ROS 2 robot, in your pocket. Debug topics, call services, and monitor diagnostics by chatting with an on-device AI agent.

What is Scry

Scry is an Android app and a small Python server that together turn any ROS 2 robot into something you can talk to. Ask a question in plain English, by voice, or with a screenshot. The agent introspects your robot's topics, nodes, services, parameters, and diagnostics live over WiFi and answers with structured panels, plots, and links to deeper views.

The phone is the thick client. The robot just exposes its ROS 2 graph as an MCP server. No cloud backend. No telemetry. Your AI keys, your robot, your LAN.


Where to go next

  • Get started

    Install the Android app, run scry-connect on the robot, pair, ask your first question. About fifteen minutes end to end.

    Get started

  • Use Scry

    Chat with the agent, attach logs and images, set background threshold monitors, send feedback on every reply.

    Use Scry

  • Architecture

    Phone is the thick client, robot just runs an MCP server. How the tiered context system works. Why there is no cloud backend.

    Architecture

  • Reference

    The ninety-nine MCP tools scry-connect exposes, what each one returns, which require user approval. App permissions.

    Reference

  • Operator

    Run a beta. Cut a release. Audit security. The runbooks Phaneron Robotics uses internally.

    Operator

  • Legal

    Privacy policy, Play Store Data Safety form, security policy, license, and brand usage.

    Legal


How it works

flowchart LR
    A["Android app\nKotlin · Compose"]
    B["scry-connect\nPython · MCP server"]
    C["ROS 2 graph\nany DDS / RMW"]
    A <-->|"HTTPS · MCP · SSE"| B
    B <-->|"rclpy"| C
    classDef brand fill:#292826,stroke:#3A3835,stroke-width:1px,color:#E8E4D9
    class A,B,C brand
    linkStyle 0,1 stroke:#A3B86C,stroke-width:2px,color:#9C9A8D

The phone runs the AI provider, the tool router, the rich renderer, the background monitors, and the fleet view. The robot runs a small Python server (scry-connect) that exposes its ROS 2 capabilities as MCP tools.


What you need

  • A phone running Android 9 (API 28) or newer.
  • A ROS 2 robot running Humble, Iron, Jazzy, Kilted, or Rolling.
  • An AI provider key. OpenRouter is recommended because one key unlocks more than three hundred models. Direct Claude, OpenAI, or Gemini keys also work. For fully offline use, point Scry at a local Ollama server.
  • The same WiFi network. Phone and robot talk directly. Nothing routes through the cloud.

Open source

Component Repository License
Android app scry-android Apache 2.0
Robot MCP server scry-connect Apache 2.0
Docs site scry-web Apache 2.0
Brand assets scry-brand CC-BY-4.0

Maintained by Phaneron Robotics, Inc.