{
  "company": "Stainless",
  "slug": "stainless",
  "website": "https://stainless.com",
  "audit_date": "2026-04-13",
  "overall_score": 54,
  "tier": "Human-Dependent",
  "tier_as_published": "Human-Dependent",
  "pillars": {
    "P1": {
      "name": "Signal Architecture",
      "score": 12,
      "max": 25
    },
    "P2": {
      "name": "Clarity Stack",
      "score": 15,
      "max": 25
    },
    "P3": {
      "name": "Trust Envelope",
      "score": 9,
      "max": 20
    },
    "P4": {
      "name": "Velocity Triggers",
      "score": 8,
      "max": 10
    },
    "P5": {
      "name": "Gravity Design",
      "score": 10,
      "max": 20
    }
  },
  "criteria": [
    {
      "id": "P1-A",
      "pillar": "P1",
      "name": "Structured Data",
      "score": 2,
      "max": 5,
      "evidence": "robots.txt allows all crawlers and two sitemaps are present (sitemap.xml + docs/sitemap-index.xml), signaling crawlability. However, direct search for schema.org/JSON-LD on stainless.com returned no results. Homepage is React-rendered marketing with no detectable rich structured data markup."
    },
    {
      "id": "P1-B",
      "pillar": "P1",
      "name": "Machine-Readable Pricing",
      "score": 3,
      "max": 5,
      "evidence": "Pricing page at stainless.com/pricing has highly granular HTML-structured pricing: $79/$499/Enterprise per generator per month, with endpoint count limits (50/100/100+), preview build limits (300/1000/custom), and explicit overage rates ($1/1000 builds; $5/mo per endpoint per SDK). Not encoded in schema.org/Offer format."
    },
    {
      "id": "P1-C",
      "pillar": "P1",
      "name": "llms.txt / Agent Layer",
      "score": 0,
      "max": 5,
      "evidence": "No /llms.txt file found at stainless.com/llms.txt. The URL returned information about the company but no structured agent-facing content file. No evidence of any equivalent agent identity layer."
    },
    {
      "id": "P1-D",
      "pillar": "P1",
      "name": "API / MCP Availability",
      "score": 4,
      "max": 5,
      "evidence": "The product IS an MCP server generator. Outputs: NPM packages, Cloudflare Workers deployments, Docker containers, self-hosted options. Two-tool architecture (search_docs + execute) confirmed. Multiple deployment paths. Score capped at 4 because Stainless's own management API (for project creation, spec updates) is not publicly documented."
    },
    {
      "id": "P1-E",
      "pillar": "P1",
      "name": "Discoverability (GEO)",
      "score": 3,
      "max": 5,
      "evidence": "Two sitemaps, open crawling, well-structured docs at app.stainless.com. Named as infrastructure for Anthropic, OpenAI, Google, and Cloudflare \u2014 strong LLM ecosystem presence. Blog posts explicitly addressing agent experience. No llms.txt and no explicit AI retrieval optimization."
    },
    {
      "id": "P2-A",
      "pillar": "P2",
      "name": "Offer Completeness",
      "score": 4,
      "max": 5,
      "evidence": "What (SDK + docs + MCP server generation from OpenAPI specs), who (API companies, developer teams), how much (clear tier pricing with per-generator monthly cost). All findable on a single /pricing page with feature breakdowns by tier."
    },
    {
      "id": "P2-B",
      "pillar": "P2",
      "name": "Scope & Limits",
      "score": 4,
      "max": 5,
      "evidence": "Explicit, specific limits documented: 5 generators (Free), 25\u201350 endpoints per generator, 100/300/1,000 preview builds/month per tier, $1 per 1,000 overage builds, $5/mo per additional endpoint per SDK at Enterprise. All quantified and published."
    },
    {
      "id": "P2-C",
      "pillar": "P2",
      "name": "Substitution Rules",
      "score": 0,
      "max": 5,
      "evidence": "No documentation on what happens when the service is unavailable, when code execution sandbox fails, or when generated MCP servers degrade. No fallback routing, graceful degradation policy, or alternative guidance found anywhere."
    },
    {
      "id": "P2-D",
      "pillar": "P2",
      "name": "Conditional Logic",
      "score": 3,
      "max": 5,
      "evidence": "Most conditions are disclosed on the pricing page: tier gates for webhooks, OAuth 2.0, dedicated support, and AI chat clearly tied to plan level. Enterprise requires custom pricing (disclosed). No opaque \"contact sales\" wall on standard tiers."
    },
    {
      "id": "P2-E",
      "pillar": "P2",
      "name": "Semantic Precision",
      "score": 4,
      "max": 5,
      "evidence": "Strong use of specific metrics: \"94\u201397% task accuracy,\" \"3x fewer tool calls,\" \"100k+ tokens saved on complex tasks.\" Named enterprise customers (Anthropic, OpenAI, Google, Cloudflare, Modern Treasury). Exact pricing numbers throughout. Minimal vague superlatives."
    },
    {
      "id": "P3-A",
      "pillar": "P3",
      "name": "Verifiable Performance",
      "score": 2,
      "max": 5,
      "evidence": "Self-reported performance benchmarks (94\u201397% accuracy, 3x tool call reduction) on the MCP product page. Notable customer logos (Anthropic, OpenAI) serve as implicit verification. No public status page found, no third-party G2/Trustpilot reviews indexed, no SLA document located. $25M Series A (Dec 2024) signals institutional credibility but not operational reliability."
    },
    {
      "id": "P3-B",
      "pillar": "P3",
      "name": "Scoped Permissions",
      "score": 2,
      "max": 5,
      "evidence": "Authentication via environment variable API keys \u2014 effectively all-or-nothing access per key. Code execution runs in Cloudflare Workers sandbox (security benefit), but no granular agent-specific permission model. No time-bounded, amount-bounded, or action-bounded scoping documented for agent operations."
    },
    {
      "id": "P3-C",
      "pillar": "P3",
      "name": "Audit Trail",
      "score": 3,
      "max": 5,
      "evidence": "\"Real-Time MCP Monitoring and Logging\" product confirmed (dedicated page on stainless.com/mcp/). Structured telemetry per tool call: timestamps, tool names, parameters, response times, success/error, request IDs. Logs forward to external observability platforms (Splunk, Azure Monitor, Tinybird). Not natively accessible through a Stainless API \u2014 agents must query through external platforms."
    },
    {
      "id": "P3-D",
      "pillar": "P3",
      "name": "Behavioral Consistency",
      "score": 2,
      "max": 5,
      "evidence": "Company founded by Stripe's SDK infrastructure team; pedigree suggests stability. Auto-regeneration on OpenAPI spec changes implies disciplined versioning of output artifacts. But no formal API versioning contract, no documented change notice period, no SLA, no version-controlled terms found."
    },
    {
      "id": "P4-A",
      "pillar": "P4",
      "name": "Friction-Free Activation",
      "score": 4,
      "max": 5,
      "evidence": "Free tier with no credit card required. Self-serve signup. MCP server generation begins immediately from the Free tier. No approval workflow or human gate in the documented flow. Some multi-step configuration (create project, add SDKs, configure MCP, set environment variables) prevents a 5/5."
    },
    {
      "id": "P4-B",
      "pillar": "P4",
      "name": "Agent Decision Signals",
      "score": 4,
      "max": 5,
      "evidence": "Free tier provides zero-commitment entry. Quantified performance metrics (94\u201397% accuracy, 3x fewer tool calls, 100k+ token savings) are explicit, agent-legible signals for whether to integrate. Clear pricing ladder enables upgrade decision without human involvement."
    },
    {
      "id": "P5-A",
      "pillar": "P5",
      "name": "Integration Depth",
      "score": 4,
      "max": 5,
      "evidence": "SDKs embed in customer codebases. MCP server integrates into agent workflows and IDE configurations. Documentation deploys to customer-owned domains. Auto-regeneration ties Stainless deeply into the API development lifecycle \u2014 every spec update flows through Stainless. High switching cost: migrating away means rebuilding SDKs, docs, and MCP servers from scratch."
    },
    {
      "id": "P5-B",
      "pillar": "P5",
      "name": "Agent Memory Layer",
      "score": 2,
      "max": 5,
      "evidence": "MCP server is customized per-project via OpenAPI spec, creating implicit personalization. The docs search tool queries project-specific documentation. But no persistent agent memory layer \u2014 no API for agents to read/write contextual state between sessions. Every interaction queries static docs fresh."
    },
    {
      "id": "P5-C",
      "pillar": "P5",
      "name": "Programmatic Renewal",
      "score": 1,
      "max": 5,
      "evidence": "Standard subscription billing only. No agent-accessible endpoint to check subscription status, remaining credits, or trigger renewal. No evidence of any programmatic subscription management API."
    },
    {
      "id": "P5-D",
      "pillar": "P5",
      "name": "Compounding Value",
      "score": 3,
      "max": 5,
      "evidence": "Auto-regeneration on spec changes is a genuine compounding value signal visible to agents: as the API grows, the MCP server gains new tools, the docs expand, and the execute tool covers more capabilities. Agents using the generated MCP server observe increasing capability over time. The value compounds with every API update \u2014 a clear differentiator."
    }
  ],
  "strongest_signals": [
    {
      "title": "Best-in-class Integration Gravity (P5-A: 4/5)",
      "detail": "Stainless is deeply embedded in the API development lifecycle. Auto-regeneration on every OpenAPI spec change means the MCP server, SDKs, and docs all update in lockstep. Switching away requires rebuilding the entire developer interface stack \u2014 one of the highest switching costs of any platform audited."
    },
    {
      "title": "Exceptional Velocity Triggers (P4: 8/10)",
      "detail": "Free tier, no credit card, self-serve, and quantified decision metrics (94\u201397% accuracy, 3x fewer tool calls, 100k+ tokens saved) give agents everything needed to independently evaluate and activate. This is the highest P4 score in the audit portfolio."
    },
    {
      "title": "Compounding Value Through Auto-Regeneration (P5-D: 3/5)",
      "detail": "As the underlying API evolves, so does the generated MCP server \u2014 automatically. This creates an agent-visible compounding value loop that most platforms lack entirely."
    }
  ],
  "critical_gaps": [
    {
      "title": "No llms.txt (P1-C: 0/5)",
      "detail": "A platform whose entire value proposition is enabling agents to use APIs has no /llms.txt. This is the single most ironic gap in the audit \u2014 a company building AI agent infrastructure that hasn't told AI agents how to find or understand it."
    },
    {
      "title": "No Structured Data (P1-A: 2/5)",
      "detail": "No schema.org markup found on any page. For a company whose homepage is the front door for agent discovery, the absence of Organization, Product, and Offer schema is a first-impression failure."
    },
    {
      "title": "No Substitution or Fallback Policy (P2-C: 0/5)",
      "detail": "Zero documentation on what happens when the code execution sandbox fails, when the MCP server generator is unavailable, or when generated servers degrade. Production agents have no guidance for degraded states."
    },
    {
      "title": "Audit Logs Not Natively Accessible (P3-C: 3/5)",
      "detail": "Stainless's monitoring product forwards to external platforms rather than exposing a first-party log API. Agents can't query Stainless directly for execution history \u2014 they need access to Splunk, Azure Monitor, or similar."
    }
  ],
  "priority_actions": [],
  "executive_summary": "Stainless scores 54/100 (Human-Dependent) \u2014 a score that understates its actual strategic position in the agent ecosystem. The company builds the infrastructure that makes APIs agent-accessible for OpenAI, Anthropic, Google, and Cloudflare, yet its own offer infrastructure is entirely human-configured: no llms.txt, no structured data, no native log API. The platform's gravity is exceptional (auto-regenerating SDKs and MCP servers create some of the highest switching costs audited to date), and velocity is strong (free tier, no friction, quantified performance signals). The gap is entirely in Signal Architecture and Trust infrastructure \u2014 the tools an agent needs to independently discover, evaluate, and manage Stainless. The top recommendation is publishing llms.txt immediately: a one-hour fix that would raise the score by 5 points and correct the most ironic gap in the dataset \u2014 an AI infrastructure company that hasn't told AI where to find it.",
  "rubric_version": "v1-2026-04 (20 criteria, 100 raw points; P3-E Agent Registration added to rubric v2 in 2026-06, not scored in this audit)",
  "framework": "Agent Native Offers \u2014 The Agent Sale framework",
  "source_file": "2026-04-13 \u2014 Stainless \u2014 Agent Native Offer Audit.md",
  "rank": 19
}