Verified

How Many Agent Plugins Exist? 257

257 Agent Plugins existed on 2026-08-07, one day after the 1.0.0 specification was published. We reached that number by finding 1,059 conformant plugin.json manifests across 145 GitHub repositories, fetching and schema-validating every one, then setting aside 802 that pass validation without being packages anyone can install. The arithmetic and its judgement calls are below.

Nobody else has published a count. There is no official registry to ask, and the specification does not define one. So the number depends entirely on the method, which is why the method is the article.

agentpluginsdirectory.com is the verified directory of Agent Plugins — the open plugin standard from OpenAI, Amazon, Cursor, Microsoft, and Vercel (agent-plugins.org) supported by ChatGPT, Codex, Cursor, GitHub Copilot, VS Code, and Kiro. Every listing is verified by fetching its plugin.json manifest and checking it against the official 1.0.0 schema.

Step 1: find the candidates

A single GitHub code search does not work. The API caps results at 1,000 per query, and GitHub's code index lags days behind newly created repositories, which matters when the standard is 24 hours old. Four query families run in parallel:

  1. Exact schema string plus filename. Search for the literal https://agent-plugins.org/schemas/1.0.0/plugin.schema.json with filename:plugin.json, then split the query with -repo: exclusions for the largest repositories to slip under the 1,000-result cap on each pass.
  2. Repository search by name and date. gh search repos 'agent-plugins' --created='>2026-08-01', because the repository index updates faster than the code index. This catches packages the code search cannot see yet.
  3. The retired identifier. A separate query for open-plugins.com/schemas/1.0.0, the name the project used before renaming on 2026-07-17.
  4. Direct organization enumeration. Walk the repositories of the launch-partner organizations rather than waiting for search to surface them.

A fifth approach we tested and dropped: searching for mcp.json with the MCP schema identifier. Every repository it returned was already found by the plugin.json queries, because a package with an mcp.json needs a plugin.json beside it to be a plugin at all.

Step 2: throw away most of what search returns

Code search matches fuzzily. Searching the canonical schema string returns client source code, specification prose, blog drafts and README examples alongside real manifests. Inside the OpenAI organization the string appears in seven files, all of them Rust in openai/codex, and none of them a manifest. Inside microsoft/vscode it appears in agentPluginParser.ts.

Every candidate gets its raw plugin.json fetched and validated against the official schema stored at data/schemas/plugin.schema.json. The schema is strict enough to do the filtering on its own: $schema and name are both required, $schema is pinned by const, and additionalProperties: false rejects any extra top-level field.

A search hit that we never fetched is a rumour. 1,059 files survived the fetch and the schema check.

Step 3: count what survived

Layer Count
Conformant manifests 1,059
Repositories containing at least one 145
Skills declared across all of them 1,892
MCP server entries across all of them 819

Publishing 1,059 as the ecosystem size would be defensible and misleading. Two repositories dominate it.

Step 4: the three exclusions, and why they are set aside

withoneai/one-agent-plugin: 651 manifests. One organization, one repository, created 2026-08-07, describing itself as "One as an Agent Plugin. 500+ apps in your agent, packaged to the Agent Plugins 1.0.0 standard." The 651 manifests are auto-generated integration wrappers, one per third-party app, each declaring a single skill and a single MCP server pointing at the same platform. Every one is valid. Counting them individually would mean 62% of the Agent Plugins ecosystem is one publisher's code generator, and any list sorted by anything would be that publisher 651 times.

github/awesome-copilot: 92 manifests. All 92 validate. All 92 declare zero components at the specification's fixed locations. The skills live in paths declared inside extensions["com.github.awesome-copilot"], a client extension namespace. Section 8 of the specification is explicit that Agent Plugins "assigns no semantics to namespace object contents," so a portable client reading these packages finds a plugin with nothing in it. They are conformant manifests and they are not yet portable packages.

Conformance test fixtures: 59 manifests. This is the exclusion we got wrong first, and it is the most instructive. Validator authors need packages that fail, so they commit them: stbenjam/skillsaw ships a fixture literally named invalid-mcp-json, Toasterson/agent-plugin-rs and its TypeScript twin each ship Has--Double (a name the spec's own regex rejects) and from-the-future (pinned to a schema version 2.0.0 that does not exist). The plugin.json beside a deliberately malformed mcp.json is itself perfectly valid, so all 59 sailed through step 2 and sat in our first count as verified plugins. A directory that tells you invalid-mcp-json is a verified Agent Plugin has verified nothing.

The filter is the manifest path — test/, tests/, fixtures/, examples/, testdata/ and their usual siblings — not the publisher. That distinction matters, because the people writing conformance suites are also shipping real tools: stbenjam/skillsaw loses its 17 fixtures and keeps the linter plugin it built them for. Three repositories supply 47 of the 59; the other 12 are spread across eight more.

All three decisions are judgement calls, and all three are reversible. We publish the excluded counts alongside the headline so anyone who disagrees can add 802 back.

1,059 conformant manifests
  - 651  withoneai/one-agent-plugin (auto-generated wrappers)
  -  92  github/awesome-copilot (extension-namespace stubs)
  -  59  conformance test fixtures (11 repositories)
  = 257  distinct verified Agent Plugins, across 133 repositories

Those 257 plugins declare 1,209 skills and 83 MCP servers. 239 ship at least one skill (93%). 64 ship at least one MCP server (25%). 13 ship neither.

The fixture cut is not cosmetic. It moved the headline by 59, took the second-largest publisher off the leaderboard — Toasterson's 30 manifests were conformance cases to the last one — and it changed the shape of the ecosystem the numbers describe: the share of plugins shipping a skill goes from 83% to 93%, and the metadata-only group collapses from 44 to 13, because negative fixtures were most of what filled it.

Step 5: publish what is still wrong with the number

A count nobody can poke holes in is a count nobody checked. Three caveats travel with the 257.

The fixture rule is blunt in both directions. It matches on path, so a genuine plugin published under a folder named examples/ would be excluded, and a fixture parked at a repository root would be counted. We took the rule that is reproducible from the dataset over the one that needs a human to adjudicate 1,059 manifests, and the 59 excluded paths ship with the data so the calls can be checked individually.

One name appears twice. Among the 257 manifests, one (repository, name) pair is duplicated, so they resolve to 256 distinct (repository, name) entries and 253 names that are unique across publishers.

257 is a floor. GitHub's code search index lags days behind new repository creation, and this ecosystem is two days old. Plugins published in the last 48 hours are systematically undercounted. The number will rise partly because publishers ship, and partly because the index catches up.

Why publish the caveats

The alternative was a rounder number and a quieter method. Every count you will read about this ecosystem over the next month will be a search-result total that nobody fetched, and those totals will disagree with each other by a factor of three depending on which query ran and which day it ran.

Our crawler runs daily and commits the refreshed dataset, so the git history of all.json is a time series of the ecosystem starting from day two. When a number on this site changes, the diff that changed it is public.

Full breakdowns by license, publisher, component type and schema version sit on the Agent Plugins statistics page. The ranked list is on best Agent Plugins. To check whether your own package would be counted, run it through the validator.

Verified on 2026-08-07 by agentpluginsdirectory.com. Every manifest was fetched from GitHub and validated against the official Agent Plugins 1.0.0 schema on that date. Cite as: agentpluginsdirectory.com verified index, 2026-08-07.