Skip to content

For AI agents

Which cloud, data, AI and developer-tool vendors support which open standards, from the specification projects' own lists, the official MCP Registry and vendor documentation, each with its evidence link and the date it was first seen, plus a dated history of support added and dropped. Grows every week: new companies from the fru.dev registry, new lists found by probing, new standards added as rows.

Grows and re-checks every Thursday at 11:30 UTC

Point your agent here

Call the API

  • GET /api/supportinghas, limit?, offset?vendors with their supported count and, for each listed standard, the state, role, sources and whether it is unverified
  • GET /api/vendorscategory?, limit?, offset?vendors with slug, name, domain, category, supported count and companies.fru.dev registry link
  • GET /api/vendors/{slug}slugthe vendor and its standards with state, role, sources, unverified and the date first seen
  • GET /api/standardslimit?, offset?standards with id, name, family, meaning, role ids, vendor count, specification and adopter list
  • GET /api/standards/{id}idthe standard and vendors with state, role, sources and unverified
  • GET /api/evidencevendor, standardclaims with source link, scope, the sentence or listing note, capture date and reviewed flag
  • GET /api/changessince?, vendor?, standard?, limit?, offset?changes with date, vendor, standard, kind, role, how it was dated and the source (a commit or page)
  • GET /api/companiessince?, limit?, offset?without since: vendors with slug, name, domain, supported count and page; with since: slug (the companies.fru.dev slug), name, domain, url (the page here), changes, updated_at and items (date, standard, kind, role, source)

GET/api/supporting

Vendors that support every listed standard, optionally at a minimum role

  • hasOne to five standard ids, comma separated; add :role for a minimum role (ids and roles at /api/standards)
  • limitItems per page, 1 to 200
  • offsetItems to skip, for the next page
Shell
curl -s "https://standards.fru.dev/api/supporting?has=mcp:server&limit=3"
Sample response
JSON
{
  "has": [
    {
      "standard": "mcp",
      "name": "Model Context Protocol",
      "min_role": "Server"
    }
  ],
  "items": [
    {
      "slug": "aws",
      "name": "AWS",
      "domain": "aws.amazon.com",
      "category": "Cloud",
      "supported": 6,
      "url": "https://standards.fru.dev/vendors/aws",
      "registry": "https://companies.fru.dev/companies/aws",
      "evidence": [
        {
          "standard": "mcp",
          "name": "Model Context Protocol",
          "state": "active",
          "level": "Server",
          "sources": [
            "Vendor documentation"
          ],
          "adopter_list": false,
          "unverified": false,
          "since": "2026-09-24"
        }
      ]
    },
    {
      "slug": "google-cloud",
      "name": "Google Cloud",
      "domain": "cloud.google.com",
      "category": "Cloud",
      "supported": 6,
      "url": "https://standards.fru.dev/vendors/google-cloud",
      "registry": "https://companies.fru.dev/companies/google-cloud",
      "evidence": [
        {
          "standard": "mcp",
          "name": "Model Context Protocol",
          "state": "active",
          "level": "Server",
          "sources": [
            "Vendor documentation"
          ],
          "adopter_list": false,
          "unverified": false,
          "since": "2026-09-24"
        }
      ]
    }
  ],
  "total": 17,
  "limit": 3,
  "offset": 0,
  "next": "/api/supporting?has=mcp%3Aserver&limit=3&offset=3",
  "updated": "2026-09-24 23:01:01"
}

GET/api/vendors

Every tracked vendor, most standards first

  • categoryOnly one category
  • limitItems per page, 1 to 200
  • offsetItems to skip, for the next page
Shell
curl -s "https://standards.fru.dev/api/vendors?category=data&limit=3"
Sample response
JSON
{
  "items": [
    {
      "slug": "clickhouse",
      "name": "ClickHouse",
      "domain": "clickhouse.com",
      "category": "Data platforms",
      "supported": 4,
      "url": "https://standards.fru.dev/vendors/clickhouse",
      "registry": "https://companies.fru.dev/companies/clickhouse"
    },
    {
      "slug": "databricks",
      "name": "Databricks",
      "domain": "databricks.com",
      "category": "Data platforms",
      "supported": 4,
      "url": "https://standards.fru.dev/vendors/databricks",
      "registry": "https://companies.fru.dev/companies/databricks"
    }
  ],
  "total": 21,
  "limit": 3,
  "offset": 0,
  "next": "/api/vendors?category=data&limit=3&offset=3",
  "updated": "2026-09-24 23:01:01"
}

GET/api/vendors/{slug}

One vendor and every standard it shows evidence for

  • slugVendor slug from /api/vendors
