Crawler access (robots.txt)
2/2 · pass
8 of 8 AI crawlers may read the site, 0 disallowed
- GET /robots.txt -> HTTP 200, 459 B, 1 user-agent group
- Allowed: GPTBot, ClaudeBot, OAI-SearchBot, PerplexityBot, Google-Extended, Amazonbot (via *), CCBot (via *), Bytespider (via *)
- Content-Signal: ai-train=no, search=yes, ai-input=yes
- Sitemap declared: https://www.rubenmarcus.dev/sitemap-index.xml
Fix: Nothing to fix here.
Machine-readable surfaces
2/2 · pass
3 of 7 surfaces present (/llms.txt, /.well-known/agent-card.json, /openapi.json); sitemap via robots.txt
- /llms.txt: HTTP 200, 6.4 KB of text
- /sitemap.xml: HTTP 404
- /.well-known/x402: HTTP 500
- /.well-known/agent-card.json: HTTP 200, valid JSON (agent "Ruben Marcus Portfolio Agent")
- /.well-known/mcp-registry-auth: HTTP 500
- /openapi.json: HTTP 200, valid JSON (OpenAPI 3.1.0)
- /ai.txt: HTTP 404
- Sitemap declared in robots.txt instead: https://www.rubenmarcus.dev/sitemap-index.xml
Fix: Nothing to fix here.
Readable without JavaScript
2/2 · pass
Home page is readable
- GET https://www.rubenmarcus.dev/ -> HTTP 200, text/html, 163 KB
- 6,124 characters of visible text with scripts, styles and tags removed; <title>: "Ruben Marcus — AI Fullstack Engineer · Agent-Ready Portfolio"
- 4 external scripts, 6 inline; <noscript> absent
- first words: "rubenmarcus.dev Portfolio AI Skills Demos Blog About Contact Agents MCP EN / PT AVAILABLE FOR FULL-TIME ROLES ✦ OPEN TO FREELANCE CONTRACTS ..."
Fix: Nothing to fix here.
Structured data
2/2 · pass
2 JSON-LD blocks, Open Graph complete
- 2 JSON-LD blocks: @type Organization, Service, Person, WebSite, WebPage, FAQPage, Question
- Open Graph: og:title "Ruben Marcus — AI Fullstack Engineer · Agent-Ready Portfolio"; og:description present
- meta description: present
Fix: Nothing to fix here.
Legal notices (TAKE IT DOWN desk check)
not measured
Unavailable
- takeitdown.agentexchange.work/check.json: refused takeitdown.agentexchange.work: hosts on agentexchange.work cannot be graded from inside the same Cloudflare zone; every check would - unavailable
Fix: Re-run in a few minutes; the notice check could not be completed.
MCP census entry (index.agentexchange.work)
0/2 · fail
Not selling to agents: no census entry, no /mcp endpoint
- census unavailable (refused index.agentexchange.work: hosts on agentexchange.work cannot be graded from inside the same Cloudflare zone; every check would time )
- GET /mcp -> HTTP 404: no MCP endpoint at the root
Fix: Expose a Streamable HTTP MCP endpoint at /mcp (or a paid x402 route) so agents can call you, not just read you.
$49 AI Visibility Full Report
This grade is free and automated. The paid next step is the $49 AI Visibility Full Report (which brands a representative AI model, standing in for ChatGPT-class assistants, names when buyers ask about your category, with a prioritized fix list) from aivisibility.agentexchange.work, run for www.rubenmarcus.dev. It includes:
- 8 real buyer questions tested across ChatGPT-class models
- Competitor share-of-voice: who AI names, how often, versus you
- Full GEO site audit with prioritized, specific fixes
- Agent-Readiness Score: crawler access, llms.txt, schema, discovery manifest
- Custom 30/60/90-day action plan to get cited by ChatGPT, Perplexity and Google AI Overviews
- Shareable report, generated in about 60 seconds after checkout
Get the Full Report — $49 Stripe checkout asks for your brand name and category; the report is ready about 60 seconds after payment. Legal notices and the MCP census entry are not in this report (free: Compliance Desk check, census claim).