Two-way bridge between iMessage and Claude Code powered by Linq. Text your Linq number from iMessage and it pushes into your Claude Code session. Claude replies back via iMessage.
Six tools with complete input schemas and descriptions, but significant gaps in parameter documentation and output schema clarity. Tool names follow verb_noun convention (reply, send, react, edit_message, send_link, check_capability). Descriptions range 50 - 180 chars, meeting baseline minimums. However, 3 of 6 tools have underdocumented parameters: reply's text_decorations array lacks item descriptions; send's effect and files parameters lack format/constraint details; send_link's text parameter is optional but unmarked. No output schemas documented for any tool. Error handling absent, no guidance on retryability, user-fixable errors, or recovery paths. The edit_message tool description mentions iOS 16+ requirement but no validation. Overall: functional definitions suitable for basic use, but below production quality for agent reliability.
Verify if a number supports iMessage or RCS before sending
Edit a previously sent message. Use this for streaming: send an initial short message with reply, then call edit_message to update it as you work. The message updates in-place on their phone (iOS 16+).
Add a tapback reaction to a message
Reply to an iMessage conversation
Send a message to a new number or existing chat
Send a URL with a rich preview card
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., message_id from reply for use in edit_message). Breaks tool composition.
reply tool's text_decorations parameter is an array of objects with range and style/animation, but item schema lacks descriptions. LLMs cannot infer what range values mean (character indices? byte offsets?) or which style/animation values are valid.
send tool's effect parameter accepts free-form strings with examples in description ('confetti, fireworks, ...') instead of an enum. LLMs will hallucinate invalid effects. Should be constrained enum.
No error handling guidance. Tools lack descriptions of failure modes, retryability, or recovery steps. If send fails due to invalid phone number, LLM has no guidance on what to do next.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2026-07-28+ | v2 |
reply and send tools accept file paths as strings without validation constraints (max size, allowed types). Description mentions 'Max 100MB each' but no schema enforcement. LLMs may pass invalid paths or oversized files.