Nano MCP Termux logo

Nano MCP Termux

Inspect Termux, Android, Raspberry Pi, and Linux runtime details through four MCP tools over standard stdio.

Install Nano MCP Termux

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "nano-mcp-termux": {
      "command": "uvx",
      "args": [
        "nano-mcp-termux"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

nano-mcp-termux exposes device, process, and Android/Termux path diagnostics to MCP-compatible AI clients. It is a zero-dependency Python server that communicates through newline-delimited JSON-RPC over stdio and can run from a single script, a package entry point, or Docker. Its tools report device status, server health, path resolution, and environment-specific storage details. Reach for it when an agent needs to understand or troubleshoot a Termux, Android, Raspberry Pi, or Linux runtime.

Use cases

  • Inspect device resources from an AI client running in Termux
  • Resolve Android storage paths before an agent accesses files
  • Check server processes and child-process risk
  • Diagnose noexec, read-only, or case-sensitivity filesystem conditions

Key features

  • Zero-dependency single-file Python implementation
  • Standard newline-delimited JSON-RPC over stdio
  • Device and server health diagnostics
  • Android and Termux path resolution
  • Process-tree cleanup on timeout
  • Docker-compatible deployment

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 2d ago

Recent health check succeeded.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 7d ago via OSV.dev · nano-mcp-termux (PyPI)

How Nano MCP Termux works

What nano-mcp-termux does

nano-mcp-termux provides an MCP interface for inspecting the environment where the server runs. Its focus is runtime and filesystem diagnostics rather than general command execution. The server is designed for Termux on Android, Raspberry Pi, Linux, and Docker-based environments, and is implemented as a single Python file with no external package dependencies.

The available tools cover four areas:

  • device_status reports aggregate battery, storage, architecture, and memory information. Inputs that cannot be read are represented as unavailable fields instead of causing the tool to fail.
  • server_health reports process identifiers, environment details, uptime, request counts, live children, reaping behavior, resident memory, and Android Phantom Process Killer risk.
  • resolve_path examines an Android or Termux path, including its canonical form, mount point, execution and read-only status, case-sensitivity behavior, equivalent path spellings, and shell-quoting warnings.
  • path_adapter describes the runtime profile, including HOME, PREFIX, and TMPDIR, Android storage roots, mount summaries, and mounts marked noexec.

How it works

The server uses standard MCP stdio framing with newline-delimited JSON-RPC messages. An MCP client starts the process and communicates through its standard input and output; launching it without a connected client can cause the process to exit because it is stdio-bound. Supported protocol negotiation covers MCP versions 2024-11-05, 2025-06-18, and 2025-11-25, with fallback to the highest supported version.

It implements initialization, initialized notifications, ping, tool listing, and tool calls. Unknown methods and tools receive JSON-RPC errors, while malformed JSON receives a parse error. Each command process runs in its own process group, allowing timeout cleanup to terminate the whole process tree. A parent watchdog, stdin-EOF detection, and optional idle timeout help prevent abandoned processes after a client disconnects.

Setup and configuration

Run the script locally with Python 3:

bash
python3 nano_mcp_termux.py

The package can also be launched with uvx nano-mcp-termux or installed with pip install nano-mcp-termux, after which the nano-mcp-termux command is available. Docker use is supported through the repository Dockerfile:

Terminal
docker build -t nano-mcp-termux .
docker run -i --rm nano-mcp-termux

Configure the MCP client to start one of these commands, using an absolute script or executable path when it is not available in PATH. Restart the client after changing its MCP configuration unless it supports hot reload. A one-shot health check is available with python3 nano_mcp_termux.py --health; this does not perform an MCP handshake.

NANO_IDLE_TIMEOUT sets the number of inactive seconds before self-termination, with 0 disabling the feature. Set NANO_NO_WATCHDOG=1 to disable the parent-process watchdog thread.

Limitations and notes

The server is intended to be mounted as a sidecar by an MCP client, not operated as an independent interactive service. Android storage paths may have different spellings, mount permissions, execution restrictions, or quoting concerns; the path tools expose these conditions so an agent can account for them. Android 12 and later may impose child-process limits through the Phantom Process Killer, which is included in the health reporting and lifecycle diagnostics.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Nano MCP Termux

nano-mcp-termux is an MCP server that connects AI clients to Termux, Android, Raspberry Pi, and Linux runtime diagnostics. Its main tools report device status, server health, Android-aware path resolution, and environment or mount details through standard stdio JSON-RPC.

Install it with `pip install nano-mcp-termux`, run it through `uvx nano-mcp-termux`, or execute `nano_mcp_termux.py` directly with Python 3. Configure the selected command in your MCP client's `mcpServers` settings.

Add an `mcpServers` entry that starts `uvx nano-mcp-termux`, the installed `nano-mcp-termux` command, or `python3` with the script path. Claude Desktop uses its platform configuration file, Cursor uses `~/.cursor/mcp.json`, and Cline uses its MCP settings file.

Yes. It is designed to run natively in Termux on Android and includes path handling for `/sdcard`, `/storage/emulated/0`, and `$HOME/storage/shared`, along with mount, `noexec`, and quoting diagnostics.

The server is stdio-bound and expects an MCP client to provide its standard input. Start it from the client's MCP configuration rather than as an independent command, or use the `--health` option for a one-shot health check.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewNano MCP Termux AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/nano-mcp-termux?style=directory)](https://allmcps.com/mcp/nano-mcp-termux)
HTML Embed
<a href="https://allmcps.com/mcp/nano-mcp-termux"><img src="https://allmcps.com/api/badge/nano-mcp-termux?style=directory" alt="Nano MCP Termux on AllMCPs" /></a>