---
type: "article"
title: "The Demand Report #15 — agents read the menu thirteen times for every order"
summary: "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…"
newsletter: "APIs.io"
newsletter_handle: "apisio"
newsletter_url: "https://usecommune.com/n/apisio"
author: "Kin Lane (@kinlane)"
published: "2026-10-26T15:12:24.457Z"
canonical_url: "https://usecommune.com/n/apisio/a/2026-10-26-demand-report-issue-15"
markdown_url: "https://usecommune.com/n/apisio/a/2026-10-26-demand-report-issue-15.md"
chat_url: "https://usecommune.com/n/apisio/a/2026-10-26-demand-report-issue-15/chat"
body_source: "native"
likes: 0
replies: 0
body_words: 1852
---

# The Demand Report #15 — agents read the menu thirteen times for every order

# 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](https://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](https://kinlane-images.s3.amazonaws.com/apievangelist/demand-report/issue-15-scoreboard.d4abbfe8.png)

### 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×](https://kinlane-images.s3.amazonaws.com/apievangelist/demand-report/issue-15-gaps.dcc57c2d.png)

- **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**](https://apis.io/add) — or point your agent at the [apis.io MCP server](https://apis.io) 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:

- [**Canonical scores 74.8, exemplar, on 117 contracts and only twelve percent of them are callable**](https://apis.io/blog/)
- [**Ghost scores 77.1, exemplar, on fifty-six operations the catalog lists twice**](https://apis.io/blog/)
- [**The Stannp Letters API has a free test mode the rubric cannot see**](https://apis.io/blog/)
- [**Greylock's portfolio splits in two at the published contract: 47.3 against 24.4**](https://apis.io/blog/)
- [**SIM and eSIM lifecycle has thirteen providers, and the IoT specialists trail the CPaaS platforms**](https://apis.io/blog/)
- [**Video streaming on apis.io is led by the pipes, not the streamers**](https://apis.io/blog/)

All on the [apis.io blog](https://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/**](https://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**](https://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

***

## Discussion

No replies yet.
