The Demand Report — Issue #15
This week the log started recording everything an agent
does on the apis.io MCP server, not just its searches.
The first thing it shows: agents read the menu thirteen
times for every time they order. On the human side, the
crawler left, the vocabulary widened, and people kept
asking for their tools by name.
Week of October 19 – 25, 2026 · 31,960 providers ·
160,947 APIs
Every Monday I read what people and agents actually typed
into
apis.io
— the search box and the MCP server — as a demand signal
for the API economy. Nobody else has this data, so nobody
else can send you this email.
📈 The Demand Report
Thirteen looks for every call
From October 20 the apis.io MCP server logs every request
an agent makes, along with what kind of request it was.
Before that, the log only caught the calls that searched.
The MCP line on the scoreboard below reads
36,330 this week, but it isn't
comparable to last week's 8,629 — it's counting
a lot more than it used to.
What it's counting is the interesting part. Over the
six days the new log covers:
|
What the agent did
|
Requests
|
|
Listed the tools (tools/list)
|
32,558
|
|
Called a tool
|
2,567
|
|
Fetched a prompt
|
324
|
|
Loaded a skill
|
44
|
|
Read a resource
|
18
|
Agents asked what the server could do 32,558 times, and
actually did something 2,567 times — about thirteen
looks for every call.
Most agent clients list a server's tools every time
they connect, before a person has asked them anything. So
most of an MCP server's traffic is agents reading the
menu, and only a small share is agents placing an order.
For anyone running an MCP server, that changes what's
worth measuring. Connections and listings say an agent
knows you exist. Tool calls say it found something worth
doing. The ratio between them is the number I'll
track from here.
The tool-call line — 2,567 in six days, about 430 a day —
is the closest thing to the old "MCP searches"
series, though still not the same count. Prompts are worth
a note too: 324 times this week an agent pulled one of the
server's ready-made prompts rather than just calling
tools.
The crawler left; the vocabulary didn't
Total requests fell
644,218 → 271,378, down 58%, and keyless
callers 554,808 → 200,328, down 64%.
Distinct terms rose
5,237 → 5,362, up 2.4%. That's the
clean version of the pattern this report keeps looking
for: the automated caller left, and the people underneath
it stayed and asked more different things.
|
|
This week vs last: total searches −58% to 271.4k,
keyless API −64% to 200.3k, unique terms +2.4% to
5,362, MCP +321% to 36.3k. Footnote: MCP now counts
tool listings too, from Oct 20 — not comparable;
2,567 were tool calls
|
People kept naming their tools — and asking for more of
them
Last week the human list turned into a list of named SaaS
tools. This week the same names came back, and most of
them grew:
|
Term
|
Oct 12–18
|
Oct 19–25
|
|
Crisp
|
22
|
27
|
|
HubSpot
|
13
|
25
|
|
Eventbrite
|
18
|
25
|
|
OpenWeatherMap
|
19
|
25
|
|
Airtable
|
19
|
23
|
|
Mailchimp
|
13
|
22
|
|
Reddit
|
15
|
22
|
|
SMSAPI
|
17
|
21
|
|
Typeform
|
18
|
16
|
|
Coda
|
12
|
13
|
New names joined them:
Etsy
(12),
Monday.com
(10),
YouTube
(9).
Two weeks running, the same dozen tools at the top,
rising together.
That looks like a stack being assembled, not idle
browsing.
refunds
came in at 59 —
a fourth straight week in the top hundred
(48, 59, 54, 59). And a health-data cluster showed up
together:
health data
18,
microsoft purview
13,
open data
13,
fhir
10,
healthcare
10,
standards
10.
The top term of the week was
microsoft.com
at 159, someone looking for a company by its domain.
Behind it,
quietforge
at 111.
The gate came back down
Bounces off the paid surface fell
64,012 → 17,408, with last week's
two-endpoint surge gone.
cohorts is back on top at 7,520, just ahead of
security
at 6,881. The one resource that grew was
estates
— the view of a company's whole family of brands and
products — up from 12 to 64.
The authenticated tiers stay off the scoreboard.
pro
reads 20,008, and the tag-quality pass ran on my own
Understanding key on the 24th.
🕳️ The Gaps (demand we couldn't answer)
The pipeline saw 1,565 raw unmet terms,
dropped 929 as noise and 266 the catalog can now answer,
and kept 370 — close to last week's
409.
workwave pestpac
was dropped before the chart was drawn — WorkWave is
indexed, and only the product name missed.
Eight rows, each re-probed against the live search this
morning and still returning nothing:
|
|
The Gaps — top zero-result searches: synchroteam at
5×; kickserv, homebase360, maidily, sendatradie,
hajoca, winsupply and pushpay chms at 3×
|
-
synchroteam (5×) — field service
management: dispatching technicians, scheduling jobs,
invoicing from the van.
-
kickserv (3×) — field service
software for small contractors.
-
homebase360 (3×) — CRM and scheduling
for home-service businesses.
-
maidily (3×) — booking and scheduling
for cleaning businesses.
maidpad
came in at 3× too.
-
sendatradie (3×) — Australian job
management for tradies.
-
hajoca (3×) — a US distributor of
plumbing, heating and HVAC supplies.
-
winsupply (3×) — another US plumbing,
HVAC and industrial supply network.
-
pushpay chms (3×) — Pushpay's
church giving and management platform. Last week the
top gap was church management software too.
Last week it was the compliance layer. This week
it's the trades.
Six of the eight rows are software for businesses that
send someone to your house — plumbers, cleaners,
technicians — or the distributors that supply them.
That's the mirror image of the human list above:
Crisp, HubSpot, Mailchimp and Typeform have well-indexed
APIs, and the software that runs a plumbing business
mostly doesn't.
If you build in one of these lanes, this is your
invitation.
Add your API in about two minutes:
apis.io/add
— or point your agent at the
apis.io MCP server
and let it submit for you.
🆕 New to the Index
The deployed index reads
31,960 providers and 160,947 APIs — up
599 providers and 5,201 APIs. As always, the API line
counts specification files, not products. MCP entries rose
to 7,192, and hosted endpoints read 3,257, close to last
week's 3,319.
Fifty-one posts went up on the blog last week, and ten are
scheduled for the first two days of this one. Among this
week's:
All on the
apis.io blog.
⭐ Rated This Week: HubSpot — the best API in the stack,
and a door that needs a developer
This week's angle: HubSpot nearly doubled in the
human list, the biggest climber among the tools people
named. It's also the highest-scoring of them by a
wide margin. So: what does an agent find when it gets
there?
|
|
HubSpot
|
|
Kin Score
|
90.0 exemplar
|
|
Agent Readiness
|
54.0 agent-native
|
|
Contracts / callable
|
45 / 100%, none derived by us
|
Ninety is one of the highest Kin Scores in the catalog.
Developer ergonomics at 94.6, access clarity at 100,
discoverability at 83.3. If you're a person with a
text editor and a HubSpot account, this is about as good
as an API gets.
HubSpot is agent-native too, with idempotency, error
semantics and reversibility all documented, and its own
hosted MCP server at
mcp.hubspot.com. An anonymous
initialize
gets the right refusal:
HTTP/2 401 www-authenticate: Bearer resource_metadata="https://mcp.hubspot.com/.well-known/oauth-protected-resource"
The RFC 9728 document is there, and a made-up path returns
404. So far, the same as the best doors I've rated.
The difference is the next step.
HubSpot's authorization server publishes RFC 8414
metadata with PKCE
S256
— and no registration endpoint. An agent
that arrives on its own can find the door and learn who
guards it, but it can't register itself as a client.
A developer has to create an app in HubSpot first and hand
the agent its credentials. And neither metadata document
lists any scopes — the protected-resource
document's
scopes_supported
is an empty array — so an agent can't learn what it
could be allowed to do before it asks.
Set that beside last week's pick. Airtable scores 63
and publishes seven scopes and dynamic client registration
at the same door. HubSpot scores 90 and publishes neither.
On every human measure HubSpot is far ahead. On the one
question an unattended agent asks first — can I get in on
my own, and what will I be allowed to do? — Airtable has
the better answer.
The cheapest points left on the table are two lines of
metadata:
a registration endpoint, and the scopes HubSpot already
has. Beyond that, no
/.well-known/api-catalog
on hubspot.com or developers.hubspot.com (both 404), and
contract governance at 31.8 — still the lowest facet on a
scorecard that's otherwise near the top of the
catalog.
Kin Score rubric 0.23.0, scored 2026-10-11. Bands:
exemplar 66.5+ · strong 54.3–66.4 · developing 39.3–54.2
· thin 26.2–39.2 · emerging 11–26.1 · minimal 0–10.9.
Agent Readiness: agent-native 38.7+ (gated on
idempotency AND error semantics) · agent-ready 28.6–38.6
· agent-aware 5.1–28.5 · human-only 0–5.
🤖 Reproduce this yourself
HubSpot and Airtable, side by side, no key required:
find_providers(providers=["hubspot","airtable"], fields=["slug","score","agent_readiness","api_count"])
Then the two doors, the way I checked them:
curl -s https://mcp.hubspot.com/.well-known/oauth-authorization-server \ | jq '{registration_endpoint, scopes_supported}'
curl -s https://mcp.airtable.com/.well-known/oauth-protected-resource | jq .scopes_supported
The first prints
null
for registration; the second prints seven scopes.
Or read the demand data directly:
apis.io/search-terms/, refreshed every Monday.
31,960 providers. 160,947 APIs. 32,558 times an agent
read the menu, 2,567 times it ordered — and the people
kept asking for the tools they already use.
See a gap that's yours? →
apis.io/add
The Demand Report is a weekly read of apis.io's
own search + discovery signal. Forward it to someone who
ships an API.
You are receiving this because you subscribed to this
newsletter.
Unsubscribe
606 W 57th New York, NY 10019
|