8 autonomous development cycles by Edgecraft Protocol — monorepo containing multiple specialized MCP servers for benchmarking, code generation, knowledge graphs, idea critique, evolutionary operations, and agent tracing
Nine tools with complete input schemas and descriptions, but significant quality gaps. Naming is verb-based (generate_*, run_*, create_*, query_*, compute_*) but descriptions are terse (avg 80 chars, well below 194-char baseline). Parameters lack type specificity, many accept generic 'object' or 'string' without constraints, enums, or format guidance. No output schemas documented. No error handling guidance. No parameter validation rules stated. Tools like generate_code and generate_schema accept free-form 'language' and 'format' strings without enums, inviting hallucinated values. No security considerations visible (no permission gates, audit trails, or secret injection patterns). Composition is reasonable (each tool has one responsibility), but chaining is weak, no IDs returned to enable downstream calls.
Compare two benchmark result dicts and determine winner by metrics
Compute centrality metrics (degree or closeness) for all nodes
Create a knowledge graph from nodes and edges, returning stats and adjacency list
Generate a code skeleton from a specification in multiple languages (Python, JavaScript, TypeScript, Go, Rust)
Generate edge cases for integer, string, list, or float input types
Generate a schema from a data description in multiple formats (JSON Schema, Pydantic, TypeScript)
Generate test stubs from code in multiple testing frameworks (pytest, jest, unittest, go test)
No output schemas documented. LLMs cannot plan downstream calls or extract required fields. All 9 tools lack return type documentation.
Free-form string parameters without enums or constraints. generate_code accepts 'language' as bare string (python, javascript, typescript, go, rust, or other), 'or other' invites hallucinated values. generate_schema accepts 'format' without enum. No validation rules stated.
Descriptions are terse (avg 80 chars vs 194-char baseline). Missing WHEN to use, prerequisites, and dependencies. E.g., 'Generate edge cases for integer, string, list, or float input types' does not explain when to call it or what the output structure is.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Query a graph: 'neighbors:id', 'path:src:dst', or 'degree:id'
Simulate a benchmark run against test cases with pass/fail evaluation
No error handling guidance. Tools do not document what errors can occur, whether they are retryable, or what the LLM should do next. No recovery paths provided.
Parameter descriptions lack format/range/constraint details. 'constraints' in generate_edge_cases is described as 'Optional constraints dict (e.g. {min: 0, max: 100})', example values in descriptions invite literal reuse. Should use JSON Schema minProperties, additionalProperties, or enum constraints instead.