5 tools registered. Strongest in usefulness, weakest in human experience.
No agent run recorded yet.
search_site, list_content, read_current_page, open_entry<!-- Give the tool a visible counterpart: a declarative form is one the person can see and use too. -->
<form toolname="search_site" tooldescription="...">
<!-- the same action, as UI -->
</form>{
"name": "search_site",
"description": "Search this site's writing, photography notes, and recipes by keyword. Returns titles, excerpts, and both HTML and markdown URLs.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search terms."
},
"limit": {
"type": "integer",
"description": "Maximum hits (1-50, default 10)."
}
},
"required": [
"query"
]
},
"annotations": {
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": false
}
}list_content: declares no required list, so an agent cannot tell which parameters are mandatory{
name: "list_content",
inputSchema: {
type: "object",
properties: {
query: { type: "string", description: "What to search for" }
},
required: ["query"]
}
}document.modelContext.dispatchEvent(new Event("toolchange"));{ name: "open_entry" /* short, unique, verb-based */ }search_site, list_content, read_current_page, open_entry<!-- Give the tool a visible counterpart: a declarative form is one the person can see and use too. -->
<form toolname="search_site" tooldescription="...">
<!-- the same action, as UI -->
</form>