A local-first workboard for assigning projects and tasks to AI agents. Agents claim tasks over an HTTP API and MCP server; operators steer work from a browser UI.
Critical gaps across all dimensions. Tool definitions exist as string names only in MCP_TOOL_NAMES array (server/mcpToolHandlers.js), with no visible schema registration, parameter definitions, or structured output documentation. Only one tool (update_task_status) has partial input schema visible in the provided code. Descriptions are present but generic (10-50 chars), lacking LLM-optimized guidance on WHEN to use each tool or what it returns. No error handling patterns, no parameter validation rules, no output schemas documented. The codebase shows tool handlers exist but the MCP protocol layer is not visible in provided source, tool definitions appear inferred rather than explicitly registered with proper schemas.
Acquire an agent slot for work assignment
Add a comment to a task
Claim a task for an agent to work on
Claim a specific stage of a task
Create a new task in a project
Operator decision on a pending approval request
Break down a task into subtasks
No input schemas visible for 24 of 25 tools. Only update_task_status has partial schema. Tool definitions appear as string names in array with no JSON Schema registration.
Descriptions are generic and under 50 characters for 24 tools. No guidance on WHEN to use each tool, prerequisites, or what it returns. LLMs cannot distinguish between similar tools (e.g., claim_task vs claim_task_stage).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 38 | 2026-07-28+ | v2 |
Delete a project from the workboard
Retrieve agent instructions and context for a specific agent
Retrieve details for a specific capability
Get the next task for an agent to work on
List agent capabilities available in the workboard
List pending operator approvals
List all projects in the workboard
List coordination messages for a task or agent
List tasks in a project with optional filtering
Post a message to task coordination channel
Release an agent slot when work is complete
Report that no eligible work is available for an agent
Request operator approval for a task or decision
Mark a task stage as resolved
Update agent presence status and heartbeat
Update project metadata and configuration
Update the status of a task with optional branch, PR URL, completion, and verification target
Update task touch count or interaction metrics
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., does list_projects return project_id, name, status?). Breaks tool composition.
No error handling patterns visible. Tools like delete_project and decide_operator_approval are destructive but provide no recovery guidance, confirmation steps, or actionable error messages.
Tool definitions inferred from string array only. No explicit MCP tool registration with schemas visible in provided source.