vphone-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VPHONE_SOCK | No | Path to vphone.sock (auto-discovered if not set) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| go_homeA | Press the home button to return to the home screen. |
| press_powerB | Press the power button (lock/wake). |
| volume_upB | Press volume up. |
| volume_downB | Press volume down. |
| screenshotA | Take a screenshot of the VM display and return it as an image. Returns the screenshot as an embedded image that can be analyzed visually. |
| open_appA | Open an app from the home screen by name. First presses home to ensure we're on the home screen, then taps the app. Supported apps: FaceTime, Calendar, Photos, Mail, Notes, Reminders, Clock, TV, Games, App Store, Maps, Health, Wallet, Settings, Phone, Safari, Messages, Music. |
| tap_backA | Tap the iOS navigation back button (top-left corner). |
| open_searchC | Tap the Search bar on the home screen. |
| scroll_downB | Scroll down on the current screen. |
| scroll_upB | Scroll up on the current screen. |
| open_notification_centerB | Swipe down from the top-left to open Notification Center. |
| open_control_centerA | Swipe down from the top-right to open Control Center. |
| open_app_switcherA | Slow swipe up from bottom to open the App Switcher. |
| swipe_to_next_pageB | Swipe left to go to the next home screen page. |
| swipe_to_previous_pageA | Swipe right to go to the previous home screen page. |
| tapA | Tap at specific pixel coordinates on the screen. Coordinates are in pixels matching the screenshot dimensions (1290x2796). Use screenshot() first to identify the target position. Args: x: Horizontal pixel coordinate (0=left, 1290=right) y: Vertical pixel coordinate (0=top, 2796=bottom) |
| swipeA | Swipe from one point to another. Coordinates are in pixels matching the screenshot dimensions (1290x2796). Args: x1: Start X coordinate y1: Start Y coordinate x2: End X coordinate y2: End Y coordinate duration_ms: Swipe duration in milliseconds (default 300) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 17 tools
Each tool has a clearly distinct purpose with no overlap; for example, go_home, open_app, and open_app_switcher perform different navigation actions, while tap, swipe, and screenshot handle distinct interactions. The descriptions specify unique functions, making it easy for an agent to select the correct tool without confusion.
All tool names follow a consistent verb_noun pattern (e.g., go_home, open_app, scroll_down, tap_back), with no deviations in style or casing. This predictability enhances readability and usability for agents, ensuring a coherent naming convention throughout the set.
With 17 tools, the server is well-scoped for simulating iOS device interactions, covering navigation, input, and system controls. Each tool serves a specific function (e.g., scrolling, tapping, opening apps), and the count aligns with the domain's complexity without being excessive or insufficient.
The tool set provides comprehensive coverage for basic iOS simulation, including navigation, app launching, gestures, and system actions. Minor gaps exist, such as lack of tools for typing text or adjusting settings beyond volume, but agents can work around these using existing tools like tap for input fields.