Model Context Protocol server for Kibi knowledge base management, providing tools to query, validate, and manage a project knowledge base with Prolog-backed RDF graph logic
Kibi MCP provides 10 knowledge-base tools with consistent naming (kb_* prefix), reasonable descriptions, and documented input schemas. However, several quality issues prevent a higher score: (1) Tool descriptions lack the specificity required for reliable LLM selection, they describe WHAT the tool does but omit WHEN to use it and often lack output structure documentation; (2) Parameter descriptions are minimal and lack constraint details (ranges, formats, valid values); (3) Output schemas are not documented in the provided source, forcing LLMs to infer response structure; (4) Error handling guidance is absent, tools provide no recovery hints or actionable error messages; (5) High-risk operations (delete_entity, delete_relationship) lack confirmation patterns despite being destructive. The tool names follow good verb_noun convention, but schema completeness and description depth fall below production baseline.
Validates knowledge base entities and relationships against schemas, optionally generating impact diagnostics and working tree diffs
Deletes an entity from the knowledge base by ID
Deletes a relationship between two entities
Retrieves a single entity from the knowledge base by ID, including its properties and relationships
Retrieves all relationships for a given entity, showing connections to other entities
Lists all entities in the knowledge base, optionally filtered by type, with pagination support
Searches the knowledge base for entities using intent-based semantic search across entity definitions, relationships, and metadata
Destructive operations (kb_delete_entity, kb_delete_relationship) lack confirmation/dry-run patterns. An LLM could accidentally delete critical entities without a reversibility safeguard.
Output schemas are not documented. LLMs cannot plan downstream calls or extract result fields reliably. kb_search, kb_get_entity, kb_list_entities, and others return unspecified structures.
Error handling guidance is absent. Tools provide no recovery hints, actionable messages, or error categorization (retryable vs user-fixable vs fatal). LLMs cannot self-correct on failures.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Creates or updates an entity in the knowledge base with validation against schema
Creates or updates a relationship between two entities in the knowledge base
Validates entity and relationship data against the knowledge base schema without persisting changes
Parameter descriptions lack specificity. kb_upsert_entity 'properties' param is described only as 'Additional entity properties' with no constraint on structure or valid keys. kb_list_entities 'limit' lacks bounds (min/max). kb_check 'sourceFiles' lacks format or expected values.
Tool descriptions do not explain WHEN to use each tool vs alternatives. kb_search and kb_get_entity both retrieve entities, the description should clarify: search is for discovery, get_entity is for known IDs. kb_upsert_entity vs kb_validate lack guidance on when to validate before upserting.
kb_list_entities pagination parameters (limit, offset) lack bounds and defaults. An LLM could request 0 or 1000000 entities, breaking API assumptions. No guidance on typical/safe values.
kb_validate description is ambiguous: 'Validates entity and relationship data against the knowledge base schema without persisting changes.' It accepts both entity AND relationship objects, but their structure is unspecified and both are optional. Should clarify: validate one or both? What is the schema format?