Skip to main content
Glama
SAS MCP Server

SAS MCP Server

Official
by sassoftware

Get Project Kpis

get_project_kpis
Read-onlyIdempotent

Retrieve a project's monitoring KPIs, KPI alert rules, alerts, and performance definitions, and check the champion or a specified model against alert rules.

Instructions

Read how a project's models are monitored: KPIs, KPI alert rules, alerts and performance definitions.

kpis are the latest values from the performance runs, each with a name (_AUC_, _MISC_, _F1_, _ASE_, ...; devIndex once per variable for drift), a value and a kpiCategory. alert_rules are the project's KPI alert rules (set_kpi_alert_rule), and alerts checks the champion — or model_id — against each: breached is Model Manager's own verdict on the latest KPI. performance_definitions are what run_performance_definition runs.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "project_id": "<project_id>"
    },
    "name": "get_project_kpis"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum KPIs (default 100).
model_idNoCheck this model against the rules instead of the champion.
project_idYesThe project.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.19.2

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover the safe-read profile (readOnlyHint, idempotentHint, destructiveHint=false), so the description only needs to add semantic context — which it does by explaining that alerts evaluate the champion or the supplied model_id against each rule and that 'breached' is Model Manager's own verdict. The main omission is behavior of the limit parameter and any pagination/truncation semantics.

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?

The purpose is front-loaded in the opening sentence, and the following sentences are a compact glossary mapping each returned section to its meaning. The backtick-heavy notation is dense but every clause carries information; there is no filler.

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?

With an output schema present the description need not detail return values, yet it usefully explains the semantic content of kpis, alert_rules, alerts, and performance_definitions. It is complete for calling the tool, with the minor gap being limit behavior and what happens when a project has no performance runs.

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?

Schema coverage is 100%, so all three parameters are already documented in the schema, including model_id's champion-override behavior. The description reinforces model_id's role in the alerts section but adds nothing about limit and no format details beyond structured fields, so the baseline of 3 applies.

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 first sentence gives a specific verb ('Read') and enumerates the exact resources returned: KPIs, KPI alert rules, alerts, and performance definitions. It is clearly distinguishable from mutating siblings like set_kpi_alert_rule or run_performance_definition, though it does not explicitly contrast itself with other read tools such as get_model.

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

Usage Guidelines3/5

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

Usage is implied through the enumeration of monitoring data and references to set_kpi_alert_rule and run_performance_definition, which hints at the read-side counterpart role. However, there is no explicit 'use this when' statement, no exclusion of alternatives, and no mention of prerequisites such as the project needing performance runs to exist.

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

Deploy Server

Other Tools