Significant gaps across naming, descriptions, and schemas. Tool names lack clear action verbs (e.g., 'homekit_list_accessories' vs 'list_accessories'). Most parameter descriptions are minimal (1-5 words). Critical parameters like 'value' in homekit_set_accessory lack type information and constraints. No output schemas documented. Error handling is absent, tool implementations are stubs that return placeholder text. No validation guidance for LLMs. Composition is reasonable (8 focused tools), but execution quality is poor.
Activate a scene in Apple Home
Create a new scene with specified accessory states
Get the current state of a specific accessory
List all accessories in the Apple Home
List all automations
List all available scenes
Trigger an automation
homekit_set_accessory 'value' parameter has no type constraint. Description says '(true/false, 0-100 for brightness, etc.)' but schema omits type. LLMs cannot validate input, will pass invalid values.
homekit_create_scene 'accessories' array items lack type definitions for 'value' field. Schema shows empty object {} for value, no type, no constraints. LLM cannot infer valid formats.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. E.g., does homekit_list_accessories return accessory IDs? Names? States? Unknown.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2026-07-28+ | v2 |
Set the state of an accessory (on/off, brightness, temperature, etc.)
Tool implementations are stubs returning placeholder text. No actual HomeKit integration, no error handling, no validation. Descriptions claim tools work but code shows 'Executing homekit tool: {name}', not functional.
Parameter descriptions are too brief (1-5 words). 'Accessory name', 'Scene name', 'Automation name' do not explain format, constraints, or when to use. Baseline is 72 chars; these are ~15 chars.