Khalid Ibne Hasan · Portfolio
Query Khalid Ibne Hasan's portfolio: profile, availability, case studies, writing, and resume.
我该使用它吗
质量与安全性
发现(2)
- HIGH
- MEDIUM在 ask_khalid 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"portfolio": {
"url": "https://www.khalidibnehasan.com/mcp"
}
}
}远程端点
https://www.khalidibnehasan.com/mcpstreamable-http它能做什么
工具清单
工具(9)
🟢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.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢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.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢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.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_case_study(slug)
Returns the full case study for one project by slug: role, year, impact, description, highlights, and stack. Get slugs from list_projects.
输入模式
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"maxLength": 120,
"description": "The project slug, as returned by list_projects."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢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.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡get_post(slug)
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.
输入模式
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"maxLength": 160,
"description": "The post slug, as returned by list_writing."
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_resume
Returns Khalid Ibne Hasan's structured resume: work experience, education, skill groups, and the URL of the downloadable PDF version.
输入模式
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢search_site(query)
Searches all of khalidibnehasan.com (case studies, side projects, writing, profile pages) for a phrase and returns matching items with URLs and snippets.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 200,
"description": "The word or phrase to search for."
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}⚪ask_khalid(question)
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.
输入模式
{
"type": "object",
"properties": {
"question": {
"type": "string",
"minLength": 1,
"maxLength": 1000,
"description": "The question to ask Khalid's chat persona."
}
},
"required": [
"question"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}社区
证据