Skip to content

v0.1.2 — auto-reconnect for fire-and-forget commands

Choose a tag to compare

@dmang-dev dmang-dev released this 16 May 20:27
· 66 commits to main since this release

Auto-reconnect now covers fire-and-forget commands too. Previously call() would lazy-reconnect if PPSSPP had been closed and reopened, but fireAndForget() (used by pause/resume/screenshot) still threw the old 'PPSSPP not connected — did you start() the client?' error, leaving those tools broken across PPSSPP restarts until the MCP client itself restarted.

Fixed

  • fireAndForget() now auto-reconnects — extracted the lazy connection guard from call() into a shared ensureConnected() helper, then routed fireAndForget() through it too. ppsspp_pause, ppsspp_resume, and ppsspp_screenshot (which internally uses fire-and-forget for the pause/capture/resume bracket) now survive a PPSSPP close-and-relaunch without needing the MCP server itself to restart. Same memoized-readyPromise safety as before: concurrent callers share a single underlying connect attempt.

Changed

  • fireAndForget() is now async (returns Promise<void> instead of void). All in-tree callers in src/tools.ts and scripts/smoke.cjs updated to await it.

Install: npm install -g mcp-ppsspp@0.1.2 or npx -y mcp-ppsspp

Full Changelog: https://github.com/dmang-dev/mcp-ppsspp/blob/v0.1.2/CHANGELOG.md