Provider-neutral MCP server exposing Clade coding workflows through Claude or Codex
This MCP server has severe definition quality issues. Both tools lack proper parameter descriptions, have empty input schemas with no type information, and lack actionable error handling guidance. Tool 1 (clade_list_skills) is read-only and relatively safe but still poorly documented. Tool 2 (clade_<skill_name>) is dynamically generated with a generic description that does not specify which skills are available, what parameters each skill accepts, or what the expected output format is. The dynamic tool generation pattern is inferred rather than directly visible in the schema definitions provided. No tool descriptions explain WHEN to use the tool, WHAT it returns, or HOW to recover from failures. Parameter schemas are empty objects, no type, minimum, maximum, enum, or format constraints. This violates multiple critical patterns from the rubric.
Execute a Clade skill with the configured agent runtime. Dynamically generated tools for each installed skill (e.g., clade_commit, clade_test).
List all available Clade skills with descriptions and argument hints.
Empty input schemas with no type definitions. Both tools have input: {"type":"object","properties":{}}, no parameters, no constraints, no descriptions of what arguments the tools accept.
clade_<skill_name> is a generic placeholder name that does not convey which skill is being executed. The description says 'Dynamically generated tools for each installed skill (e.g. clade_commit, clade_test)' but the actual tool registration uses the placeholder name, making it impossible for LLMs to distinguish between different skills. This violates the verb_noun naming convention and makes it unclear what action each tool performs.
Tool descriptions lack actionable context. clade_list_skills says 'List all available Clade skills with descriptions and argument hints' but does not explain what data structure is returned, when to call this vs calling a skill directly, or how to use the hints to invoke skills. clade_<skill_name> says 'Execute a Clade skill' without specifying which skill, what parameters it accepts, what it returns, or how to recover if execution fails.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 33 | 2026-07-28+ | v2 |
No error handling guidance. Neither tool description explains what errors are possible, how to interpret them, or what the LLM should do next. A tool that executes arbitrary skills (clade_<skill_name>) could fail for hundreds of reasons, missing dependencies, permission errors, network timeouts, invalid arguments, but there is no recovery path documented.
Tool 2 (clade_<skill_name>) is a destructive/write tool (marked WRITE risk) but has no dry-run, confirmation step, or warning in the description. Executing an arbitrary Clade skill could modify code, run tests, commit changes, or trigger deployments. The description does not warn the LLM of potential side effects.
clade_list_skills returns 'descriptions and argument hints' but the tool description does not specify the response schema. What fields are in each skill object? Are hints free-text or structured? What data types do they use? LLMs cannot plan downstream calls without knowing what list_skills returns.