Skip to main content
Glama
us-all
by us-all

dbt-sla-status

Compare latest dbt run test pass rate and source freshness pass rate against configured SLA thresholds, returning per-axis pass percentage and targets with caveats for missing data.

Instructions

Compare latest dbt run test pass rate and source freshness pass rate against DBT_SLA_CONFIG_PATH thresholds (dbt_sla.test_pass_pct / freshness_pass_pct). Returns per-axis passPct/target/meeting plus caveats when SLA fields or artifacts are missing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
extractFieldsNoComma-separated dotted paths to project from response (e.g. 'id,name,owner.name,columns.*.name'). Use `*` as wildcard for arrays/objects. Wrap field names with dots in backticks. Reduces response tokens dramatically on large entities.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.3
  2. Removedv1.0.2
  3. Changed1 schema field changedv1.0.0
    • addedInput schema / properties / extractFields
      Added value: +{
      +  "description": "Comma-separated dotted paths to project from response (e.g. 'id,name,owner.name,columns.*.name'). Use `*` as wildcard for arrays/objects. Wrap field names with dots in backticks. Reduces response tokens dramatically on large entities.",
      +  "type": "string"
      +}
  4. Addedv0.4.2

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It discloses return of per-axis values and caveats for missing fields/artifacts, which is useful. However, it does not mention whether the tool is read-only or requires specific permissions, lacking full behavioral transparency.

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

Conciseness5/5

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

Single sentence that conveys purpose, inputs, outputs, and edge cases. Efficient and well-structured.

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

Completeness4/5

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

For a simple tool with one parameter and no output schema, the description provides sufficient context: it explains the comparison, thresholds, and return fields. Minor gap: does not describe the 'caveats' in detail.

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

Parameters3/5

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

Only one parameter (extractFields) with 100% schema description coverage. The description adds no extra semantics beyond the schema, so baseline 3 is appropriate.

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

Purpose4/5

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

The description clearly states it compares two pass rates against thresholds from DBT_SLA_CONFIG_PATH and lists specific return fields. It distinguishes from siblings like dbt-coverage and freshness-status by its specific focus on SLA thresholds, but does not explicitly state the use case (e.g., 'check if SLAs are met').

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus siblings like dbt-coverage or freshness-status. The description does not provide context about when to prefer this tool or alternatives.

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