Provenance-first wiki of hackathon winners and submissions, with a demo-first planning harness (CLI, MCP server, static API, Astro site, Claude Code plugin).
CrafterWIKI defines 8 tools with complete JSON schemas and descriptions. All tools are READ_ONLY and well-scoped. Naming follows verb_noun convention (search_, similar_, event_, patterns, deal, get_, list_). Descriptions are substantive (100-200 chars typical), explaining WHAT and WHEN. However, parameter descriptions lack actionable constraints (no enums for facet IDs, no format specs for slugs). Output schemas are not documented, LLMs cannot predict response structure. Error handling is minimal (only get_record throws; others fail silently). No tool annotations (readOnlyHint, idempotentHint). Facet parameters reference external taxonomy (list_facets) but do not embed enum values, forcing discovery calls. Overall solid foundation but missing production-grade polish.
One random analyzed winner for inspiration, optionally filtered. Pass seed for a repeatable draw.
Recon brief for one hackathon: rubric mapped to judging lenses, judge profile, prizes, tracks, saturation (with base_rate_valid), known results and priors from the same event kind.
Full record for a project, hackathon or roster entry slug, including sources and basis-labelled claims.
Allowed taxonomy values with definitions (domains, mechanisms, judging_lenses, ai_patterns, placement_status, event_kinds, ...).
Every indexed hackathon with kind, format, dates, results status and roster coverage.
Frequencies of winning mechanisms, judging lenses, domains, AI patterns and build styles among confirmed winners, optionally stratified by event or event kind. Always report sample.analyzed_records.
Output schemas not documented. LLMs cannot predict response structure (fields, types, nesting). Forces trial-and-error parsing.
Facet parameters (domain, mechanism, lens, ai) accept 'comma-separated taxonomy ids' but do not embed enum values or link to list_facets. Requires discovery call before use.
Minimal error handling. Only get_record throws on missing slug; others fail silently or return empty results. No recovery guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Full-text and facet search across analyzed hackathon projects and roster entries, ranked by text match and placement.
Projects that share a situation with yours (domains, winning mechanisms, judging lenses, AI patterns, stack), even across different problems. Give "to" (a record slug) or at least one facet. Each result lists the shared facets.
No tool annotations (readOnlyHint, idempotentHint). All tools are read-only but this is not declared in schema, forcing LLMs to infer safety.
Parameter 'slug' in event_brief and get_record lacks format spec (e.g. 'lowercase alphanumeric with hyphens'). Invites invalid input.