v2.0.3

ModelPark CLI

Expose local apps and APIs to the internet in seconds

Quick Install (macOS / Linux)
curl -fsSL https://raw.githubusercontent.com/model-park/cli/master/install.sh | sh
Windows users: see the installation section below for PowerShell instructions.

Installation

Install the ModelPark CLI to expose your local ML applications to the internet.

🐧 Linux Installation
1
Run the installer script (auto-detects architecture)
curl -fsSL https://raw.githubusercontent.com/model-park/cli/master/install.sh | sh
2
Verify installation
modelpark version
Or download manually:
View all releases

Quick Start

Get your local application online in three steps.

1
Authenticate

Log in to ModelPark using your account credentials or API token.

modelpark login
2
Run your app

Start your app and create a tunnel in one step. The port is auto-detected for known frameworks.

modelpark run --name myapp -- streamlit run app.py
3
Access your app

Your app is live. Open the remote URL to access it from anywhere.

https://myapp.modelpark.app
REST API Quick Start
1
Authenticate

Log in to ModelPark using your account credentials or API token.

modelpark login
2
Serve your API

Expose your REST API with API key authentication enabled.

modelpark serve --name myapi --port 8000 --type api
3
Call your API

Use your API key to make authenticated requests from anywhere.

curl https://myapi-proxy.modelpark.app/health -H "X-ModelPark-Key: YOUR_KEY"
Or run modelpark with no arguments for an interactive guided experience, or add --type api for REST APIs.

Commands

Complete reference for all CLI commands. Use modelpark --help to see available commands.

modelpark runStart a local app and tunnel it

Start your application and create a tunnel in one step. The port is auto-detected for known frameworks — just pass your start command after --. Runs in the background by default; use --session to keep it in the foreground.

Options
FlagShortDefaultDescription
--name*required-n-App name / subdomain
--port-pauto-detectLocal port (0 = auto-detect from framework)
--access-privateAccess type (public, private, protected)
--type-auto-detectApp type: api, web (auto-detected from framework)
--token-t-Authentication token (optional if logged in)
--session-sfalseRun in foreground (session mode)
--timeout-60sMax wait for port ready
--server-wss://tunnel.modelpark.app/wsTunnel server WebSocket URL
--api-server-https://modelpark.appAPI server URL
Supported Frameworks (auto-detect)
FrameworkDefault PortType
Streamlit8501Web
Gradio7860Web
Uvicorn8000API
FastAPI8000API
Flask5000API
Gunicorn8000API
Chainlit8000Web
Panel5006Web
Voila8866Web
Jupyter8888Web
MLflow5000Web
Ollama11434API
Examples
# Streamlit — port auto-detected as 8501 (runs in background)
modelpark run --name myapp -- streamlit run app.py
# Keep in foreground (session mode)
modelpark run -n myapp --session -- streamlit run app.py
# Gradio with public access
modelpark run -n demo --access public -- python gradio_app.py
# Custom port for an unknown framework
modelpark run -n myapp -p 9000 -- python server.py
# REST API with auto-detected type
modelpark run --name myapi -- uvicorn main:app --port 8000
# Explicitly set API type
modelpark run --name myapi --type api -- python server.py
Output (background mode)
Detected framework: streamlit (port 8501) Registering app 'myapp'... App 'myapp' registered (private) Started 'myapp' (pid 12345, child pid 12346) Local: http://localhost:8501 Remote: https://myapp.modelpark.app Logs: ~/.modelpark/logs/myapp.log
Output (session mode with --session)
Detected framework: streamlit (port 8501) Registering app 'myapp'... App 'myapp' registered (private) Starting: streamlit run app.py Waiting for port 8501... Port 8501 is ready 🚀 ModelPark Run Local: http://localhost:8501 Remote: https://myapp.modelpark.app
modelpark serveTunnel an already-running local port
modelpark lsList running apps
modelpark logsView app logs
modelpark stopGracefully stop an app
modelpark killForce stop an app
modelpark loginAuthenticate with ModelPark
modelpark logoutRemove saved credentials
modelpark statusShow authentication status
modelpark versionPrint version information

Python Library

Prefer Python? Use our Python library to control the ModelPark CLI and access published apps via API.

Features
  • Run and serve apps in the background via the CLI
  • Manage running apps — list, logs, stop, kill
  • Make authenticated API calls to published apps
  • API key authentication for REST API apps
  • Programmatic access to all ModelPark CLI commands
Installation
pip install modelpark
Quick Start — CLI Wrapper
from modelpark import ModelPark mp = ModelPark() mp.login(token="your_token") mp.serve(name="my-app", port=8000) mp.ls()
Quick Start — API Access
from modelpark import APIManager api = APIManager() response = api.make_api_call( "my-app", headers={"X-ModelPark-Key": "mpk_your_api_key"} )
View on GitHub