Skip to main content
Glama
SAS MCP Server

SAS MCP Server

Official
by sassoftware

Create Folder

create_folder
Idempotent

Create a SAS Content folder at an absolute, My Folder, or default-folder path, automatically building any missing parent folders; existing folders are returned unchanged.

Instructions

Create a SAS Content folder, including any missing folders above it.

Where it is created:

  • a path from the top, /Public/Content/Risk, is created there;

  • My Folder/Risk is created in the user's own My Folder;

  • a relative path, Risk/2026, is created under the deployment's default folder (MCP_DEFAULT_FOLDER). Without that setting a relative path is refused: ask the user for the full path.

A folder that already exists is returned unchanged (status exists), so calling twice is safe. The user's SAS Viya permissions decide where they may create folders; top-level folders such as Public are made by administrators. For SAS Content only: model projects live in model repositories (see create_model_project).

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": {
      "path": "<path>"
    },
    "name": "create_folder"
  }
}

Input Schema

NameRequiredDescriptionDefault
pathYesThe folder to create, as described above.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.19.2

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false, and the description reinforces this with the pre-existing-folder behavior (returns status 'exists', safe to call twice). It adds behavior the annotations do not carry: permission constraints, administrator ownership of top-level folders, and refusal of relative paths without a default setting. Return-field explanation is appropriately light given an output schema exists.

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?

Front-loads the core action in one sentence, then uses a short bulleted list to separate the three path cases. Every sentence earns its place, including the final disambiguation about model projects living in repositories.

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?

Covers the one parameter's meaning, idempotency, permission gating, failure mode, and the sibling it should not be confused with; an output schema exists so return values need not be detailed. Minor gap: it does not say what happens on invalid path syntax versus missing permission.

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

Parameters4/5

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

Schema coverage is 100%, but the schema's own parameter text is circular ("as described above"), so the description is what actually defines the path semantics: absolute, My Folder-relative, and deployment-default-relative forms plus the rejection case. That adds real meaning beyond the schema, though it does not enumerate edge cases such as trailing slashes or invalid characters.

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 verb and resource ("Create a SAS Content folder") plus the recursive behavior of creating missing parent folders. It also carves out the model-project case, pointing to create_model_project, so an agent can distinguish it from a similarly named sibling.

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?

Explicitly tells the agent what each path form does (absolute /Public/..., 'My Folder/...', relative under MCP_DEFAULT_FOLDER), states the failure condition when no default is set and to ask the user for a full path, and notes that permissions determine placement. That is concrete when-to-use and when-to-ask guidance rather than an inference.

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