Skip to main content
Glama
sassoftware

SAS MCP Server

Official
by sassoftware

Reset Compute Session

reset_compute_session
DestructiveIdempotent

Clears the cached SAS compute session for a compute context, discarding WORK tables, macro variables, and librefs. The next compute call starts a fresh session automatically.

Instructions

Reset (delete) the cached compute session for a compute context.

The server keeps one reusable SAS compute session per user and compute context so repeat calls skip the slow session spin-up; SAS state (WORK tables, macro variables, assigned librefs) therefore persists across execute_sas_code and list_compute_* calls. Call this to discard that state — the next compute tool call transparently creates a fresh session.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
compute_context_nameNoCompute context whose session to reset. Defaults to the server's configured execution context (the one ``execute_sas_code`` uses).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.2.0

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare destructiveHint and idempotentHint, and the description adds concrete detail on what is destroyed (cached session, SAS state) and what happens after (next compute call creates a fresh session transparently). This goes beyond the annotations and clarifies the non-obvious session-reuse behavior.

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?

Three concise sentences: the one-line action, the rationale, and the consequence. Every sentence contributes, and the core action is front-loaded.

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 simple tool with one optional parameter, full schema coverage, and an output schema, the description explains the session lifecycle, why reset may be needed, and what happens afterward. Nothing critical for calling it correctly is missing.

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%; the schema already fully describes compute_context_name, including its default behavior. The description adds no parameter-specific info, so the baseline 3 applies.

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?

States a specific action ('Reset (delete)') on a specific resource ('cached compute session for a compute context'). It clearly distinguishes itself from sibling tools by explaining it discards state rather than executing code or listing artifacts.

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?

Describes when to call it: when you want to discard persisted SAS state (WORK tables, macro variables, librefs) that otherwise carries across execute_sas_code and list_compute_* calls. It doesn't name alternatives (there are none for resetting), but the context is clear enough; a 5 would require an explicit exclusions sentence.

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