wharfy
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@wharfywhat's listening on port 3000?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
wharfy
See who is listening on your dev ports — and which app or AI agent started them — then kill them safely. CLI + MCP server. macOS.
$ wharfy list
PORT PID USER PROCESS ← PARENTS
3000 51530 egebilge node ← claude ← zsh ← Terminal
3001 51612 egebilge node ← cursor ← launchd
5432 1201 egebilge docker: papyro-app-db-1The parent chain answers the question other port killers can't: who opened
this? A port started by Claude Code shows claude in the chain; one started
by Cursor shows cursor.
Install
npm install -g wharfyRelated MCP server: Mac MCP
CLI
wharfy list # human-readable table
wharfy list --json # machine-readable
wharfy kill 3000 # SIGTERM, then SIGKILL after 2s if it won't die
wharfy kill --all-dev # clear every dev port at once
wharfy kill 3000 --tree # stop the whole npm-run-dev tree, not just the leaf
wharfy wait 3000 # block until the port answers (CI, scripts)kill exits 1 when nothing listens on the port.
MCP server (for AI agents)
Claude Code:
claude mcp add wharfy -- npx -y wharfy mcpCursor — .cursor/mcp.json:
{
"mcpServers": {
"wharfy": { "command": "npx", "args": ["-y", "wharfy", "mcp"] }
}
}Tools:
list_ports— listening TCP ports with owning process, user, parent chain, project name (read-only)check_port— who owns one portkill_process— stop whatever listens on a port;treeandforceoptions (destructive, annotated as such — your client will confirm)wait_for_port— block until a server answerssuggest_free_port— next free port from a preferred oneexposure_report— which servers are bound to 0.0.0.0 and reachable from your LAN
Menu bar app
A native macOS menu bar companion — port list with real app icons, live CPU/RAM, LAN-exposure warnings, safe tree-kill, Docker awareness: wharfy.dev
Why not kill-port?
kill-port sends kill -9 immediately through a shell pipeline and hasn't
been updated since 2022. wharfy parses lsof -F machine output in-process,
terminates gracefully (SIGTERM → 2s → SIGKILL), validates input, and tells
you who owned the port.
macOS only. MIT.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
MCP server for OnceAsk, the AI-native current-address layer for people and agents.
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Related MCP Servers
- AlicenseAqualityDmaintenanceInspect, manage, and kill local dev servers via MCP. Stop guessing what's on :3000. Five tools: list servers with framework detection, inspect ports, find zombies, diagnose conflicts, safe-kill with dry-run default. Local, no cloud, no telemetry.57 npm3MIT
- AlicenseNot gradedqualityAmaintenanceA local macOS MCP server for AI Agents that exposes safe endpoints for shell commands, files, processes, macOS automation, browser control, and more.69MIT
- AlicenseNot gradedqualityCmaintenanceA lightweight, cross-platform MCP server for managing background processes. Enables AI coding agents to spawn, monitor, and interact with long-lived processes.MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that gives AI coding agents structured port intelligence — finding free ports, identifying port hogs, and killing zombie processes without leaving the chat.1MIT