Tool tree
gradeNot graded
get_profileAnswer
Return Ratul Hasan Ruhan's full structured profile (schema.org Person JSON-LD): roles, education, credentials, awards, memberships/volunteering, publications, skills, research interests, media coverage.
View tool JSON
{
"name": "get_profile",
"kind": "answer",
"impl": "imperative",
"description": "Return Ratul Hasan Ruhan's full structured profile (schema.org Person JSON-LD): roles, education, credentials, awards, memberships/volunteering, publications, skills, research interests, media coverage.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}list_projectsAnswer
List portfolio projects, optionally filtered by category (e.g. "Mobile Apps", "Web Apps", "Library", "Compiler", "AI/ML", "Networking", "Desktop Apps") and/or a free-text query matched against title and subtitle.
View tool JSON
{
"name": "list_projects",
"kind": "answer",
"impl": "imperative",
"description": "List portfolio projects, optionally filtered by category (e.g. \"Mobile Apps\", \"Web Apps\", \"Library\", \"Compiler\", \"AI/ML\", \"Networking\", \"Desktop Apps\") and/or a free-text query matched against title and subtitle.",
"inputSchema": {
"type": "object",
"properties": {
"category": {
"type": "string",
"description": "Exact category label (case-insensitive). Omit for all."
},
"query": {
"type": "string",
"description": "Case-insensitive substring to match in title or subtitle."
}
},
"additionalProperties": false
}
}get_contact_infoAnswer
Return ways to reach Ratul: email, WhatsApp, LinkedIn, GitHub, location, the meeting booking link, the resume PDF URL, and the contact-form page.
View tool JSON
{
"name": "get_contact_info",
"kind": "answer",
"impl": "imperative",
"description": "Return ways to reach Ratul: email, WhatsApp, LinkedIn, GitHub, location, the meeting booking link, the resume PDF URL, and the contact-form page.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}navigateAction
Show one of the site's sections in the current tab: about, resume, projects, research, writings, recognition, or contact.
View tool JSON
{
"name": "navigate",
"kind": "act",
"impl": "imperative",
"description": "Show one of the site's sections in the current tab: about, resume, projects, research, writings, recognition, or contact.",
"inputSchema": {
"type": "object",
"properties": {
"page": {
"type": "string",
"enum": [
"about",
"resume",
"projects",
"research",
"writings",
"recognition",
"contact"
]
}
},
"required": [
"page"
],
"additionalProperties": false
}
}show_projectsAction
Open the Projects section and apply a category filter in the UI (use "All" to clear).
View tool JSON
{
"name": "show_projects",
"kind": "act",
"impl": "imperative",
"description": "Open the Projects section and apply a category filter in the UI (use \"All\" to clear).",
"inputSchema": {
"type": "object",
"properties": {
"category": {
"type": "string",
"description": "Category label as shown on the filter bar, or \"All\"."
}
},
"required": [
"category"
],
"additionalProperties": false
}
}prefill_contact_formAction
Open the Contact section and fill in the message form (name, email, message). The form is NOT submitted — the user reviews and presses Send.
View tool JSON
{
"name": "prefill_contact_form",
"kind": "act",
"impl": "imperative",
"description": "Open the Contact section and fill in the message form (name, email, message). The form is NOT submitted — the user reviews and presses Send.",
"inputSchema": {
"type": "object",
"properties": {
"fullname": {
"type": "string",
"maxLength": 200
},
"email": {
"type": "string",
"format": "email",
"maxLength": 200
},
"message": {
"type": "string",
"maxLength": 5000
}
},
"required": [
"fullname",
"email",
"message"
],
"additionalProperties": false
}
}open_booking_pageAction
Open the Google Calendar appointment page ("Quick sync with Ratul") in a new tab so the user can pick a slot.
View tool JSON
{
"name": "open_booking_page",
"kind": "act",
"impl": "imperative",
"description": "Open the Google Calendar appointment page (\"Quick sync with Ratul\") in a new tab so the user can pick a slot.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}download_resumeAction
Open the resume PDF in a new tab (the browser may download it).
View tool JSON
{
"name": "download_resume",
"kind": "act",
"impl": "imperative",
"description": "Open the resume PDF in a new tab (the browser may download it).",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}