{
  "$schema": "https://modelcontextprotocol.io/schemas/well-known-mcp.json",
  "name": "NodeGrade",
  "description": "AI-crawler-readiness scanner. Score any domain against the readability, discoverability, callability, monetization, and trust standards that agents actually use.",
  "vendor": {
    "name": "RENTSPIRE LLC",
    "url": "https://nodegrade.com",
    "contact": "support@nodegrade.com"
  },
  "servers": [
    {
      "name": "nodegrade-http",
      "type": "http",
      "url": "https://nodegrade.com/api",
      "description": "HTTP-callable NodeGrade API. Public methods: POST /scans, GET /report/{token}, POST /leads.",
      "auth": {
        "type": "none",
        "note": "Public endpoints. Rate limits: 10 scans / IP / minute, 15 leads / IP / minute."
      }
    }
  ],
  "resources": [
    {
      "name": "openapi",
      "uri": "https://nodegrade.com/openapi.json",
      "mime_type": "application/json",
      "description": "OpenAPI 3.1 spec for all public NodeGrade endpoints."
    },
    {
      "name": "llms",
      "uri": "https://nodegrade.com/llms.txt",
      "mime_type": "text/plain",
      "description": "Public resource map for AI crawlers."
    },
    {
      "name": "methodology",
      "uri": "https://nodegrade.com/methodology",
      "mime_type": "text/html",
      "description": "Full scoring methodology, pillar breakdown, and tier definitions."
    }
  ],
  "tools": [
    {
      "name": "scan_domain",
      "description": "Score a single domain against the NodeGrade rubric. Returns overall score, tier, pillar scores, and findings with remediation URLs.",
      "http": {
        "method": "POST",
        "url": "https://nodegrade.com/api/scans",
        "body_schema_ref": "https://nodegrade.com/openapi.json#/components/schemas/ScanRequest",
        "response_schema_ref": "https://nodegrade.com/openapi.json#/components/schemas/ScanResult"
      }
    }
  ],
  "prompts": [],
  "provenance": {
    "publisher": "NodeGrade",
    "published_at": "2026-08-16",
    "policy": "Scans, findings, and remediation text are informational only. Payment for the Fix-Kit remediation product is handled off-domain by Stripe."
  }
}
