The server defines 6 tools with complete input schemas and descriptions. Tool naming follows verb_noun convention (readwise_save_document, readwise_list_documents, etc.), which is strong. Descriptions are present and moderately detailed (avg ~150 chars). However, there are significant gaps: (1) No output schemas are documented, LLMs cannot predict what fields each tool returns, (2) Error handling is not visible in the tool definitions and likely minimal in handlers, (3) Parameter descriptions lack actionable constraints (e.g., ISO 8601 format is mentioned but not enforced with examples), (4) Two tools (readwise_list_documents, readwise_topic_search) have performance warnings in descriptions but no guidance on when to use them or how to recover from timeout, (5) No tool declares whether it is idempotent, read-only, or destructive, only inferred from naming. The readwise_delete_document tool is destructive but has no confirmation or dry-run option documented. Per-tool scores range from 65 (readwise_list_documents due to performance complexity) to 72 (readwise_save_document with clearer single-action semantics).
Delete a document from Readwise Reader
List documents from Readwise Reader with optional filtering
List all tags from Readwise Reader
Save a document (URL or HTML content) to Readwise Reader
Search documents in Readwise Reader by topic using regex matching on title, summary, notes, and tags
Update a document in Readwise Reader
No output schemas documented for any tool. LLMs cannot predict response structure, field names, or types. Must document what each tool returns (e.g., readwise_list_documents returns {documents: [{id, title, author, ...}], nextCursor?, totalCount?}).
readwise_delete_document (destructive operation) lacks confirmation, dry-run, or explicit warning in description. LLMs may accidentally delete documents. Add a confirmation_required annotation or require an explicit --confirm flag.
readwise_list_documents exposes two performance-sensitive boolean flags (withHtmlContent, withFullContent) with warnings in descriptions. No guidance on error recovery if calls timeout. Should add timeout handling and suggest pagination/filtering to reduce payload.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 58 | 2026-07-28+ | v2 |
| 2026-03-09 | D | 59 | - | v1 |
Parameter descriptions lack format constraints. E.g., 'updatedAfter' says 'ISO 8601' but doesn't show example (2024-01-15T00:00:00Z) or enforce it via JSON Schema format keyword. LLMs frequently misformat dates.
Tools lack explicit error handling guidance. No documentation of what errors can occur (e.g., invalid document ID, API rate limit, authentication failure) or how the agent should recover.
readwise_topic_search uses regex matching but does not document what happens if regex is invalid, or if no documents match. Should clarify: returns empty list or error? How are partial matches handled?