Khalid Ibne Hasan · Portfolio

io.github.khalid-hasanPublished by GitHub account khalid-hasanv1.0.0Updated Oct 24, 2026

Query Khalid Ibne Hasan's portfolio: profile, availability, case studies, writing, and resume.

The publisher's own server: PortfolioFit

VerifiedStreamable HTTPWeb executableWeb Search & ScrapingKnowledge & Memory

Overview

AI-generated overview

A remote MCP server that lets an assistant query Khalid Ibne Hasan's personal portfolio: profile, availability, case studies, writing, resume and a chat persona

What you can do
Read the profile and current availability, including ways to get in touch and a call-booking link. List projects and fetch the full case study for one by slug, with role, year, impact and stack. List writing from in-site notes and Substack essays, and read the full text of an in-site note. Retrieve the structured resume with work experience, education, skills and a PDF link. Search the whole site for a phrase and get matching items with URLs and snippets. Ask an LLM-backed persona one question about Khalid's work, experience and availability.
When to use it
Useful when someone wants an assistant to answer questions about Khalid Ibne Hasan's background, projects, writing or availability, or to search his site, without browsing it manually.
Requirements
A remote streamable HTTP endpoint at khalidibnehasan.com; no package, account, API key or header is declared. Network access to the site is needed.
Before you install
The ask_khalid tool returns answers from an LLM-backed persona speaking as Khalid, not from Khalid himself, so treat them as generated content rather than direct statements. The persona is not a way to reach him; contact goes through the site's contact form. All tools appear read-only.

Installation

In SourceWeft

  1. Open Khalid Ibne Hasan · Portfolio in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.khalid-hasan%2Fportfolio/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "khalid-ibne-hasan-portfolio": {
      "type": "http",
      "url": "https://www.khalidibnehasan.com/mcp"
    }
  }
}

Tools

9

get_profile

get profile

Returns who Khalid Ibne Hasan is: name, role, organization, location, links, and a short professional bio. Use this first to ground any answer about Khalid.

Takes no parameters.

get_availability

get availability

Returns 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.

Takes no parameters.

list_projects

list projects

Lists 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.

Takes no parameters.

get_case_study

get case study

Returns the full case study for one project by slug: role, year, impact, description, highlights, and stack. Get slugs from list_projects.

Parametersslugrequired

list_writing

list writing

Lists Khalid's writing: in-site notes and Substack essays, merged and sorted newest first. Each entry has a title, source, date, and URL.

Takes no parameters.

get_post

get post

Returns 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.

Parametersslugrequired

get_resume

get resume

Returns Khalid Ibne Hasan's structured resume: work experience, education, skill groups, and the URL of the downloadable PDF version.

Takes no parameters.

search_site

search site

Searches all of khalidibnehasan.com (case studies, side projects, writing, profile pages) for a phrase and returns matching items with URLs and snippets.

Parametersqueryrequired

ask_khalid

ask khalid

Asks 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.

Parametersquestionrequired

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.

Other Portfolio integrations