Keitai MCP
Provides tools for automating and interacting with Android devices (particularly Japanese feature phones) via ADB, including physical key events, screenshots, UI hierarchy inspection, app installation and management, logcat diagnostics, and file transfer.
Enables automation and control of Fujitsu arrows Keitai F-03L Android flip phones, with specialized support for their D-Pad, numeric keypad, clamshell lid sensor, and low-resolution display.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Keitai MCP ๐ฑ
Keitai MCP is an open-source Model Context Protocol (MCP) server and developer toolset designed specifically for AI agents (such as Antigravity, Claude, Cursor, Windsurf) and developers to interact with, automate, and develop software for Japanese Android feature phones ("ใฌใฉใฑใผ" / Garakei / Keitai), with first-class support for the Fujitsu arrows ใฑใผใฟใค F-03L (NTT DOCOMO).
๐ Why Keitai MCP?
Japanese Android flip phones like the Fujitsu F-03L are unique beasts:
No standard touchscreen: Navigation is driven primarily by a 5-way physical D-Pad, numeric keypad (0โ9, *, #), and dedicated softkeys (
F1,F2,CLR,CALL,ENDCALL).Compact resolution: 480 ร 854 FWVGA display at 240 dpi.
Clamshell form factor: Physical lid open/close sensor (
gpio_lid).Architecture: 32-bit ARM (
armeabi-v7a) on Qualcomm Snapdragon 210 running Android 8.1 Oreo (API 27) with 1 GB RAM.
Most general-purpose Android automation tools assume high-resolution touchscreens and modern touch gestures. When AI agents attempt to operate a Keitai, they often fail because they don't know:
Which UI element currently has D-Pad focus.
How to map physical keys (
UP,DOWN,CENTER,CLR,F1,FAV1).That screenshots must be scaled and captured efficiently without crashing low-memory buffers.
How to detect clamshell open/close states.
Keitai MCP bridges this gap completely. It equips LLM agents with native Keitai awareness, real-time vision, focus tracking, and hardware key controls.
Related MCP server: MobileAgentMCP
โจ Features
๐ฎ Physical Keypad Control: Send individual key events, long-presses, and complex multi-key sequences (
UP,DOWN,CENTER/OK,BACK/CLR,F1,F2,0โ9,STAR,POUND,FAV1โFAV3).๐๏ธ Live Screen Vision: Capture 480ร854 screenshots returned directly as MCP
ImageContentfor multimodal vision models, with automatic metadata (current package/activity).๐ Token-Efficient UI Hierarchy: Automatically parses
uiautomator dumpXML into a clean, readable text tree, clearly marking[โ FOCUSED]elements,[CLICKABLE]items, and exact bounding box coordinates.๐ฆ App Management: Install APKs (with automated
armeabi-v7acompatibility checks and runtime permissions), launch activities, force-stop, and clear app data.๐ฉบ Hardware & Battery Diagnostics: Real-time status of battery percentage, temperature (ยฐC), voltage, clamshell lid state (
OPEN/CLOSED), RAM availability, and Wi-Fi IP address.๐ Logcat & Crash Diagnostics: Query logcat filtered by package PID, inspect the Android crash ring buffer (
logcat -b crash), and capture fatal exception stack traces.๐ Device File Transfer: Seamless
push,pull, andlson internal storage and microSD card.๐ Embedded MCP Resources & Prompts: Built-in F-03L hardware specification sheets, Android Keitai development guidelines, and step-by-step navigation prompts.
๐ป Rich CLI: Includes the
keitai-mcpCLI for quick terminal inspection, device discovery, screenshots, and key injection.
๐ Requirements
Host Machine: Linux, macOS, or Windows.
Python: Python 3.10 or newer.
Android Platform Tools:
adbcommand installed and available on your systemPATH.Device: Fujitsu arrows ใฑใผใฟใค F-03L (or compatible Android Keitai) connected via USB with USB Debugging enabled.
๐ Quick Start
1. Installation
Clone and install using pip or pipx:
git clone https://github.com/haphuthinh/keitai_mcp.git
cd keitai_mcp
pip install -e .Verify your connected Keitai:
keitai-mcp devicesOutput:
Connected Android Devices
โโโโโโโโโโโโณโโโโโโโโโณโโโโโโโโณโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโ
โ Serial โ State โ Model โ Product โ F-03L Detected? โ
โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ
โ 96344868 โ device โ F_03L โ F03L โ โ YES (Fujitsu F-03L) โ
โโโโโโโโโโโโดโโโโโโโโโดโโโโโโโโดโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโInspect live device status:
keitai-mcp infoโ๏ธ MCP Client Configuration
Claude Desktop
Add keitai to your claude_desktop_config.json:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"keitai": {
"command": "keitai-mcp",
"args": ["run"]
}
}
}Or using direct virtualenv Python:
{
"mcpServers": {
"keitai": {
"command": "/path/to/keitai_mcp/.venv/bin/python",
"args": ["-m", "keitai_mcp", "run"]
}
}
}Antigravity
In Antigravity, MCP servers are configured globally in ~/.gemini/config/mcp_config.json:
{
"mcpServers": {
"keitai": {
"command": "/path/to/keitai_mcp/.venv/bin/python",
"args": ["-m", "keitai_mcp", "run"],
"env": {
"PYTHONUNBUFFERED": "1"
}
}
}
}Cursor / Windsurf / Zed
Add to your workspace or user MCP settings (mcpServers object):
{
"mcpServers": {
"keitai": {
"command": "keitai-mcp",
"args": ["run"],
"env": {
"PYTHONUNBUFFERED": "1"
}
}
}
}๐ ๏ธ Complete MCP Tool Reference
Keitai MCP exposes 28 purpose-built tools:
Tool Name | Parameters | Description |
|
| Press a hardware key ( |
|
| Execute a sequence of keypresses (e.g. |
|
| Types alphanumeric text into the currently active text field. |
|
| Tap coordinates (0โ480, 0โ854). |
|
| Perform swipe gesture. |
| none | Wake the Keitai screen if it is asleep. |
| none | Put the Keitai screen to sleep. |
|
| Capture live screen as MCP |
|
| Dump UI hierarchy tree with clear |
| none | Returns the currently focused element's bounds, text, ID, and class. |
|
| Locate UI elements matching text, resource-id, or class. |
|
| Install APK with automated permissions and 32-bit validation. |
|
| Uninstall an application package. |
|
| Launch an application by package or specific activity name. |
|
| Force-stop an application ( |
|
| Reset app data and cache ( |
|
| List installed applications on the device. |
| none | Hardware specs, clamshell state, battery, RAM, storage, focused app. |
| none | Battery percentage, temperature in ยฐC, voltage, and health. |
| none | Physical clamshell lid state ( |
| none | Wi-Fi connection IP address, MAC address, and status. |
|
| Safely execute arbitrary ADB shell command with structured output. |
|
| Read filtered Android logcat entries. |
| none | Clear the logcat buffer. |
|
| Retrieve fatal exceptions, ANRs, and crash ring buffer logs. |
|
| Transfer file from host to phone. |
|
| Transfer file from phone to host. |
|
| List files and folders in a device directory. |
๐ MCP Resources & Prompts
Resources
keitai://f03l/specs: Complete technical hardware and software specifications of Fujitsu arrows Keitai F-03L.keitai://dev/guidelines: Comprehensive guide on developing Android applications for Japanese flip phones.keitai://dev/keycodes: Complete keycode catalog and mapping reference table.
Prompts
plan_keitai_navigation(target_action): Guides an agent through inspecting the screen and executing D-Pad steps to reach an element.diagnose_keitai_crash(package_name): Diagnoses application crashes on Android 8.1 / armeabi-v7a.
๐๏ธ CLI Reference
Keitai MCP also includes a command-line interface:
# View help
keitai-mcp --help
# Show device status panel
keitai-mcp info
# Capture a screenshot
keitai-mcp screenshot -o screen.png
# Send a key event
keitai-mcp key UP
keitai-mcp key CENTER
keitai-mcp key BACK --count 2
# Inspect current UI tree
keitai-mcp ui
keitai-mcp ui --clickable-only
# List installed 3rd party apps
keitai-mcp apps
keitai-mcp apps --all --query docomo๐ฑ Hardware Profile: Fujitsu F-03L
Specification | Details |
Model | Fujitsu arrows ใฑใผใฟใค F-03L (Docomo) |
OS | Android 8.1.0 Oreo (API Level 27) |
SoC | Qualcomm Snapdragon 210 (MSM8909) Quad-core ARM Cortex-A7 @ 1.1 GHz |
Architecture | 32-bit ARM ( |
RAM | 1 GB LPDDR3 (~913 MB visible to OS) |
Storage | 8 GB ROM (~1.6 GB available user space) + microSDXC slot |
Main Display | 3.4-inch TFT LCD, 480 ร 854 pixels, 240 dpi, Non-touch |
Sub-Display | 0.8-inch OLED (96 ร 32 pixels) on outer lid |
Keypad | 5-way D-Pad, Numeric 0โ9, *, #, F1, F2, CLR, CALL, ENDCALL, Quick 1/2/3 |
Lid Switch |
|
For in-depth developer instructions, see KEITAI_DEVELOPMENT_GUIDE.md.
๐งช Testing
Keitai MCP has full unit and integration test coverage:
# Run test suite
pytest -vIf your Fujitsu F-03L is plugged in, pytest automatically runs the live integration tests (tests/test_live_device.py). If no device is connected, live tests are cleanly skipped.
๐ค Contributing
Contributions, issues, and feature requests are welcome! See CONTRIBUTING.md for setup and guidelines.
๐ License
This project is licensed under the MIT License.
keitai-mcp
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogโฆ
This server cannot be deployed
Maintenance
Related MCP Connectors
Give your AI agent a real cloud Android phone: push APKs, drive it, get screenshots and logs.
Let your AI agent control real iPhones: screenshots, tap, swipe, type and open apps.
Let AI agents control Android and iOS devices on Mobilerun Cloud: screen, input, apps, workflows.
Drive cloud Android phones on US mobile IPs. Read the screen, tap, type, install apps and run tasks.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables AI agents to interact with Android devices through UI manipulation, screen capture, touch gestures, text input, and app management via ADB. Provides comprehensive mobile automation capabilities including element detection, navigation, and application control for Android device testing and interaction.961 PyPI2-
- FlicenseNot gradedqualityBmaintenanceEnables an agent to control a real Android phone by reading structured UI elements and performing actions such as tapping, swiping, typing, and extracting fields from known app screens.1-
- AlicenseBqualityBmaintenanceEnables AI agents to automate Android and iOS devices, including emulators and physical devices, by capturing screenshots, reading UI accessibility trees, performing touch and text input, and managing app lifecycle and logs.184MIT
- AlicenseCqualityBmaintenanceEnables AI agents to control Android phones, emulators, redroid containers, iOS devices, and cloud-hosted devices through a perceive-act-verify loop of screen reading, taps, gestures, typing, and app launching. Exposes 138 tools for driving screens, elements, and files over adb, Portal APIs, and ios-portal without running ARM-only code on the device.949 npm1MIT