BorrowIP π‘
Borrow mobile IP for AI agents β route traffic through your phone's cellular connection via SSH reverse tunnel.
Zero infrastructure. Uses existing SSH (port 22). Works with any MCP-compatible AI agent.
How it works
π± Phone (Termux) π₯οΈ VPS π€ AI Agent
ββββββββββββββββ βββββββββ ββββββββββ
borrowip connect borrowip-mcp Hermes/Claude
BIP-xxxx@vps-ip (auto-started) β
β β borrowip_fetch()
βββ SSH :22 βββββββββββββββ SSH :22 β
β pproxy :1080 SOCKS5 :10001 β cellular IP
βββ cellular βββ internet ββββ
Quick Start
1. VPS: Install & configure AI agent
# From source (not on PyPI yet)
git clone https://github.com/wahyuzero/borrowip
cd borrowip && pip install -e .
Add to your AI agent config (e.g. Hermes config.yaml):
mcp_servers:
borrowip:
command: borrowip-mcp
When AI agent starts, ask: "check borrowip status" β shows your pair code.
2. Phone (Termux): Connect
# Quick install
curl -sL https://raw.githubusercontent.com/wahyuzero/borrowip/main/scripts/install-termux.sh | bash
# Setup (first time only)
borrowip init
# Connect using pair code from VPS
borrowip connect BIP-xxxxxx@your-vps-ip
3. Done!
"Fetch https://example.com using borrowip key BIP-xxxxxx"
AI agent routes traffic through your phone's cellular IP automatically.
MCP Tools
| Tool | Description |
|---|---|
borrowip_status() |
Show pair code & connected proxies |
borrowip_fetch(url, key) |
Fetch URL through mobile proxy |
borrowip_check_ip(key) |
Check proxy's external IP |
borrowip_list_proxies() |
List all connected proxies |
Architecture
- MCP Server (
borrowip-mcp): Runs on VPS, auto-started by AI agent via stdio. Generates pair code, manages proxy connections. - Client (
borrowip connect): Runs on Termux. Starts local SOCKS5 proxy (pproxy), creates SSH reverse tunnel, registers with pair code.
All traffic flows through SSH port 22 β no extra firewall rules.
Requirements
VPS: Python 3.10+, SSH on port 22, AI agent with MCP support (Hermes, Claude, Cursor, etc.)
Phone: Android + Termux, Python 3.10+, pip install pproxy, SSH key for VPS access
Installation
VPS
git clone https://github.com/wahyuzero/borrowip
cd borrowip && pip install -e .
Termux
# Quick install (auto handles deps)
curl -sL https://raw.githubusercontent.com/wahyuzero/borrowip/main/scripts/install-termux.sh | bash
# Or manual
pkg install openssh python
pip install pproxy
git clone https://github.com/wahyuzero/borrowip
cd borrowip && pip install -e ".[client]"
Configuration
VPS (Hermes config.yaml)
mcp_servers:
borrowip:
command: borrowip-mcp
Termux (~/.borrowip.toml)
Created by borrowip init:
[server]
host = "your-vps-ip"
user = "your-ssh-user"
ssh_key = "~/.ssh/id_ed25519"
Then just run borrowip connect BIP-xxxx (no host needed).
Auto-start (Termux)
# Install Termux:Boot from F-Droid
mkdir -p ~/.termux/boot/
echo 'borrowip connect BIP-xxxx@your-vps-ip &' > ~/.termux/boot/start-borrowip.sh
chmod +x ~/.termux/boot/start-borrowip.sh
Tunnel auto-reconnects on drop.
Security
- SSH key auth (no passwords)
- Pair code = identifier only; SSH key is the real auth
- All traffic encrypted via SSH
- SOCKS proxy bound to 127.0.0.1 only (not exposed to WiFi)
License
MIT