Releases: leadbay/mcp
Releases · leadbay/mcp
Release list
mcp-v0.23.11
Windows .dxt sign-in now opens the browser reliably (product#3839).
openInBrowser(Windows) — the auto-open resolved the momentcmd.exewas created, before its internalstartbuiltin actually handed the URL to the default browser. So a silent no-op (no default-browser protocol association, a locked-down shell / AppLocker, a corruptHKCR\http\shell\open) went undetected:browserOpenFailedAtBootstrapstayed false and the user was told "a browser may have opened" when nothing did. On Windows we now wait (bounded — 800ms forcmd start, 1200ms otherwise) for the launcher's exit code, treat a non-zero exit as failure, and fall through torundll32 url.dll,FileProtocolHandler(no command interpreter — the same ShellExecute path Explorer uses, with an honest exit code) and finally PowerShellStart-Process. When every launcher fails, theAUTH_REQUIREDenvelope honestly says the browser couldn't be opened and shows the clickable sign-in link. The #3801&-quotingcmd startcandidate is unchanged and still tried first. macOS/Linux keep resolve-on-spawn(the #3805 headless-hang fix — those launchers are the hand-off).bin.tsshutdown — thebrowserOpenInFlightteardown wait rose 1.5s → 3s so the multi-launcher Windows walk can finish dispatching before exit (the sibling bootstrap wait already allows 4s; the surfaced sign-in link is the fallback either way).
mcp-v0.23.10
A freshly-created lens no longer reads as "empty" (product#3833).
leadbay_new_lens— creating a lens with criteria queues an asynchronous backend wishlist rebuild, so an immediateleadbay_pull_leadscan read empty for a few seconds while it computes. Thecreatedresult now carriescomputing_wishlist: trueand a "leads stream in — pull in ~30s" message so the agent waits instead of reporting an empty lens. A criteria-less clone inherits the base lens's leads immediately (computing_wishlist: false).leadbay_pull_leads— on an EMPTY page where the backend reports the lens is still computing (computing_wishlist/computing_scores),next_stepsnow carries a single "Re-pull in ~30s" option (kind: repull_computing) instead ofnull, so the agent renders a wait-and-retry widget rather than "no leads." An empty page with nothing computing still returnsnull(a genuinely empty / over-narrow lens — no fabricated leads).- Confirmed against
leadbay/backend(POST /lenses/:id/filter→queueRefreshJob→RefreshLens) and a live probe onapi-us: a bare clone shows leads instantly; a filtered clone showscomputing_wishlist: truethen settles within ~1–30s.
mcp-v0.23.9
MCP data plane now targets backend /1.6 (was /1.5).
client— every request path is built from a singleAPI_VERSION = "1.6"constant (exported asAPI_PREFIX).LeadbayClient(request / requestVoid / requestRawBinary + mock-mode paths) andbin.ts's login probe all reference it, so future backend version bumps are a one-line change. Verified live onapi-usbefore shipping:/1.6mirrors/1.5across the full route surface probed (monitor, lenses, auth/login, kpi, geo) — identical status on every call. Tool-description prose and route-doc comments updated to /1.6 to match.
mcp-v0.23.8
Installer no longer hangs in Claude Cowork / headless terminals (product#3805).
installer— the guided installer awaited a detached browser-opener that resolved only on the child'scloseevent, which a detached process often never emits; with no overall timeout the process dangled until the host (Claude Cowork) killed it ("running… then timeout", intermittently). It now reuses the hardenedopenInBrowser(resolves onspawn, notclose), no longer blocks GUI startup on the browser open, and bounds the run with a watchdog that exits cleanly with hosted-MCP instructions instead of hanging. The installer always tries to open the browser — it never guesses "headless" and refuses to start.- Docs — README documents adding Leadbay on Claude web / Cowork web as a custom Connector (
Customize → Connectors → Add custom connector, URLhttps://leadbay-mcp-prod.fly.dev/mcp; OAuth runs in-app), and theclaude mcp add --transport httpequivalent. Stale@0.16install snippets corrected to@latest.
mcp-v0.23.7
Field-sales tour always renders the map (product#3779).
leadbay_plan_tour_in_city/leadbay_tour_plan— a plain-language tour intent ("I'm visiting Jacksonville in 3 days — who should I go see?") now deterministically routes to the tour tool (no longer leaks toleadbay_pull_leads), builds the mixed tour (known accounts + fresh prospects), and proactively offers to plot it on a map — every run, without the user asking. On acceptance it renders viaplaces_map_display_v0(or the place-card carousel on hosts without the widget).- Server-shaped
map_locations[]— leads are pre-shaped server-side ({name, address, latitude, longitude, notes}, badge innotes) plus amap_summary, so the agent never hand-builds the widget payload and passes coordinates through verbatim (no fabricated pins/addresses). Each stop is badged ★ Customer / ★ Qualified / ✦ New from real history fields (epilogue_status/last_prospecting_action_at/last_monitor_action_at). Guards against a"null"-string contact name.
mcp-v0.23.6
Geographic filter on Discover lenses (product#3759).
leadbay_new_lens/leadbay_adjust_audiencenow acceptlocations/exclude_locations— a geographic dimension on the Discover lens, mirroring the sector path. Free text (["Indre-et-Loire"],["Texas"]) auto-resolves via/geo/search, or pass admin-area ids directly. Resolution happens first: ambiguous/unresolved text returnsambiguous_locationsand the lens is not mutated (no half-built lens). Resolved ids merge into the lens filter as alocation_idscriterion. Unblocks the "scope a territory → net-new accounts there" cockpit workflow — geography was previously settable only on the Monitor side.
mcp-v0.23.5
See CHANGELOG.md for details.
mcp-v0.23.4
See CHANGELOG.md for details.
mcp-v0.23.3
- Release plumbing only — no functional change. First release on the updated CI that also publishes fixed-name
leadbay-latest.dxt/.mcpbassets, so the docs can link a stable…/releases/latest/download/leadbay-latest.dxtthat always resolves to the current version.
mcp-v0.23.2
- Installer GUI shows the version (product#3799) — the installer and uninstaller GUI cards now display the MCP version (e.g.
v0.23.2) as a small muted-grey footer. Sourced from the build-time__LEADBAY_MCP_VERSION__define, so it trackspackage.jsonwith no manual upkeep.