Khalid Ibne Hasan · Portfolio
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Query Khalid Ibne Hasan's portfolio: profile, availability, case studies, writing, and resume.
| Author | io.github.khalid-hasan |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2423 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Khalid Ibne Hasan · Portfolio": {
"url": "https://www.khalidibnehasan.com/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (9)
get_profileReturns who Khalid Ibne Hasan is: name, role, organization, location, links, and a short professional bio. Use this first to ground any answer about Khalid.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_availabilityReturns what Khalid Ibne Hasan is currently open to (advisory, speaking, and similar engagements) plus the ways to reach him, including a direct call-booking link.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_projectsLists Khalid's shipped case studies (products built at Keyin College) and his side projects (the Lab). Each entry includes a slug usable with get_case_study, a summary, and tags.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_case_studyReturns the full case study for one project by slug: role, year, impact, description, highlights, and stack. Get slugs from list_projects.
Parameters:
slug(required) — string — The project slug, as returned by list_projects.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_writingLists Khalid's writing: in-site notes and Substack essays, merged and sorted newest first. Each entry has a title, source, date, and URL.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_postReturns the full text of one in-site note by slug. Substack essays live on Substack; for those this returns the external URL to read instead. Get slugs from list_writing.
Parameters:
slug(required) — string — The post slug, as returned by list_writing.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_resumeReturns Khalid Ibne Hasan's structured resume: work experience, education, skill groups, and the URL of the downloadable PDF version.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
search_siteSearches all of khalidibnehasan.com (case studies, side projects, writing, profile pages) for a phrase and returns matching items with URLs and snippets.
Parameters:
query(required) — string — The word or phrase to search for.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
ask_khalidAsks Khalid Ibne Hasan's chat persona one question and returns its answer. The persona is LLM-backed, grounded in khalidibnehasan.com content, and answers as Khalid about his work, experience, and availability. To actually reach Khalid, use the contact form at https://www.khalidibnehasan.com/contact or book a call at https://calendly.com/khalidibnehasan/30min.
Parameters:
question(required) — string — The question to ask Khalid's chat persona.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.