12 tools registered. Strongest in shared experience, weakest in tool selection.
{
"name": "navigateToSection",
"description": "Scrolls the page to a section of Radu Stoian's profile and returns that section's heading and text. Sections: top (intro), about, expertise, insights (articles), projects (case studies), testimonials, speaking (talks & podcasts), skills (certifications), connect (contact).",
"inputSchema": {
"type": "object",
"properties": {
"section": {
"type": "string",
"enum": [
"top",
"about",
"expertise",
"insights",
"projects",
"testimonials",
"speaking",
"skills",
"connect"
],
"description": "ID of the section to bring into view."
}
},
"required": [
"section"
]
},
"annotations": {
"readOnlyHint": true
}
}{ name: "server-info" /* short, unique, verb-based */ }ask-question, get-section, get-investigation-links{
name: "ask-question",
// Declare readOnlyHint: true on tools that truly have no side effects -
// that is the claim that lets an agent relax confirmation on reads.
// (false is the default, so declaring it adds no information.)
annotations: { readOnlyHint: true }
}showCarouselSlide: readOnlyHint=true// readOnlyHint must match what the tool actually does - drop it (or set false) on a tool that writes.
{ name: "showCarouselSlide", annotations: { readOnlyHint: false } }getContactLinks: description instructs agent to prefer a channel; ask-question: description instructs agent to provide a default answer{
name: "getContactLinks",
// Metadata DESCRIBES the tool - it never addresses the agent reading it.
// Rewrite any name, description, title, or schema field description that
// instructs the agent (which tool to prefer, what to output, rules to
// ignore) so it states what the tool does and what it returns instead.
description: "Searches the catalog and returns matching items with prices."
}{}{}{}