{
  "specVersion": "1.0",
  "host": {
    "displayName": "9apes",
    "identifier": "9apes.com"
  },
  "entries": [
    {
      "identifier": "urn:air:9apes.com:agent:ask",
      "displayName": "9apes Ask (NLWeb)",
      "type": "application/json",
      "url": "https://9apes.com/ask",
      "description": "NLWeb 0.55 endpoint. POST {\"query\": {\"text\": \"...\"}} and receive a _meta block plus schema.org results — runner Products with per-minute Offers, MonetaryAmount cost estimates, a migration HowTo, and TechArticle links. Set prefer.streaming to true, or send Accept: text/event-stream, for start/result/complete server-sent events. Read-only and public.",
      "capabilities": [
        "list-runner-labels",
        "estimate-job-cost",
        "explain-migration",
        "answer-integration-question",
        "find-docs"
      ],
      "tags": [
        "nlweb",
        "ask",
        "agent",
        "github-actions",
        "streaming"
      ],
      "representativeQueries": [
        "which 9apes runner should I use for a large Docker build",
        "how much would 5000 CI minutes cost on 9apes",
        "how do I move a GitHub Actions job to 9apes"
      ],
      "trustManifest": {
        "identity": "https://9apes.com",
        "identityType": "https"
      }
    },
    {
      "identifier": "urn:air:9apes.com:agent:webmcp-tools",
      "displayName": "9apes WebMCP Tools",
      "type": "text/html",
      "url": "https://9apes.com/",
      "description": "Every page on 9apes.com registers read-only WebMCP tools with document.modelContext, so a browser-resident agent calls the site instead of scraping it. The footer ask box is additionally a declarative WebMCP tool, carrying toolname and tooldescription in the server-rendered HTML.",
      "capabilities": [
        "list-runner-labels",
        "estimate-job-cost",
        "ask-9apes",
        "get-page-markdown"
      ],
      "tags": [
        "webmcp",
        "browser-agent",
        "tools",
        "github-actions"
      ],
      "representativeQueries": [
        "what runner sizes does this page offer",
        "estimate my CI cost from this page"
      ],
      "trustManifest": {
        "identity": "https://9apes.com",
        "identityType": "https"
      }
    },
    {
      "identifier": "urn:air:9apes.com:mcp:ci-analytics",
      "displayName": "9apes MCP Server",
      "type": "application/mcp-server-card+json",
      "url": "https://9apes.com/docs/mcp-server/server-card.json",
      "description": "Server Card for the read-only 9apes MCP server at https://api.9apes.com/mcp: Streamable HTTP, OAuth sign-in in the browser, GitHub Actions run, job, and step analytics for one organization.",
      "tags": [
        "mcp",
        "server-card",
        "ci-analytics",
        "github-actions"
      ],
      "representativeQueries": [
        "MCP server for GitHub Actions CI analytics",
        "connect an AI assistant to 9apes"
      ],
      "trustManifest": {
        "identity": "https://9apes.com",
        "identityType": "https"
      }
    },
    {
      "identifier": "urn:air:9apes.com:docs:mcp-server",
      "displayName": "9apes MCP Server",
      "type": "text/markdown",
      "url": "https://9apes.com/docs/mcp-server.md",
      "description": "Setup for the read-only 9apes MCP server at https://api.9apes.com/mcp: Streamable HTTP with browser OAuth sign-in, scoped to one organization, exposing 9apes_* tools for GitHub Actions run, job, and step duration analytics. A person connects it from their MCP client; it cannot start jobs or change anything.",
      "tags": [
        "mcp",
        "ci-analytics",
        "github-actions",
        "oauth"
      ],
      "representativeQueries": [
        "connect Claude to my 9apes CI data",
        "which of my GitHub Actions jobs got slower this week"
      ],
      "trustManifest": {
        "identity": "https://9apes.com",
        "identityType": "https"
      }
    },
    {
      "identifier": "urn:air:9apes.com:skill:9apes-ci",
      "displayName": "9apes CI Agent Skill",
      "type": "application/agent-skills+zip",
      "url": "https://9apes.com/downloads/9apes-ci-skill.zip",
      "description": "Installable agent skill that teaches an assistant to use the 9apes MCP server: exact UTC windows, aggregate-first investigations, visible sample limits, and grounded CI performance reports. Requires the MCP server to be connected.",
      "tags": [
        "agent-skill",
        "mcp",
        "ci-analytics",
        "github-actions"
      ],
      "representativeQueries": [
        "install a skill for analyzing 9apes CI performance",
        "write a CI performance report from 9apes data"
      ],
      "trustManifest": {
        "identity": "https://9apes.com",
        "identityType": "https"
      }
    },
    {
      "identifier": "urn:air:9apes.com:skill:9apes-ci-md",
      "displayName": "9apes CI Agent Skill (SKILL.md)",
      "type": "application/agent-skills+md",
      "url": "https://9apes.com/skills/9apes-ci/SKILL.md",
      "description": "The entry file of the 9apes-ci agent skill, with links to its reference files under the same path.",
      "tags": [
        "agent-skill",
        "mcp"
      ],
      "representativeQueries": [
        "read the 9apes-ci skill instructions",
        "how should an agent use the 9apes MCP tools"
      ],
      "trustManifest": {
        "identity": "https://9apes.com",
        "identityType": "https"
      }
    },
    {
      "identifier": "urn:air:9apes.com:agent:runner-advisor",
      "displayName": "9apes Runner Advisor",
      "type": "application/a2a-agent-card+json",
      "url": "https://9apes.com/.well-known/agent-card.json",
      "description": "A2A agent answering questions about 9apes runner labels, job cost against GitHub-hosted rates, workflow migration, and integration. Read-only, derived from the public documentation.",
      "capabilities": [
        "list-runner-labels",
        "estimate-job-cost",
        "explain-migration",
        "answer-integration-question",
        "report-benchmarks",
        "find-docs"
      ],
      "tags": [
        "a2a",
        "agent",
        "github-actions",
        "runners"
      ],
      "representativeQueries": [
        "which 9apes runner should I use for a large build",
        "how much would 5000 CI minutes cost on 9apes",
        "how do I move a GitHub Actions job to 9apes"
      ],
      "trustManifest": {
        "identity": "https://9apes.com",
        "identityType": "https"
      }
    },
    {
      "identifier": "urn:air:9apes.com:docs:agent-instructions",
      "displayName": "9apes Agent Instructions",
      "type": "text/markdown",
      "url": "https://9apes.com/agents.md",
      "description": "When an agent should reach for 9apes, when it should not, and how to walk a user through moving a GitHub Actions job onto a 9apes runner.",
      "tags": [
        "github-actions",
        "ci",
        "runners",
        "agent-instructions"
      ],
      "representativeQueries": [
        "how do I make my GitHub Actions builds faster",
        "my CI bill is too high, what are the alternatives to GitHub-hosted runners",
        "should I use 9apes for this workflow"
      ],
      "trustManifest": {
        "identity": "https://9apes.com",
        "identityType": "https"
      }
    },
    {
      "identifier": "urn:air:9apes.com:docs:auth",
      "displayName": "9apes Authentication Notes",
      "type": "text/markdown",
      "url": "https://9apes.com/auth.md",
      "description": "What an agent can call at 9apes without credentials, what authentication machinery deliberately does not exist, and which steps require a human in GitHub.",
      "tags": [
        "auth",
        "authentication",
        "github-sso",
        "agent-access"
      ],
      "representativeQueries": [
        "how do I authenticate with 9apes",
        "does 9apes issue API keys"
      ]
    },
    {
      "identifier": "urn:air:9apes.com:docs:llms-index",
      "displayName": "9apes llms.txt",
      "type": "text/plain",
      "url": "https://9apes.com/llms.txt",
      "description": "Structured index of every 9apes developer resource, including when-to-use and when-not-to-use guidance.",
      "tags": [
        "llms-txt",
        "index"
      ],
      "representativeQueries": [
        "what does 9apes offer",
        "list the 9apes documentation"
      ]
    },
    {
      "identifier": "urn:air:9apes.com:docs:llms-full",
      "displayName": "9apes Full Documentation Text",
      "type": "text/plain",
      "url": "https://9apes.com/llms-full.txt",
      "description": "The complete 9apes documentation as a single plain-text file, including the runner label and pricing table.",
      "tags": [
        "llms-txt",
        "documentation"
      ],
      "representativeQueries": [
        "read the full 9apes documentation",
        "what are all the 9apes runner options and prices"
      ]
    },
    {
      "identifier": "urn:air:9apes.com:docs:developer-portal",
      "displayName": "9apes Developer Portal",
      "type": "text/markdown",
      "url": "https://9apes.com/developers.md",
      "description": "Every 9apes developer resource in one index: setup guides, runner labels and prices, the dashboard, and machine-readable files.",
      "tags": [
        "developer-portal",
        "documentation"
      ],
      "representativeQueries": [
        "where are the 9apes developer docs",
        "does 9apes have an API or SDK"
      ]
    },
    {
      "identifier": "urn:air:9apes.com:catalog:runner-labels",
      "displayName": "9apes Runner Labels and Prices",
      "type": "text/markdown",
      "url": "https://9apes.com/docs/available-runners.md",
      "description": "Every supported 9apes `runs-on` label with vCPU, memory, OS, per-minute price, and the equivalent GitHub-hosted rate.",
      "capabilities": [
        "9apes-1vcpu-ubuntu-2404",
        "9apes-2vcpu-ubuntu-2404",
        "9apes",
        "9apes-4vcpu-ubuntu-2404",
        "9apes-8vcpu-ubuntu-2404"
      ],
      "tags": [
        "runners",
        "pricing",
        "github-actions"
      ],
      "representativeQueries": [
        "which runner label should I use for a large build",
        "how much does an 8 vCPU 9apes runner cost per minute"
      ]
    },
    {
      "identifier": "urn:air:9apes.com:catalog:pricing",
      "displayName": "9apes Pricing",
      "type": "text/markdown",
      "url": "https://9apes.com/pricing.md",
      "description": "Per-minute rate card for every runner label against GitHub-hosted list prices, the 3000 free monthly minutes, worked monthly totals at several volumes, and how billing works.",
      "capabilities": [
        "compare-runner-rates",
        "estimate-monthly-cost",
        "explain-billing"
      ],
      "tags": [
        "pricing",
        "billing",
        "cost",
        "github-actions"
      ],
      "representativeQueries": [
        "how much does 9apes cost per month",
        "how many free minutes does 9apes include",
        "is 9apes cheaper than GitHub-hosted runners"
      ]
    },
    {
      "identifier": "urn:air:9apes.com:catalog:benchmarks",
      "displayName": "9apes Runner Benchmarks",
      "type": "text/markdown",
      "url": "https://9apes.com/benchmarks.md",
      "description": "Measured build times for named public repositories on 9apes runners against GitHub-hosted runners, with the workflow file, upstream commit, repetition count, and date behind every figure. The speed and cost claims made elsewhere on this site resolve here.",
      "capabilities": [
        "compare-build-times",
        "verify-speed-claim",
        "reproduce-benchmark"
      ],
      "tags": [
        "benchmarks",
        "performance",
        "cost",
        "github-actions",
        "reproducible"
      ],
      "representativeQueries": [
        "how much faster is 9apes than a GitHub-hosted runner",
        "where does the 2-3x faster claim come from",
        "how can I reproduce the 9apes benchmarks myself"
      ],
      "subjects": [
        "google/xls",
        "facebook/folly",
        "PeerDB-io/peerdb",
        "duckdb/duckdb"
      ]
    },
    {
      "identifier": "urn:air:9apes.com:catalog:comparisons",
      "displayName": "9apes Runner Provider Comparisons",
      "type": "text/markdown",
      "url": "https://9apes.com/compare.md",
      "description": "Side-by-side comparisons of 9apes against GitHub-hosted runners, WarpBuild, Blacksmith, Depot, and RunsOn: per-minute rates, free-minute allowances, platform coverage, and the cases where the other provider is the better choice. Every rival price carries the date it was checked.",
      "capabilities": [
        "compare-providers",
        "compare-runner-rates",
        "explain-tradeoffs"
      ],
      "tags": [
        "comparison",
        "pricing",
        "alternatives",
        "github-actions"
      ],
      "representativeQueries": [
        "how does 9apes compare to WarpBuild",
        "what is a cheaper alternative to GitHub-hosted runners",
        "should I use 9apes or Blacksmith"
      ]
    },
    {
      "identifier": "urn:air:9apes.com:docs:blog",
      "displayName": "9apes Blog",
      "type": "text/markdown",
      "url": "https://9apes.com/blog.md",
      "description": "Practical writing on GitHub Actions cost, runner performance, caching, and CI isolation. Index of published posts with dates.",
      "capabilities": [
        "explain-ci-cost",
        "explain-runner-performance"
      ],
      "tags": [
        "blog",
        "guides",
        "github-actions"
      ],
      "representativeQueries": [
        "how do I reduce my GitHub Actions bill",
        "why are my CI jobs slow"
      ]
    },
    {
      "identifier": "urn:air:9apes.com:docs:quick-start",
      "displayName": "9apes Quick Start",
      "type": "text/markdown",
      "url": "https://9apes.com/docs/quick-start.md",
      "description": "Install the 9apes GitHub App, change one workflow runs-on label, run the job, and roll back if needed.",
      "tags": [
        "quick-start",
        "setup",
        "github-app"
      ],
      "representativeQueries": [
        "how do I set up 9apes on my repository",
        "move a GitHub Actions job to a faster runner"
      ]
    }
  ]
}