Structural containment and pre-flight gating for AI coding agents. A knowledge graph engine that analyzes codebases, extracts semantic relationships, and exposes them via MCP tools for agent integration.
Graphenium has well-structured tool definitions with complete input schemas and descriptions for all 13 tools. Naming follows verb_noun conventions (traverse, query, get_node, list_nodes, etc.). However, descriptions are terse (10-50 chars for most tools), lacking context on WHEN to use each tool or dependencies between them. Output schemas are not documented, LLMs cannot predict what fields to expect. Error handling is minimal; no recovery guidance or actionable error messages visible. Security considerations (permission gates, audit trails) are absent from tool definitions. The schema sanitization code (tool_schema.rs) shows attention to API compatibility but does not address LLM-facing output documentation.
Add a new edge to the graph representing a relationship between two nodes
List all detected communities in the graph with summary statistics
Get detailed information about a specific community including member nodes
Retrieve edges connected to a node, with optional filtering by relation type and direction
Retrieve metadata about the knowledge graph including project info, extraction stats, and schema version
Retrieve detailed information about a specific node by ID or label
Check if the loaded graph is stale relative to the source code and return a warning message if so
Output schemas not documented. LLMs cannot predict response structure, forcing them to guess what fields are available for downstream tool calls or data extraction.
Descriptions are terse (10-50 chars). Most lack context on WHEN to use the tool, dependencies, or prerequisites. E.g., 'Retrieve detailed information about a specific node by ID or label' does not explain when to call get_node vs traverse vs query.
No error handling guidance. Tools do not document what errors can occur, whether they are retryable, or what the LLM should do next. E.g., reload_graph could fail if the file path is invalid, but no recovery hint is provided.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
List all nodes in the graph with optional filtering by type, path, or generated code status
Query the knowledge graph with keywords using lexical, structural, or hybrid search modes
Reload the knowledge graph from disk, optionally from a new file path
Remove an edge from the graph
Traverse the knowledge graph starting from a source node, following edges with optional filtering and budget constraints
Validate a proposed plan against repository architecture policies and pre-flight gates
No permission gates or security declarations. Tools like add_edge, remove_edge, and reload_graph modify state but do not declare required permissions or audit requirements.
Parameter descriptions lack format/constraint details. E.g., 'relation' parameter in traverse accepts strings but does not document valid values (calls, imports, depends_on, etc.). LLMs will hallucinate invalid relation types.