Everything you need for local PHP development on Mac.

The app, the bothy CLI and the MCP server share one core and one config file, so every change shows up everywhere.

Key feature 1

See the whole server at a glance

Services running, requests and 5xx errors per hour, and memory per service sampled every second. One screen tells you whether everything's healthy before you open a browser.

  • Live memory graphs per service
  • Stop All / Start All
  • Domain, PHP and MySQL versions in the header
Bothy dashboard screen
Key feature 2

Every site gets its own page

Requests, errors, latency and FPM status for that site alone, a traffic chart for the last hour, and tabs for routing, environment, database, git and live logs. Share it publicly in one click with a Cloudflare tunnel.

  • Per-site stats from Caddy access logs
  • Routing, Environment, Database, Git and Logs tabs
  • Open, Terminal, Reveal in Finder, Share
Bothy site screen
Key feature 3

Any PHP version, per site

Install versions from Homebrew, switch a site between them, and edit php.ini for a version or override it for a single site - all in a form, not a text file.

  • One php-fpm master per version, one pool per site
  • Per-site php.ini overrides
  • Xdebug toggle per site
Bothy php screen
Key feature 4

MySQL and MariaDB, side by side

Run several servers, each with its own port and data directory. Create and assign databases, import dumps, take snapshots and jump into phpMyAdmin.

  • Multiple servers on different ports
  • Snapshots, restore and .sql/.zip import
  • phpMyAdmin at phpmyadmin.test
Bothy databases screen
Key feature 5

Services that stay up

Caddy, dnsmasq, PHP and MySQL run as launchd agents, so they keep running when you quit Bothy and restart if they crash. Add Mailpit, Redis, Memcached and Node when you need them.

  • CPU and memory per service
  • One-click add-ons
  • Service logs in the app
Bothy services screen
Key feature 6

Built for AI-assisted development

Bothy ships an MCP server and a CLI that share the app's core. Install it into Claude Desktop or Cowork with one click, register it with Claude Code or Codex, or paste JSON into any other MCP client.

  • bothy_* tools for Claude
  • Every CLI command supports --json
  • Works with Cursor, Windsurf, Zed, VS Code
Bothy integrations screen

Deep dives

And the rest

The full list, grouped by area.

Sites
*.test domains with HTTPS

dnsmasq answers *.test and Caddy serves every site over HTTPS with its own trusted certificate authority.

Clone from git or GitHub

Paste a repo URL, or sign in with the GitHub CLI and pick one of your repositories. Bothy clones it, runs composer install and creates the database in one go.

Git aware

Sites that are git repos get a branch mark in the sidebar and a Git tab showing the current branch and every new, modified, deleted or renamed file, so you can see what you've touched before you commit.

.htaccess translation

RewriteRules are converted into the site's Caddy vhost, so Apache-era projects run unchanged.

Subdomains

app.wasteprime becomes app.wasteprime.test.

Per-site environment

Set env vars and toggle Xdebug per site from the app or CLI.

Folders and pins

Drag sites into folders, pin favourites, filter and sort. Built for dozens of client sites.

Starters

New WordPress, Laravel, Symfony, Craft CMS, Statamic or Drupal site in one step, config already pointing at its database.

Export and share

Zip a site with its database dumps and config, or open a temporary public URL through a Cloudflare tunnel.

PHP & databases
Per-site PHP versions

One php-fpm master per version and one pool per site.

Per-site php.ini

Override memory_limit, upload limits and anything else for a single site, or for a whole PHP version.

Multiple MySQL servers

Run MySQL and MariaDB versions side by side, each with its own port, socket and data directory.

Snapshots and imports

Gzipped snapshots, one-click restore, and imports of .sql, .sql.gz or .zip dumps with DEFINER clauses stripped.

phpMyAdmin

Available at phpmyadmin.test.

Mailpit

Catches outgoing mail at mail.test, with an unread badge in the sidebar.

Redis, Memcached and Node

Add-ons run alongside your other services, with the matching PHP extensions installed for you.

Monitoring
Dashboard

Services running, requests and 5xx errors per hour, and total memory at a glance.

Per-site stats

Requests per hour, 4xx/5xx counts and p95 response time from Caddy's access logs, plus per-pool FPM stats.

Live logs

Follow PHP and access logs like tail -f, with a filter field and pause.

Doctor

bothy doctor reports on Homebrew, binaries, the resolver, PHP and database versions and every service, and names the command that fixes anything missing.

Automation
Claude Desktop & Cowork

Install Bothy as a desktop extension with one click. New Cowork tasks get bothy_* tools.

Claude Code, Codex and any MCP client

Register the MCP server with Claude Code or Codex, or paste JSON into Cursor, Windsurf, Zed or VS Code.

The bothy CLI

Everything the app does, from any terminal. Every command supports --json.

launchd services

Services run as user agents, so they keep running after you quit the app and restart if they crash.

Get Bothy for $69.
One payment for every 1.x release. Version 2 will be a separate purchase.
Buy now