Skip to main content
Glama

sumo_qa_ingest_knowledge_pack

Add or replace team QA standards, principles, and rules from native files, validating content and writing a normalized pack to project or global scope.

Instructions

Adds or replaces team QA knowledge/standards/rules from a local native file.

Accepts a path to a native sumo-qa file or a directory of them: principles.md, techniques.md, classifications.md, approaches.md, a standards-pack *.yaml, or change_rules.yaml. Validates the content and writes a normalized copy into a user-writable pack. The scope argument selects where it lands: 'project' (/.sumo-qa, the current repo only) or 'global' (the user data dir, every repo) — the right scope is a user choice worth confirming. Loader precedence is env var > project > global > bundled > repo root.

A PDF / PPTX / URL or any other non-native source is not parsed here; it returns an unsupported_source result that routes through the sumo-qa-suggesting-external-skill flow to convert the source to markdown, which is then re-ingested with an explicit content_type.

Common natural-language phrasings that map to this tool: "add this to the knowledge base", "replace our principles", "load our team standards pack", "use these change rules", "ingest this QA pack".

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
scopeNoproject
sourceYes
content_typeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.42.0

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare the operation is a non-idempotent write (readOnlyHint=false, idempotentHint=false), and the description materially adds to that: it explains normalization, writes into a user-writable pack, discloses loader precedence (env var > project > global > bundled > repo root), and describes the unsupported_source failure mode. These are non-obvious behaviors beyond what annotations convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is front-loaded with the core action and well-organized into purpose, scope, precedence, and routing sections. It runs long and the example-phrasing list is slightly verbose, but nearly every sentence adds operational value for a mutating ingest tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-parameter, no-output-schema mutation tool, the description covers purpose, accepted inputs, scope semantics, precedence, failure handling, and caller phrasing. There is no meaningful gap an agent would need to fill before invoking it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden and does so well. It explains scope's two values with concrete destinations ('project' → <cwd>/.sumo-qa, 'global' → user data dir), describes source as a path to a native file or directory, and maps content_type to the re-ingestion path for converted external sources.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a precise verb and resource: 'Adds or replaces team QA knowledge/standards/rules from a local native file.' It goes further by enumerating exactly which file types are accepted (principles.md, standards-pack *.yaml, change_rules.yaml), which distinguishes it decisively from the read-oriented siblings like sumo_qa_load_principles and sumo_qa_load_standards.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit when-to-use guidance with example phrasings ('add this to the knowledge base', 'replace our principles'), and it names an exclusion: PDF/PPTX/URL are not parsed here and must route through sumo_qa_suggesting_external_skill. It also flags the scope decision as a user choice worth confirming, which is actionable routing advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.