MCP server for interacting with Gibwork tasks API and creating tasks on Solana blockchain
Three tools with basic schemas and descriptions, but significant gaps in parameter documentation, output schema clarity, and error handling. Tool names follow verb_noun convention (get_, create_) which is good. However, descriptions are minimal (10-50 chars), parameter descriptions are missing entirely for most inputs, and output schemas are not documented. The create-task tool accepts a generic 'token' object with no validation or description of expected structure. No error handling guidance, no pagination documentation for get-tasks despite accepting page/limit params. Schemas are present but incomplete, many parameters lack descriptions required by the rubric.
creates a new gibwork task with the provided details
fetches and gives gibwork tasks according to the given parameters
fetches and gives gibwork tasks with the given id
Parameter descriptions missing or incomplete. 'id', 'page', 'limit', 'pageAll', 'search', 'orderBy', 'tags' in get-tasks lack descriptions explaining their purpose, format, or constraints. LLMs cannot infer parameter meaning from names alone.
Output schemas not documented. All three tools return text content but do not specify the structure of the returned data (fields, types, pagination info). LLMs cannot plan downstream calls or extract data reliably.
Tool descriptions too brief (10-50 chars). 'fetches and gives gibwork tasks with the given id' lacks context on when to use this vs get-tasks, what data is returned, or prerequisites. Descriptions should be 50-200 chars with WHAT, WHEN, and WHAT-RETURNS guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2026-07-28+ | v2 |
create-task accepts 'token' as a generic passthrough object with no schema, description, or validation. This is a security and usability risk, LLMs cannot know what structure to pass, and the tool cannot validate input.
No error handling guidance. Errors are thrown but not categorized as retryable, user-fixable, or fatal. LLMs receive raw errors with no recovery path (e.g., 'Failed to fetch task with id X' gives no hint whether to retry, ask user, or abort).