Shell
curl -s "https://standards.fru.dev/api/vendors/snowflake"
Sample response
JSON
{
  "slug": "snowflake",
  "name": "Snowflake",
  "domain": "snowflake.com",
  "category": "Data platforms",
  "supported": 2,
  "url": "https://standards.fru.dev/vendors/snowflake",
  "registry": "https://companies.fru.dev/companies/snowflake",
  "standards": [
    {
      "standard": "mcp",
      "name": "Model Context Protocol",
      "state": "active",
      "level": "Server",
      "sources": [
        "Vendor documentation"
      ],
      "adopter_list": false,
      "unverified": false,
      "since": "2026-09-24"
    },
    {
      "standard": "iceberg",
      "name": "Apache Iceberg",
      "state": "active",
      "level": "REST catalog",
      "sources": [
        "Apache Iceberg vendors page",
        "Vendor documentation"
      ],
      "adopter_list": true,
      "unverified": false,
      "since": "2026-09-24"
    }
  ],
  "updated": "2026-09-24 23:01:01"
}

GET/api/standards

Every tracked standard with what it means and how many vendors support it

  • limitItems per page, 1 to 200
  • offsetItems to skip, for the next page
Shell
curl -s "https://standards.fru.dev/api/standards?limit=3"
Sample response
JSON
{
  "items": [
    {
      "id": "mcp",
      "name": "Model Context Protocol",
      "family": "AI agents",
      "what": "Connects AI assistants to tools and data: a server exposes tools, a client (an assistant or agent) calls them.",
      "roles": [
        "client",
        "server"
      ],
      "vendors_supporting": 19,
      "adopter_list": "https://registry.modelcontextprotocol.io",
      "spec": "https://modelcontextprotocol.io/specification",
      "url": "https://standards.fru.dev/standards/mcp"
    },
    {
      "id": "a2a",
      "name": "Agent2Agent",
      "family": "AI agents",
      "what": "Lets agents from different vendors discover each other and hand work back and forth.",
      "roles": [
        "partner",
        "supported"
      ],
      "vendors_supporting": 25,
      "adopter_list": "https://a2a-protocol.org/latest/partners/",
      "spec": "https://a2a-protocol.org/latest/specification/",
      "url": "https://standards.fru.dev/standards/a2a"
    }
  ],
  "total": 9,
  "limit": 3,
  "offset": 0,
  "next": "/api/standards?limit=3&offset=3",
  "updated": "2026-09-24 23:01:01"
}

GET/api/standards/{id}

One standard and every vendor with evidence for it (who serves MCP, who speaks Iceberg)

  • idStandard id from /api/standards
Shell
curl -s "https://standards.fru.dev/api/standards/iceberg"
Sample response
JSON
{
  "id": "iceberg",
  "name": "Apache Iceberg",
  "what": "The open table format for large analytic tables on object storage, with a REST catalog protocol.",
  "detail": "Read, Read and write: the vendor's listing says it reads, or also writes, Iceberg tables. REST catalog: it serves the Iceberg REST catalo...",
  "maintainer": "Apache Software Foundation",
  "spec": "https://iceberg.apache.org/spec/",
  "adopter_list": "https://iceberg.apache.org/vendors/",
  "vendors_supporting": 21,
  "vendors": [
    {
      "vendor": "google-cloud",
      "vendor_name": "Google Cloud",
      "state": "active",
      "level": "REST catalog",
      "sources": [
        "Apache Iceberg vendors page"
      ],
      "adopter_list": true,
      "unverified": false,
      "since": "2026-09-24"
    },
    {
      "vendor": "microsoft",
      "vendor_name": "Microsoft",
      "state": "active",
      "level": "REST catalog",
      "sources": [
        "Apache Iceberg vendors page"
      ],
      "adopter_list": true,
      "unverified": false,
      "since": "2026-09-24"
    }
  ],
  "updated": "2026-09-24 23:01:01"
}

GET/api/evidence

The evidence for one vendor and standard: each source, what it says, when it was read

  • vendorVendor slug
  • standardStandard id
Shell
curl -s "https://standards.fru.dev/api/evidence?vendor=snowflake&standard=iceberg"
Sample response
JSON
{
  "claims": [
    {
      "id": 109,
      "vendor": "snowflake",
      "cert": "iceberg",
      "level": "rest-catalog",
      "state": "active",
      "scope": "Snowflake Open Catalog (Apache Polaris), Iceberg REST",
      "sourceKind": "docs",
      "sourceUrl": "https://docs.snowflake.com/en/user-guide/tables-iceberg-open-catalog",
      "note": "Use Apache Iceberg™ tables with Snowflake Open Catalog in Snowflake | Snowflake Documentation DOCUMENTATION / EN Language English Françai...",
      "validFrom": "",
      "validUntil": "",
      "firstSeen": "2026-09-24",
      "capturedAt": "2026-09-24",
      "reviewed": true
    },
    {
      "id": 18,
      "vendor": "snowflake",
      "cert": "iceberg",
      "level": "write",
      "state": "active",
      "scope": "",
      "sourceKind": "iceberg",
      "sourceUrl": "https://iceberg.apache.org/vendors/#snowflake",
      "note": "Snowflake Horizon Catalog is the universal catalog built into every Snowflake account, providing governance, metadata, and interoperabili...",
      "validFrom": "",
      "validUntil": "",
      "firstSeen": "2026-09-24",
      "capturedAt": "2026-09-24",
      "reviewed": true
    }
  ]
}

