Skip to main content
Glama

folders.create

Create folders under a project root or the knowledge base, supporting nested paths. Existing folders are allowed, and invalid names or path segments are rejected without altering anything.

Instructions

Create a folder under a project root or the KB. Idempotent — creating an existing folder succeeds. Nested paths like notes/inbox create intermediates. REJECTS: empty names, null bytes, leading path separators, and any segment equal to .. (the call returns isError, no folder is touched). Side effect: a directory is mkdir'd on disk; no DB rows are written until a file lands inside. No external auth or rate limits. Returns {path, base_path}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesFolder name (relative; supports nested paths via '/')
project_idNoProject ID. Pass null or omit to create the folder under the KB.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv4.7.2

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so thoroughly: it discloses idempotency, rejection cases (empty names, null bytes, leading separators, '..'), side effects (mkdir on disk, no DB rows until a file lands), and absence of external auth/rate limits. This is exemplary behavioral disclosure beyond the schema.

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 description is dense but well-structured: it front-loads the core action, then idempotency, then rejection rules, then side effects, then auth/rate limits, then return value. Every sentence earns its place, and the structure is logical for an agent scanning for constraints.

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 2-parameter tool with no output schema, the description is complete: it covers behavior, constraints, side effects, and return shape. An agent has everything needed to call it correctly and predict outcomes.

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%, so the baseline is 3. The description adds meaning by explaining that 'name' supports nested paths and that 'project_id' can be null/omitted for KB, which reinforces the schema. It doesn't add new syntax details beyond the schema, but the schema already covers the parameters well.

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?

The description states a specific verb ('Create') and resource ('a folder under a project root or the KB'), and distinguishes it from siblings like folders.delete and files.create by clarifying it creates folders, not files. It also specifies the two locations (project root or KB), which is precise.

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?

The description gives clear context on when to use it: to create a folder under a project root or KB, with idempotent behavior and nested path support. It doesn't explicitly name alternatives or exclusions, but the context is strong enough for an agent to select it over siblings like files.create or folders.delete.

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