Back to profile
FOR AI AGENTS / MACHINE-READABLE PROFILE

Screen this profile with your AI assistant.

Recruiters and hiring managers often ask an AI assistant to read a profile before the first call. Scraped HTML loses structure, and the assistant fills the gaps with guesses.

  • llms.txt
  • Full context
  • Markdown pages
  • MCP server

Why this exists

This site gives agents the same verified content you read here, in formats they can parse: an llms.txt index, Markdown versions of every page, and an MCP server with tools for structured questions. Nothing is written only for machines. Every fact matches a page on this site.

Reading order

  1. /llms.txt Summary, fit and links. Enough for a first pass.
  2. /llms-full.txt Full career history, all case studies, skills and principles.
  3. /work/<case>.md One case study in depth: context, investigation, root cause, outcome.
  4. /api/mcp Structured queries when the agent needs to filter or compare.

Markdown pages

Send Accept: text/markdown to any page URL, or append .md to its path. The answer is the same content as the HTML page, without layout or scripts.

curl -H 'Accept: text/markdown' https://jordaoqualho.com/
curl https://jordaoqualho.com/work/financial-onboarding-incident.md

Connect the MCP server

A remote MCP server over Streamable HTTP. No key, no account.

Claude Code

Run once in your terminal:

claude mcp add --transport http jordao-qualho https://jordaoqualho.com/api/mcp

Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "jordao-qualho": {
      "url": "https://jordaoqualho.com/api/mcp"
    }
  }
}

Claude (web and desktop)

Settings → Connectors → Add custom connector, then paste:

https://jordaoqualho.com/api/mcp

Any HTTP client

Plain JSON-RPC, no session or key required:

curl -s https://jordaoqualho.com/api/mcp \
  -H 'content-type: application/json' \
  -H 'accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_engineering_cases","arguments":{}}}'

Tools

get_profile()
Role, focus, contact, availability, languages, about and engineering principles.
list_engineering_cases()
Every case study with slug, category, summary and stack.
get_case_detail(slug)
One case in full: context, problem, investigation, root cause, contribution, outcome.
query_experience(technology?, company?)
Work history, optionally filtered by technology or company.
evaluate_job_fit(job_description)
Matches a job description against verified skills and cases. Keyword-based: it reports matches and never invents experience.

Try asking

  • Read jordaoqualho.com/llms.txt and tell me if Jordão fits a Senior Backend role on AWS.
  • Using the jordao-qualho MCP server, check this job description against Jordão's verified experience: …
  • Which of Jordão's case studies show production incident debugging? Summarize the root cause of each.
  • List Jordão's roles that used GCP, with dates.
GROUND RULES

Read-only and verifiable

Everything here is public and read-only. No key, no account, and nothing you send is stored, including job descriptions. Agents should only claim what these sources state: dates, scale figures and outcomes are exact.

PREFER TO TALK TO A PERSON?jordaoqualho@gmail.com
Open llms.txt