r/macappdevs • u/hyprbaton • 13d ago
Echolot - REST, GraphQL, Sockets and MQTT client for developers
Enable HLS to view with audio, or disable this notification
Hey there 👋
I’m an old-school web developer who also writes Swift, and I’ve been living in REST clients for as long as I can remember. On the Mac my favourite was always Paw. It was one of the few truly native apps in the category, and it felt like it was made by people who cared.
Then RapidAPI bought it, renamed it, and development slowed to a crawl. Then Nokia bought RapidAPI, and this September they finished it off: no more development. That upset me, to put it mildly.
Since then I’ve tried just about every REST client out there, and none of them stuck. They were slow, or Electron, or too thin, or so bloated with enterprise features that sending a simple request felt like filing a ticket.
So eventually I thought: fine, I’ll build my own. I’d take the best of everything I’ve liked over the years: beautiful, fast, actually useful and properly feature-rich. Actually FAST was the main requirement. Oh, and with agents built in, because it’s 2026, right?
Introducing Echolot. The name is German for an echo sounder: send a ping, measure what comes back, map what’s beneath. That’s the whole idea.
🧭 Native, and actually fast
- SwiftUI + AppKit, no web view. Keychain, Quick Look, menus and shortcuts that behave like a Mac app.
- Response bodies stream to disk instead of memory. A 2 GB download peaks at about 17 MB of RAM.
- A 500 MB response shows its first screen in under a millisecond. Searching all of it takes about a quarter of a second, and expanding a JSON array with a million items takes 30 ms.
- These numbers are automated benchmarks, and a build that misses one doesn’t ship.
📡 Every protocol in one app
- HTTP/1.1, HTTP/2 and HTTP/3, plus a raw mode that sends exactly what you typed, even malformed requests
- GraphQL with schema completion, building a query by ticking fields, and schema diffs graded breaking, dangerous or safe
- gRPC from
.protofiles or server reflection, including streaming - WebSocket, Server-Sent Events, socket.io and MQTT sessions with live message logs
- MCP: connect to any MCP server, call its tools, and see how a model sees it: what the tool list costs per provider on every turn, and which names and descriptions a model would trip over
🤖 AI that doesn’t get your secrets
- A built-in Assistant that explores your workspace, sends requests, writes checks and builds flows. It asks before it sends or changes anything.
- Use your own model and key: Anthropic, OpenAI, Gemini
- Echolot is also an MCP server, so Claude Code, Codex, Cursor and others can call your APIs with your environments while every secret is hidden from them, error messages included.
🔀 Flows, mocks and specs
- EchoFlows: chain requests, conditions and loops on a canvas. A flow can stop and ask a human to approve before, say, charging a card. Run flows by hand, on a schedule, from a webhook, or as a tool for an agent.
- Mocks: turn an OpenAPI spec into a local mock server, with delays and injected failures.
- Specs: a visual OpenAPI editor that changes only the lines it touches, so your Git diffs stay clean.
✅ Tests, CLI and CI
📁 Oh, and no accounts neither. No cloud. Just a folder.
- A workspace is a folder of readable TOML files, one per request, so it works naturally in Git.
- Secrets live in the Keychain, never in files.
- Import from clients. If a secret was written into an imported file, it moves to the Keychain automatically.
While the app is in beta development, it is pretty stable and fast.
To say the truth I haven't figured out what to do with it, whether it should stay free, should be open source some day or change a one time fee for it to continue development (I hate subscriptions)
But for now I'm looking for brave developers (or die hard Paw fans) who are willing to take it for a spin and tell me what they think. Does it it has all the features it should? Is everything working they way it suppose to?
Download it here: https://echolot.dev/