4 tools registered. Strongest in usefulness, weakest in human experience.
No agent run recorded yet.
search_services, subscribe_newsletter, get_blog_articles, get_compliance_assessment<!-- Give the tool a visible counterpart: a declarative form is one the person can see and use too. -->
<form toolname="search_services" tooldescription="...">
<!-- the same action, as UI -->
</form>{
"name": "search_services",
"description": "Quick keyword search across all Farah Solutions compliance services. Returns matching service names and URLs only (use get_service_details for full capabilities, pricing, and eligibility). Output: {results: [{service: string, url: string}], total: number} or {message: string, suggestion: string} when no matches.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search keyword or phrase (e.g., 'corporate tax', 'ICV', 'e-invoicing', 'data protection', 'business setup')"
}
},
"required": [
"query"
]
},
"annotations": {
"readOnlyHint": true
}
}get_blog_articles: declares no required list, so an agent cannot tell which parameters are mandatory{
name: "get_blog_articles",
inputSchema: {
type: "object",
properties: {
query: { type: "string", description: "What to search for" }
},
required: ["query"]
}
}document.modelContext.dispatchEvent(new Event("toolchange"));search_services, subscribe_newsletter, get_blog_articles, get_compliance_assessment<!-- Give the tool a visible counterpart: a declarative form is one the person can see and use too. -->
<form toolname="search_services" tooldescription="...">
<!-- the same action, as UI -->
</form>