Verifiable engineering knowledge engine for documents, CAD models, humans, and AI agents
ragkernel defines 14 tools with mostly complete schemas and descriptions in Chinese. Strengths: all tools have descriptions (50-200 chars, appropriate length); input schemas are present with type definitions and enums for constrained parameters (e.g., _CAD_GEOM_ENUM whitelist in query_geometry, compare_cad_entities). Weaknesses: output schemas are NOT documented anywhere, LLMs cannot predict response structure for chaining; parameter descriptions lack actionable constraints (e.g., 'k' defaults to 8 but no min/max stated); no error handling guidance (tools return structured JSON but recovery paths undefined); tool names are verb-noun but some are overly specific (search_by_meta, search_engineering_objects) creating potential confusion; no tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite all being read-only. Composition is sound, tools chain well (search → read/get pattern) and accept stable entity_uid identifiers. Security: no secrets in parameters, but audit trail implementation unclear from code sample.
为某个工程主张收集证据:在库里检索相关文档片段,返回支持/反驳的引用。
并排比较多个实体的几何属性(同一属性白名单)。用于「哪个零件体积最大」等问题。
取某 CAD 文档的装配树(document→assembly→component_instance→原型 part 的嵌套结构,含各实例世界包围盒)。
取某个工程实体的完整信息(属性/几何/溯源)。entity_uid 取自 list_cad_entities / 检索结果,是稳定标识(非内部行号)。
查看某个 CAD 文档(STEP/STL)的总览:格式、单位块(源单位 vs 计算单位)、实体计数、总体包围盒、警告。返回结构化 JSON。非 CAD 文档会明确说明。
列出某 CAD 文档的工程实体(document/assembly/part/component_instance/mesh...)。可按 entity_type 过滤。返回每个实体的 entity_uid/type/name/parent。
Output schemas not documented. LLMs cannot predict response structure (fields, types, pagination) for downstream tool chaining. Tools return 'structured JSON' but exact schema is invisible.
Numeric parameters lack min/max constraints. 'k' (result count) defaults to 8 but no bounds stated; LLMs may pass 0, negative, or absurdly large values. 'limit' in list_cad_entities has no range.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
列出库里所有分类(及各分类的文档数)。
列出库里所有文档(含元数据:标题/大小/上传时间/分类)。
查询某实体的指定几何属性(仅限白名单:bounding_box/extents/volume/surface_area/centroid/center_of_mass/solid_count/face_count/edge_count/face_type_histogram/cylindrical_face_count/is_watertight/is_volume/component_count)。每个值带 value/unit/来源方法/表示/质量/有效性——据此区分精确 vs 近似。注意:无 hole_count(本 MVP 不做孔识别)。
通读某个文档的全部正文(分块返回,含引用标注)。
只在某个 meta 字段=某值的片里检索(如 field='fault_code' value='E-42')。
检索文档库(混合搜索:向量 + BM25 + rerank)。返回精简匹配(document_id/chunk_id/引用/摘要);细节再用 read_document 取。
在所有 CAD 文档的工程对象中混合检索(可按 entity_type 过滤)。返回精简匹配(document_id/entity_uid/chunk_id/引用/摘要);细节再用 get_cad_entity 取。
用 LLM 验证某个工程主张的真伪(基于已检索的证据)。返回验证结果与置信度。
No error handling guidance. Tools return errors but recovery paths undefined. E.g., if document_id not found, should LLM call list_documents? If entity_uid invalid, what are valid formats?
Tool annotations missing. All 14 tools are read-only but lack readOnlyHint annotation. Agents cannot distinguish safe tools from destructive ones without explicit hints.
Parameter descriptions lack actionable constraints. E.g., 'entity_uid' has minLength/maxLength in schema (1-1024) but description does not explain format, valid characters, or how to obtain one.