GET/api/changes

Dated changes, newest first: support added, roles added, support dropped

  • sinceISO date (YYYY-MM-DD) or datetime: only changes dated or recorded since then
  • vendorOnly one vendor (slug)
  • standardOnly one standard (id)
  • limitChanges per page, 1 to 200
  • offsetChanges to skip, for the next page
Shell
curl -s "https://standards.fru.dev/api/changes?since=2026-01-01&limit=3"
Sample response
JSON
{
  "items": [
    {
      "date": "2026-08-24",
      "vendor": "minio",
      "standard": "iceberg",
      "standard_name": "Apache Iceberg",
      "kind": "added",
      "role": "",
      "from_role": "",
      "dated_by": "source",
      "source": "https://github.com/apache/iceberg/commit/0650d9c9cbd7283d4b993c9b357a72c12ea05d72",
      "url": "https://standards.fru.dev/vendors/minio"
    },
    {
      "date": "2026-07-27",
      "vendor": "teradata",
      "standard": "iceberg",
      "standard_name": "Apache Iceberg",
      "kind": "added",
      "role": "",
      "from_role": "",
      "dated_by": "source",
      "source": "https://github.com/apache/iceberg/commit/bb27abf2b0ec38f40f42453d49cdf9a29edfc207",
      "url": "https://standards.fru.dev/vendors/teradata"
    }
  ],
  "limit": 3,
  "offset": 0,
  "next": "/api/changes?since=2026-01-01&limit=3&offset=3"
}

GET/api/companies

The companies.fru.dev registry feed: with since, the vendors with support changes since then, each with its dated changes

  • sinceISO date (YYYY-MM-DD) or datetime: only vendors with changes dated or recorded since then
  • limitItems per page, 1 to 200
  • offsetItems to skip, for the next page
Shell
curl -s "https://standards.fru.dev/api/companies?since=2026-01-01"
Sample response
JSON
{
  "since": "2026-01-01",
  "count": 24,
  "companies": [
    {
      "slug": "minio",
      "name": "MinIO",
      "domain": "min.io",
      "url": "https://standards.fru.dev/vendors/minio",
      "changes": 1,
      "updated_at": "2026-09-24T22:50:04Z",
      "items": [
        {
          "date": "2026-08-24",
          "vendor": "minio",
          "standard": "iceberg",
          "standard_name": "Apache Iceberg",
          "kind": "added",
          "role": "",
          "from_role": "",
          "dated_by": "source",
          "source": "https://github.com/apache/iceberg/commit/0650d9c9cbd7283d4b993c9b357a72c12ea05d72",
          "url": "https://standards.fru.dev/vendors/minio"
        }
      ]
    },
    {
      "slug": "teradata",
      "name": "Teradata",
      "domain": "teradata.com",
      "url": "https://standards.fru.dev/vendors/teradata",
      "changes": 1,
      "updated_at": "2026-09-24T22:50:04Z",
      "items": [
        {
          "date": "2026-07-27",
          "vendor": "teradata",
          "standard": "iceberg",
          "standard_name": "Apache Iceberg",
          "kind": "added",
          "role": "",
          "from_role": "",
          "dated_by": "source",
          "source": "https://github.com/apache/iceberg/commit/bb27abf2b0ec38f40f42453d49cdf9a29edfc207",
          "url": "https://standards.fru.dev/vendors/teradata"
        }
      ]
    }
  ],
  "generated_at": "2026-09-24T23:04:11.805Z"
}

Add to your agent

System prompt
For which open protocols and formats a cloud, data or AI vendor supports (MCP server or client, A2A, the OpenAI-compatible API, OpenTelemetry and native OTLP, OpenLineage, Apache Iceberg, Delta Lake and Hudi, Parquet, Arrow ADBC and Flight SQL, ONNX, SQL:2023, SPIFFE, OpenID Connect, FIDO2 passkeys, C2PA, SPDX and CycloneDX), fetch https://standards.fru.dev/llms.txt and use https://standards.fru.dev/api/supporting (spec: https://standards.fru.dev/openapi.json). Cite "Standards (standards.fru.dev)" with a link.

Usage terms

  • Free to read, no key needed
  • Cite "Standards (standards.fru.dev)" with a link
  • Responses are cached; grows and re-checks every Thursday at 11:30 UTC
  • Keep to 60 requests a minute or fewer
  • Entries marked unverified name the standard on a vendor page but nobody has confirmed it by hand. A listing says the vendor works with the standard; confirm the version and the products covered with the vendor.

Standards changes by email

Thursdays: vendors that added or dropped support for a standard, only in weeks with a change.

Double opt-in. Unsubscribe any time.