{
 "specVersion": "1.0",
 "host": {
  "displayName": "Clawhard Studio",
  "identifier": "https://clawhard.com/#org",
  "documentationUrl": "https://clawhard.com/llms.txt"
 },
 "entries": [
  {
   "identifier": "urn:air:border.clawhard.com:server:border",
   "displayName": "Border MCP server",
   "description": "Border checks a cross-origin API call the way the browser does: it sends the real preflight to the live API (or reads pasted curl output for localhost), applies the Fetch standard CORS rules as Chrome implements them, and returns the verdict, Chrome's exact error message, the failing step and the exact response headers that fix it. No account.",
   "type": "application/mcp-server-card+json",
   "url": "https://border.clawhard.com/.well-known/mcp/server-card.json",
   "representativeQueries": [
    "Why does my fetch say blocked by CORS policy?",
    "Will a POST with JSON from localhost:3000 pass CORS on this API?",
    "Does this API allow cookies from my site?",
    "Here is my OPTIONS response, why does Chrome reject it?"
   ]
  },
  {
   "identifier": "urn:air:border.clawhard.com:agent:border",
   "displayName": "Border agent (A2A)",
   "type": "application/a2a-agent-card+json",
   "url": "https://border.clawhard.com/.well-known/agent-card.json",
   "representativeQueries": [
    "Why does my fetch say blocked by CORS policy?",
    "Will a POST with JSON from localhost:3000 pass CORS on this API?",
    "Does this API allow cookies from my site?",
    "Here is my OPTIONS response, why does Chrome reject it?"
   ]
  },
  {
   "identifier": "urn:air:border.clawhard.com:api:border",
   "displayName": "Border API (OpenAPI)",
   "type": "application/openapi+json",
   "url": "https://border.clawhard.com/openapi.json",
   "representativeQueries": [
    "Why does my fetch say blocked by CORS policy?",
    "Will a POST with JSON from localhost:3000 pass CORS on this API?",
    "Does this API allow cookies from my site?",
    "Here is my OPTIONS response, why does Chrome reject it?"
   ]
  }
 ]
}