Skip to main content
Glama
SAS MCP Server

SAS MCP Server

Official
by sassoftware

Score Table

score_table
Destructive

Scores an entire CAS table using a registered model without publishing it first, creating a new scored table and returning a background execution for status checks.

Instructions

Score a whole CAS table with a registered model; the result is a new CAS table.

Runs the model straight from the Model Repository, so it need not be published first. Scoring runs in the background: this returns the score execution at once, and get_score_execution reports when it has finished and where the scored table is. The score definition stays in the model's project, as one made in Model Manager would.

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": {
      "model_id": "<model_id>",
      "caslib_name": "<caslib_name>",
      "table_name": "<table_name>"
    },
    "name": "score_table"
  }
}

Input Schema

NameRequiredDescriptionDefault
model_idYesThe model's ID.
table_nameYesA CAS table holding the model's input variables.
caslib_nameYesCaslib of the input table.
output_tableNoName of the scored table (default: ``<table_name>_SCORED``).
output_caslibNoCaslib for the scored table (default: the input's).

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.19.2

TDQS

A3.9/5.0
Behavior4/5

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

Beyond the annotations, the description discloses that execution is asynchronous, that the call returns immediately with a score execution object, and that the score definition remains in the model's project. That is substantial context the annotations do not carry. It does not explain the destructiveHint=true implication, e.g. whether an existing output table is overwritten.

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?

Four short sentences, front-loaded with what is scored and what comes back, then the async follow-up path. No filler, though the final sentence about the score definition staying in the project is slightly tangential.

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 and annotations present, the description covers the async lifecycle, the repository-vs-published distinction, and the default output naming. The main gap is the destructive/overwrite behavior implied by destructiveHint=true and a defaultable output table name.

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 description coverage is 100%, so all five parameters including the output_table and output_caslib defaults are already documented. The description adds only the framing that a new table is produced, not any format or naming rules beyond the schema. Baseline 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 description opens with a specific verb and resource ('Score a whole CAS table with a registered model') and states the outcome ('the result is a new CAS table'). The 'whole table' scope implicitly separates it from the sibling score_data, but no sibling is named explicitly.

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

Usage Guidelines4/5

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

It gives a clear selection condition: the model is used straight from the Model Repository and 'need not be published first', which tells an agent when this route is preferable to a published-model path. It also directs the agent to get_score_execution for completion, but offers no explicit when-not or alternative tool naming.

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