{"name":"io.github.dan-fetch-studio/tidyports","slug":"dan-fetch-studio-tidyports","title":null,"description":"See and kill the dev servers your coding agents leave running, and get collision-free ports.","url":"https://mcp.market/server/dan-fetch-studio-tidyports","rating":null,"grade":"A","score":85,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":18,"stars":0,"forks":0,"downloads_week":31,"last_push_at":"2026-07-29T08:23:36.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/dan-fetch-studio/tidyports-integrations","website":null,"version":"0.1.2","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@tidyports/mcp","version":"0.1.2","transport":{"type":"stdio"}}],"tools":[{"name":"alloc_port","description":"Return a stable free port assigned to this git worktree, so parallel agents/worktrees don't collide on the same port (EADDRINUSE). Wire the returned port into the dev server's launch command.","write_action":false,"price_micros":0,"input_schema":null},{"name":"free_port","description":"Return a single TCP port that is NOT currently in use, so you can bind a server without an EADDRINUSE collision. Stateless — for a STABLE port that's remembered per worktree across restarts, use alloc_port instead.","write_action":false,"price_micros":0,"input_schema":null},{"name":"kill_port","description":"Stop whatever dev server is listening on the given local port (frees it).","write_action":true,"price_micros":0,"input_schema":null},{"name":"list_servers","description":"List the local dev servers currently listening — port, process, git branch, owner, and an idle hint. Read-only. Use it to answer 'what's running?', 'which server is on :3001?', or 'which worktree is serving this?'.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":85,"grade":"A","scanned_at":"2026-09-24T21:42:12.333Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T21:42:12.356Z","components":{"code":{"score":25,"max":25,"notes":["2 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":12,"max":15,"notes":["last push 58 days ago"]},"identity":{"score":6,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@tidyports/mcp","version":"0.1.2","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-07-26T00:05:46.614Z","repositoryUrl":"git+https://github.com/dan-fetch-studio/tidyports-integrations.git","weeklyDownloads":31}],"repo":{"found":true,"owner":"dan-fetch-studio","repo":"tidyports-integrations","archived":false,"pushedAt":"2026-07-29T08:23:36Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/258334538?v=4","ownerCreatedAt":"2026-01-30T22:54:33Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/258334538?v=4&s=128","source":"github"},"presence":{"stars":0,"forks":0,"downloadsWeek":31,"license":"MIT","lastPushAt":"2026-07-29T08:23:36.000Z","score":18}}}},"grade_history":[],"reviews":[]}