LINE Bot MCP Server integration for Home Assistant. Provides tools to send and reply to LINE messages, and retrieve message quota information via the Model Context Protocol.
The server defines 3 tools with explicit schemas and generally clear descriptions. Tool names follow verb_noun convention (push_message, reply_message, get_quota). Input schemas are properly structured with JSON Schema format, including complex oneOf message types. However, there are significant gaps: (1) no output/return schemas documented for any tool, (2) parameter descriptions are inconsistent in detail level, (3) no error handling guidance provided, (4) no security/permission documentation, (5) no sample invocations or recovery paths. The server demonstrates solid foundational quality but lacks production-grade polish in error messaging, response documentation, and resilience patterns.
Get LINE Bot monthly message quota usage information
Send messages to LINE user/group. Supports text, image, location messages (max 5 per request)
Reply to LINE message within 30s (max 5 messages)
No output/return schemas documented for any tool. LLMs cannot plan downstream operations or understand what fields to expect in responses. Critical for chaining tools and data extraction.
No error handling guidance or recovery paths. Tools lack actionable error messages. If get_quota fails, no guidance on why or what to do next. If push_message rejects a message, no clear indication of the constraint violated.
Parameter descriptions lack format/constraint details. 'botID' is undefined, is it an opaque string? Does it correspond to a bot name stored in Home Assistant? The 'to' parameter has a regex pattern but LLMs cannot read JSON Schema, the description should state the constraint explicitly (e.g., 'Must start with U, C, or R followed by 32 hex characters').
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | B | 72 | <=2025-11-25 | v2 |
| 2026-03-09 | D | 51 | - | v1 |
No permission/security documentation. Tools modify state (send messages) but no mention of which HOME_ASSISTANT_USER or role is required to invoke them. No audit trail guidance. Violates principle of explicit permission gates.
reply_message description mentions '30s validity' of reply_token but does not explain what happens if the token is expired, does the tool fail? Return a specific error? LLM needs to know this upfront.
No idempotency guarantees documented. push_message and reply_message are state-modifying (WRITE risk). If an agent retries due to a transient error, will duplicate messages be sent? No mention of idempotency keys or deduplication.
get_quota lacks context on what 'monthly message quota' means. Does it return remaining messages? Total available? Used vs. available? Reset date? Response schema is completely absent.