Universal Adapter Protocol (UAP) server for device communication and hardware control, exposing MCP tools for Claude Desktop and other MCP clients
Critical failures across naming, descriptions, and schemas. Tool names lack consistent verb prefixes (e.g., 'send_message' vs 'broadcast_message' vs 'set_pin_mode'). Descriptions are minimal (10-50 chars) and lack context on WHEN to use tools or WHAT they return. Input schemas present but parameters lack type constraints, enums, ranges, or validation guidance. No output schemas documented. Error handling absent. Tools span 5 unrelated domains (messaging, GPIO, sensors, weather, Azure) without clear composition or chaining support. Example: 'send_message' description is 54 chars with no guidance on intent values, content structure, or metadata requirements. 'set_pin_mode' lacks enum constraint on mode values. No tool documents what it returns or how results chain to downstream calls.
Read an analog value from a GPIO pin on an ESP32 device
Broadcast a message to all entities in the ReGenNexus network
Configure WiFi settings on an ESP32 device
Put an ESP32 device into deep sleep mode
Read a digital value from a GPIO pin on an ESP32 device
Write a digital value to a GPIO pin on an ESP32 device
Get device information from an ESP32
Descriptions critically short and lack context. 19 of 21 tools have descriptions under 50 chars with no guidance on WHEN to use, WHAT is returned, or HOW to chain calls. Example: 'Read a digital value from a GPIO pin on an ESP32 device' (54 chars) omits valid pin ranges, return format, or error conditions.
No output schemas documented. Tools return unspecified structures. LLMs cannot plan downstream calls or extract required fields. Example: 'list_entities' returns unknown structure, does it include entity_id, name, status, metadata? Agents cannot chain results to 'get_entity' or 'send_message' without guessing.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | 2026-07-28+ | v2 |
Get information about a specific entity
Get the current status of the ReGenNexus server
Check the health status of the ReGenNexus server
List all registered entities in the ReGenNexus registry
Map an Azure IoT device to a ReGenNexus entity
Query weather information for a specific location
Read pressure and temperature from a BMP280 sensor connected to an ESP32
Read temperature and humidity from a DHT sensor connected to an ESP32
Read temperature from a DS18B20 temperature sensor connected to an ESP32
Send a custom command to an ESP32 device
Send a device-to-cloud message via Azure IoT Hub
Send a message to an entity via the ReGenNexus protocol
Set the mode of a GPIO pin on an ESP32 device
Update weather information for a specific location
Parameter constraints missing. 'set_pin_mode' mode param lacks enum (INPUT|OUTPUT|INPUT_PULLUP). 'digital_write' value param lacks range (0-1). 'read_dht' sensor_type lacks enum (DHT22|DHT11). 'configure_wifi' password exposed as plain parameter, security risk. LLMs will hallucinate invalid values; no validation guidance provided.
No error handling or recovery guidance. Tools provide no error messages, retry logic, or actionable next steps. Example: 'send_message' fails silently if target entity not found, agent has no guidance to call 'list_entities' or validate intent. No distinction between retryable vs fatal errors.
Tool composition broken. 21 tools span 5 unrelated domains (messaging, GPIO, sensors, weather, Azure) with no clear chaining. 'send_message' and 'broadcast_message' do not document what 'intent' or 'content' structures are valid. 'list_entities' output cannot be verified to feed into 'get_entity' or 'send_message'. Agents cannot compose multi-step workflows.