A read-only MCP server exposing the scrubjay archive (transcripts, plans, cross-machine memory, notes) via MCP. Provides fast ripgrep-based filtering and semantic ranking for session recall without embeddings.
Five read-only tools with complete input schemas and descriptions. Naming is clear and verb-based (sjbrowse, sjrecall, sjread, sjtable, sjfind). Descriptions are detailed (100-200 chars) and explain purpose well. All parameters have types and descriptions. However, output schemas are not documented in the source, only input schemas are visible. No error handling guidance, no recovery patterns, and no tool annotations (readOnlyHint missing despite all being read-only). Parameter descriptions lack format constraints (e.g., date format stated but not enforced via pattern). No pagination metadata (total count, next_cursor) documented for list-returning tools.
Browse the archive: list transcripts, plans, memories, and notes with filtering by host, project, date range, and artifact type. Returns paginated results with metadata (date, topic, session ID, file size, turn count).
Find a specific session by session ID (sid), topic substring, or cwd. Returns matching session records with full metadata and paths to their transcripts.
Read the full content of a specific artifact (transcript, plan, memory, or note) by path. Returns the complete file content as markdown or text.
Search the archive using ripgrep for fast candidate filtering, then rank results semantically. Searches across transcripts, plans, memories, and notes. Returns matching snippets with context (artifact metadata, line numbers, surrounding text).
Query the session log catalogue (logs/<host>.log) to find sessions by metadata: model, harness, date range, turn count, file size. Returns structured session records with full metadata (cwd, model, turns, size, etc.).
Output schemas not documented. Tools return structured data but LLMs cannot see field names, types, or which fields are present. Forces LLMs to guess at response structure.
No tool annotations. All five tools are read-only but lack readOnlyHint annotation. Agents cannot distinguish safe tools from destructive ones without explicit hints.
Pagination metadata missing. sjbrowse and sjtable accept limit/offset but do not document total count or next_cursor in response. Agents cannot determine if more results exist.
No error handling guidance. Tools may fail (missing files, invalid dates, no results) but descriptions do not explain what errors are possible or how to recover.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Parameter format constraints not enforced. Date parameters (after, before) state YYYY-MM-DD format in description but lack JSON Schema pattern validation. Agents may pass invalid dates.