{
  "schema_version": "1.0",
  "spec": "W3C AI Agent Protocol (draft 2026)",
  "name": "ProServer SourceBans Agent",
  "description": "Read-only agent interface for the ProServer shared NMRiH banlist. Lets you search bans, check server status, and pull aggregate stats — nothing else.",
  "url": "https://proserver.sk",
  "logo": "https://proserver.sk/themes/animated-fluent/images/acs.webp",
  "contact": {
    "email": "avalongamecs@gmail.com",
    "organization": "Avalon Community Servers"
  },
  "maintainer": {
    "name": "Avalon Community Servers",
    "url": "https://avaloncs.net"
  },
  "identity": {
    "type": "service",
    "verified": true,
    "sameAs": [
      "https://avaloncs.net",
      "https://github.com/sbpp/sourcebans-pp"
    ]
  },
  "capabilities": [
    "read",
    "search",
    "structured-data",
    "real-time-statistics"
  ],
  "supported_protocols": [
    "REST/JSON",
    "Schema.org JSON-LD",
    "WebMCP (draft)",
    "IndexNow"
  ],
  "entry_points": {
    "summary":      "https://proserver.sk/ai/summary.json",
    "facts":        "https://proserver.sk/ai/facts.json",
    "faq":          "https://proserver.sk/ai/faq.json",
    "stats":        "https://proserver.sk/ai/stats.json",
    "servers":      "https://proserver.sk/ai/servers.json",
    "recent_bans":  "https://proserver.sk/ai/bans-recent.json",
    "schema":       "https://proserver.sk/ai/schema.json",
    "entity":       "https://proserver.sk/ai/entity.json",
    "glossary":     "https://proserver.sk/ai/glossary.json",
    "changelog":    "https://proserver.sk/ai/changelog.json",
    "json_feed":    "https://proserver.sk/ai/feed.json",
    "rss_feed":     "https://proserver.sk/feed.xml",
    "actions":      "https://proserver.sk/.well-known/ai-actions.json"
  },
  "actions": [
    {
      "id": "search_bans",
      "name": "Search bans",
      "description": "Search for player bans by Steam ID, player name, or IP address",
      "method": "GET",
      "url_template": "https://proserver.sk/index.php?p=banlist&advSearch={query}&advType={type}",
      "parameters": {
        "query": { "type": "string", "required": true },
        "type":  { "type": "string", "required": false, "enum": ["steamid", "name", "ip", "reason"] }
      },
      "authentication": "none",
      "rate_limit_per_minute": 60
    },
    {
      "id": "get_stats",
      "name": "Get platform statistics",
      "description": "Retrieve current ban / server / activity counters",
      "method": "GET",
      "url": "https://proserver.sk/ai/stats.json",
      "authentication": "none",
      "response_format": "application/json"
    },
    {
      "id": "get_servers",
      "name": "Get server list",
      "description": "Retrieve list of connected NMRiH game servers",
      "method": "GET",
      "url": "https://proserver.sk/ai/servers.json",
      "authentication": "none",
      "response_format": "application/json"
    }
  ],
  "authentication": {
    "public_actions": ["search_bans", "get_stats", "get_servers"],
    "authenticated_actions": []
  },
  "trust_layer": {
    "content_source": "human-verified",
    "fact_density": "high",
    "confidence_level": "verified",
    "pii_exposed": false,
    "license": "CC-BY-NC-SA-3.0"
  },
  "rate_limits": {
    "requests_per_minute": 60,
    "requests_per_hour": 1000,
    "burst": 10
  },
  "agent_experience": {
    "identity_handshake": true,
    "error_response_format": "application/json",
    "supports_conditional_requests": true,
    "supports_cors": true
  },
  "effective_date": "2026-04-22",
  "last_modified": "2026-04-22"
}
