Automation for Small Business: reaching the 40% of tools with no API
Every small-business automation guide on the SERP recommends the same three things: Zapier, Make, IFTTT. Those tools stop at the API wall. The software a small business actually lives in (the desktop accounting program, the bank portal behind 2FA, the industry CRM, Apple Mail, WhatsApp Business) is on the other side of that wall. This is a guide about automating there.
The SERP gap nobody writes about
Search the keyword this page ranks on and read the first ten results. They are nearly interchangeable. A block on the benefits of automation, a list of tasks every small business should automate, and a rundown of the same five or six tools: Zapier, Make, IFTTT, Pipedream, sometimes Microsoft Power Automate. Every tool in that list works the same way under the hood. It waits for a webhook, calls an API, and writes to another API.
That is a great foundation when the target tool has an API. It is useless when it does not. And a surprising amount of the software a real small business uses does not. Ask any accountant whether their clients use QuickBooks Online or QuickBooks Desktop, and you will hear that half or more are still on Desktop. Ask any single-location business whether their bank exposes a public API, and the answer is almost always no. Ask a home services company whether WhatsApp Business has free programmatic access, and the answer is no.
The existing guides do not address that tier because their tools literally cannot reach it. We can, and this page is about how.
The five built-in MCP servers, hardcoded in the bridge
When Fazm launches, the bridge registers exactly five MCP servers before the chat surface is even rendered. The list is on one line of source you can grep. None of them require the target application to ship an API.
Why this is the uncopyable anchor: every other small-business automation article points at a vendor catalog. This one points at a single line of code in the Fazm source tree. acp-bridge/src/index.ts:1266 is the ground truth. Two of those five servers (macos-use and playwright) are the no-API path.
The no-API tier, category by category
A partial catalog of the software where small business work lives and where cloud automation tools cannot reach. Each of these is reachable through AX tree or real-Chrome DOM snapshots.
Desktop accounting
QuickBooks Desktop, Sage 50, Quicken. The cloud versions have APIs. The desktop versions your accountant uses do not.
Bank and credit union portals
Most regional bank portals gate exports behind 2FA and offer no public API. Fazm logs in as you, in your real Chrome.
WhatsApp Business
The WhatsApp Business API is gated, expensive, and meta-owned. The native Mac app is free. Fazm reads and sends from the native app.
Apple Mail and Calendar
IMAP exists, CalDAV exists, but the small business is already using Mail.app with signed rules and smart mailboxes. Fazm drives Mail.app itself.
Numbers and Pages
Tens of millions of one-off spreadsheets and contracts live here, never in Google Sheets or Docs. No API. Fazm clicks cells.
Niche industry CRMs
MatrixCare (senior care), Dentrix (dental), Jobber or ServiceTitan on lower tiers, Mindbody for studios. APIs missing or paywalled.
Paid-ads dashboards without APIs
Google Ads has an API. The Amazon Seller Central replenishment screen does not, and the TikTok Shop ads flow is a moving target. Fazm reads the UI.
Square Register and iPad apps
iPad point-of-sale flows you screen-mirror from the counter to your Mac. No REST surface. Fazm acts through the mirrored UI.
What Fazm reaches from one install
The agent orbits the two primitives the Mac already exposes: the accessibility tree for native apps, and the DOM of your real Chrome session. From that center, it can touch anything you can touch on your machine.
The tool-routing block the model reads every session
The reason Fazm picks the right primitive for each target is that the model is briefed with an explicit routing table. It is plain English and it lives in the Swift source next to the chat prompts. When a user asks for something in Numbers, it routes to macos-use. When the request names a web page, it routes to Playwright. When the target is WhatsApp, it routes to the WhatsApp MCP.
One plain-English request, three primitives
The user says the sentence. The bridge fans it out to whatever primitive actually reaches the target. That fanout is the reason a small business can drive twenty different tools from a single prompt.
Plain English, fanned out across the no-API tier
What the install actually gives a small business
These are not marketing numbers. They are what the app literally ships with. The last one is the whole point of the page.
A Zapier-style workflow for the same scope would require 0 paid connectors minimum for the best-case subset, and would silently omit the desktop and WhatsApp legs entirely.
The six tools that reach any Mac app
You can verify this yourself. Pipe a JSON-RPC tools/list into the bundled binary and the same six tools the bridge registers print out. Every one of them ends in _and_traverse, meaning the agent acts and re-observes in a single MCP round trip.
End-to-end: the monthly bank reconciliation no SaaS automator can do
Open Chrome, go to the bank portal in the tab you already have open
Fazm calls browser_tabs to find an existing session. 2FA is already satisfied from your morning login.
Navigate to the monthly statement page and download the CSV
Fazm reads the DOM snapshot saved as a .yml file, finds the export button by its accessible name, and clicks it.
Open QuickBooks Desktop with macos-use
macos-use_open_application_and_traverse, then macos-use_click_and_traverse on File > Utilities > Import > Bank Feed.
Match transactions line by line, approving anomalies with you
For each row, the agent checks against your categorization memory and either commits or asks you with ask_followup.
Email the accountant the reconciled PDF from Apple Mail
The reconciled statement prints to PDF, opens in Preview, and the agent drives Mail.app to attach it and send.
Total elapsed: roughly as long as you would take, minus the clicking
Nothing in this sequence hit an official API. It all went through AX tree and DOM snapshots the way you would with a mouse.
Every step above happens on your machine. The CSV never leaves a path you control. The bank password never leaves your real Chrome session. The reconciled PDF is sent from your own mail account. That is a property of the no-API tier: nothing touches a cloud automation vendor in the middle.
The tool-by-tool honest reckoning
A small business stack split by whether the tool ships an API and how each automation approach treats it.
| Feature | Zapier / Make / IFTTT | Fazm |
|---|---|---|
| Stripe, Shopify, Gmail, Google Drive, Calendly, HubSpot free tier | Zapier, Make, IFTTT cover these | APIs exist, Fazm uses them first |
| QuickBooks Desktop, Sage 50, Quicken | No coverage, or 'use the cloud version' advice | Fazm drives the app UI via AX tree |
| Regional bank and credit union portals (2FA gated) | Rely on Plaid, which misses ~half of US credit unions | Fazm uses your real Chrome session |
| WhatsApp Business, iMessage | Meta's gated API or no support | Fazm drives the native Mac app |
| Apple Mail, Calendar, Numbers, Pages | IMAP / CalDAV scripting, manual | Fazm clicks the app |
| Niche industry CRMs (Dentrix, MatrixCare, MindBody) | Paywalled APIs or none | Fazm drives the web or desktop UI |
| TikTok Shop, Amazon Seller Central flows | Scraping tools, rate-limited | Fazm drives the dashboard |
| Your own SQLite database and local CSV files | Out of scope for cloud automators | Fazm executes SQL directly |
What you need for each path
The preconditions are wildly different. The API-based path asks the SaaS vendor for permission. The UI-based path asks the machine you already own.
API-based automation needs
- A public REST or GraphQL API, stable enough to version
- Paid developer tier that lets you actually call it
- OAuth credentials you are willing to keep rotating
- A cloud automation vendor that has written the connector
- Engineering time to maintain when an API version deprecates
UI-based automation needs
- An on-screen element with a role and an accessible title
- macOS Accessibility permission (the same one VoiceOver uses)
- Your Chrome session, signed in the way you use it every day
- A plain-English description of what you want done
- The machine to stay awake while the work runs
A partial roll call of tools without a useful public API
Not exhaustive. Each of these is on at least one small-business operator's Mac right now and is currently invisible to the Zapier-style catalog.
The mental model to take into Monday morning
Split your stack in two. On one side, the tools with real APIs: Stripe, Gmail, Shopify, Google Calendar, HubSpot at the free tier. Those are where a Zap or a Make scenario still makes sense. On the other side, the tools that do not: your desktop accounting program, your bank portal, WhatsApp, your industry CRM, your local spreadsheets. That side is where you are losing weekly hours and where the existing automation literature has nothing to say.
You do not need to replace the API-side automations you already have. Keep them. What you need is a tool that crosses the line. Fazm is designed around that line. The macos-use primitive handles the Mac apps. The Playwright primitive handles the logged-in web portals. The WhatsApp primitive handles the messaging side. The single five-line list at acp-bridge/src/index.ts:1266 is the whole surface.
The thing to notice is that none of those primitives are about APIs. They are about reading and acting on what is already on your screen. That is also why they are durable. A SaaS vendor can deprecate an API version on a Tuesday. They cannot deprecate the accessibility tree macOS ships with every build.
Want to walk through your own no-API tier?
30 minutes on a call. Bring the task you keep meaning to script and we'll show you how it runs in Fazm, on your actual Mac, without asking a single vendor for an API key.
Book a call →Frequently asked questions
Why does every small-business automation guide read the same way?
Because they are all written from the API layer up. Zapier, Make, IFTTT, Pipedream and the blogs that review them catalog cloud SaaS connectors. A 'connector' is a thin wrapper around a public REST or GraphQL API. If the target software does not ship that API, there is nothing to write about, so those tools get left out. The ~40% of a small-business software stack that lacks a public API (desktop accounting, the bank portal behind 2FA, WhatsApp Business, Apple Mail and Calendar, Numbers, niche industry CRMs, paid-ads dashboards without public endpoints) is invisible to that whole school of automation. This guide is about automating that 40%.
What exactly does Fazm use instead of APIs?
Two things. For anything running on the Mac desktop, Fazm drives the macOS accessibility tree through the bundled mcp-server-macos-use binary. That is the same AX tree VoiceOver reads. Every on-screen button, text field, menu item and table cell is exposed with role, title, frame in points, and a visible flag, so the agent can click 'Reconcile' in QuickBooks Desktop or 'Export' in a bank portal without the app needing any integration. For Chrome-based work (portals that gate behind 2FA, SaaS dashboards with no public API, tools where login is tied to a cookie), Fazm uses the Playwright MCP server against your real Chrome session, reading DOM snapshots saved to /tmp/playwright-mcp/ as .yml files. Neither path calls an API on the target tool. Both are pinned in Desktop/Sources/Chat/ChatPrompts.swift lines 56 through 65, the tool-routing block the model is briefed with.
Which built-in MCP servers ship with Fazm, and where can I see the list?
Exactly five: fazm_tools, playwright, macos-use, whatsapp, google-workspace. The list is hardcoded at acp-bridge/src/index.ts line 1266 as BUILTIN_MCP_NAMES. You can also read the macos-use tool set by piping a JSON-RPC tools/list into Fazm.app/Contents/MacOS/mcp-server-macos-use; it prints six tools, all ending in _and_traverse: open_application, click, type, press_key, scroll, and refresh. Every action rebuilds the tree in the same MCP call, so an agent acts and re-observes in a single round trip.
What are the real small-business examples that fall into the no-API tier?
QuickBooks Desktop (still used by accountants who refuse the cloud version), Sage 50, Xero imports that need a human click in the bank portal, your small business's login page on their local credit union (2FA-gated, no public API), Quicken, WhatsApp Business on desktop, iMessage for customer reminders, Apple Mail and Calendar for owner-run shops, Numbers and Pages for single-use spreadsheets and contracts, Mindbody, Jobber, ServiceTitan (all with APIs rationed or paywalled behind the highest tier), industry-specific CRMs like MatrixCare or Dentrix, Square Register on an iPad you touch from a Mac, Canva's paid tiers where the API is enterprise only, and the TikTok / Instagram Business suites where a lot of hosted actions have no programmatic route. Fazm reaches all of these because it treats the UI as the interface.
How is this different from a browser automation script I could write in Python?
Three ways. First, the scope: a Python Selenium or Playwright script only touches the browser, so it cannot help with QuickBooks Desktop, Numbers, Apple Mail, or any native app. Fazm's macos-use path covers those. Second, the login surface: your homegrown script starts from a cold profile, so every 2FA-gated portal asks for a code; Fazm plugs into your real Chrome session via Playwright MCP's extension mode, inheriting the cookies and device trust you already have. Third, the delivery: a script is a codebase you now maintain. Fazm is a consumer app and the agent is handled by the model, so a small business operator triggers work in plain English instead of committing a Python file.
Does the Mac need to stay awake for these automations?
Yes. Fazm is a desktop agent, not a cloud service. That is the trade-off: it can drive anything on your machine (local files, non-API apps, 2FA-authenticated sessions), but the machine has to be on. For overnight runs or scheduled tasks, a cheap always-on Mac mini in a closet is the usual pattern. The gain is that you are not paying per-task to a cloud workflow vendor and you are not rewriting automations every time a SaaS vendor deprecates an API version.
Is this only for technical users?
No. Fazm is a consumer Mac app, not a developer framework. You install it, grant Accessibility permission once (the same TCC dialog VoiceOver uses), and talk to it in plain English or voice. The MCP servers, AX tree walks, and Playwright snapshots are handled by the bridge. You do not write YAML, you do not configure connectors, and you do not maintain a workflow canvas. The 'skill' files in the app bundle (seventeen of them, living at Sources/BundledSkills/*.skill.md) are the agent's recipes, not yours. You can edit them if you want, but you never have to.
What should the first automation be on a Monday morning?
Pick the task you have resisted scripting because the tool did not have an API. The usual candidates for a small business: weekly bank reconciliation (log into the bank portal, export the CSV, open QuickBooks Desktop, import, categorize, reconcile), new-lead enrichment (copy a row out of your industry CRM, search LinkedIn, paste contact into Apple Mail, send a templated intro), or WhatsApp Business replies (read incoming messages, pull customer context from your local database, draft a reply, wait for your approval). All three are API-hostile and all three are weekly time sinks. Fazm handles them through the UI.
Can Fazm still use APIs when the tool does have one?
Yes. If the target has an API and the MCP ecosystem has a server for it, the agent uses that first because it is cheaper and more reliable. The point is not 'never use APIs.' The point is 'do not let the API wall decide what is automatable.' Most small-business stacks are hybrid: Stripe has an API, QuickBooks Desktop does not; Gmail has an API, Apple Mail does not; the Shopify admin has an API, the Canadian bank your LLC banks with does not. Fazm crosses both sides of that line.
Adjacent angles on Mac-native small-business automation.
Related reading
Automation for Small Business: The 17 Skills Fazm Ships On Day One
The sibling page. Instead of the no-API angle, it catalogs the seventeen recipe files in the bundle that cover the work most small businesses need first.
Accessibility Tree Computer Use: Six Signals a Screenshot Cannot Carry
The deeper read on why AX tree primitives beat pixel-first agents. A real 441-element dump, field by field.
Automate Repetitive Computer Tasks for a Small Business
Task-by-task walkthrough for a five-person agency. Where to start, which skill to call, how to approve destructive steps.
Comments (••)
Leave a comment to see what others are saying.Public and anonymous. No signup.