{
  "schema_version": "1.0.0",
  "name": "AFMR.ai machine resource index",
  "canonical": "https://afmr.ai/resources.json",
  "updated": "2026-07-30",
  "site_role": "Independent public front door and machine discovery router",
  "authority_boundary": {
    "afmr_1_0_vocabulary": "https://wulfkaal.github.io/afmr/index.json",
    "afmr_ai_mirrors_vocabulary": false,
    "notice": "The governed AFMR 1.0 index controls vocabulary identifiers, definitions, trigger conditions, and status."
  },
  "read_resources": [
    {
      "id": "afmr-discovery",
      "method": "GET",
      "url": "https://afmr.ai/.well-known/afmr.json",
      "media_type": "application/json",
      "role": "Domain authority map and machine action path"
    },
    {
      "id": "agent-orientation",
      "method": "GET",
      "url": "https://afmr.ai/llms.txt",
      "media_type": "text/plain",
      "role": "Compact agent orientation"
    },
    {
      "id": "expanded-agent-documentation",
      "method": "GET",
      "url": "https://afmr.ai/llms-full.txt",
      "media_type": "text/plain",
      "role": "Terminology, verification algorithm, lifecycle, and limits"
    },
    {
      "id": "a2a-agent-card",
      "method": "GET",
      "url": "https://afmr.ai/.well-known/agent-card.json",
      "media_type": "application/json",
      "role": "Public A2A discovery metadata"
    },
    {
      "id": "mcp-discovery-pointer",
      "method": "GET",
      "url": "https://afmr.ai/.well-known/mcp.json",
      "media_type": "application/json",
      "role": "Non-normative pointer to the MCP registry manifest and transport"
    },
    {
      "id": "mcp-registry-manifest",
      "method": "GET",
      "url": "https://afmr.ai/server.json",
      "media_type": "application/json",
      "role": "Official MCP Registry server manifest"
    },
    {
      "id": "openapi",
      "method": "GET",
      "url": "https://afmr.ai/openapi.json",
      "media_type": "application/json",
      "role": "Read discovery and protocol operation description"
    },
    {
      "id": "reputation-attestation-specification",
      "method": "GET",
      "url": "https://afmr.ai/standards/reputation-attestation/0.1/specification",
      "media_type": "text/html",
      "lifecycle": "working-draft"
    },
    {
      "id": "reputation-attestation-schema",
      "method": "GET",
      "url": "https://afmr.ai/standards/reputation-attestation/0.1/schema.json",
      "media_type": "application/schema+json",
      "lifecycle": "working-draft"
    },
    {
      "id": "reputation-attestation-verifier",
      "method": "GET",
      "url": "https://afmr.ai/standards/reputation-attestation/0.1/verifier.json",
      "media_type": "application/json",
      "lifecycle": "working-draft"
    },
    {
      "id": "endpoint-conformance-registry",
      "method": "GET",
      "url": "https://afmr.ai/registries/endpoints/v0.1/index.json",
      "media_type": "application/json",
      "lifecycle": "pre-publication",
      "entries": 0
    },
    {
      "id": "evidence-map",
      "method": "GET",
      "url": "https://afmr.ai/evidence/index.json",
      "media_type": "application/json",
      "role": "Public evidence and source map"
    },
    {
      "id": "lift-evidence-index",
      "method": "GET",
      "url": "https://afmr.ai/lift-evidence/index.json",
      "media_type": "application/json",
      "lifecycle": "configuration_only",
      "cards": 0
    },
    {
      "id": "status",
      "method": "GET",
      "url": "https://afmr.ai/status.json",
      "media_type": "application/json"
    },
    {
      "id": "changelog",
      "method": "GET",
      "url": "https://afmr.ai/changelog.json",
      "media_type": "application/json"
    },
    {
      "id": "feed",
      "method": "GET",
      "url": "https://afmr.ai/feed.xml",
      "media_type": "application/atom+xml"
    }
  ],
  "protocol_endpoints": [
    {
      "id": "afmr-mcp",
      "method": "POST",
      "url": "https://afmr.ai/api/rpc",
      "protocol": "MCP",
      "protocol_version": "2025-11-25",
      "transport": "streamable-http",
      "access": "public_read_only",
      "note": "GET returns 405 because this stateless server does not offer an SSE listening stream."
    },
    {
      "id": "afmr-a2a",
      "method": "POST",
      "url": "https://afmr.ai/a2a",
      "protocol": "A2A",
      "protocol_version": "1.0",
      "binding": "JSONRPC",
      "access": "public_read_only"
    }
  ],
  "external_dependencies": [
    {
      "id": "afmr-1.0-vocabulary",
      "url": "https://wulfkaal.github.io/afmr/index.json",
      "status": "available",
      "checked_at": "2026-07-30T20:10:00Z"
    },
    {
      "id": "lift-public-card-schema",
      "url": "https://wulfkaal.github.io/afmr/schemas/lift-comparison-public-card-v1.schema.json",
      "status": "available",
      "observed_http_status": 200,
      "checked_at": "2026-07-30T20:55:00Z"
    },
    {
      "id": "lift-public-card-index-schema",
      "url": "https://wulfkaal.github.io/afmr/schemas/lift-comparison-public-card-index-v1.schema.json",
      "status": "unavailable",
      "observed_http_status": 404,
      "checked_at": "2026-07-30T20:55:00Z",
      "impact": "The empty Lift Evidence index declares this governed schema identifier, which is not yet resolvable. No result cards are published.",
      "safe_remediation": "Publish the locked index schema at the canonical governed AFMR path; do not create a competing AFMR.ai schema."
    }
  ],
  "claim_boundary": "Discovery metadata and successful verification do not confer admission, general trust, universal safety, superiority, individual reputation, lift guarantees, or transaction authority."
}
