Skip to main content
Glama

script_read

Read Global, object, or template Lua scripts with SHA-256 conflict detection; page large source or write to an absolute output path for local editing without overwriting existing files.

Instructions

Read a Global, object or template Lua script with SHA-256 for conflict detection. Page large source or write to an absolute output_path for local editing. Existing files are never overwritten.

Input Schema

NameRequiredDescriptionDefault
objectNoStable object GUID (preferred), or current runtime id.
offsetNo
targetNoglobal
table_idNoOmit to use the active connected table.
output_pathNo
template_idNo
max_charactersNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A3.7/5.0
Behavior4/5

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

This is valuable: readOnlyHint=false would otherwise puzzle an agent for a tool named script_read, and the description explains why — it can write source to output_path — plus the reassurance 'Existing files are never overwritten', which explains the non-destructive hint. It also discloses the SHA-256 conflict-detection behavior, adding context the annotations do not carry. It omits auth/connection requirements and truncation behavior, keeping it below a 5.

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 short sentences, front-loaded with the core action, then the two operational options, then the safety guarantee. No filler or restatement of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 7-parameter tool with no output schema and no required fields, the definition leaves important gaps: which id parameter pairs with which target value, whether a connected table is mandatory, and what the returned payload contains (source, hash, truncation indicator). The behavioral side-effects are well covered, but structural completeness is not.

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?

With only 29% schema coverage across 7 parameters, the description does some compensating work: it maps the three 'target' values, explains offset/max_characters indirectly via 'page large source', and clarifies the semantics of output_path. But object, template_id, table_id, and the 16k/64k character limits are never explained, leaving several parameters documented nowhere meaningful.

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?

States a specific verb+resource ('Read a Global, object or template Lua script') and the three retrieval targets, which makes it easy to distinguish from script_write. It stops short of explicitly naming script_write as the mutation counterpart, but the read semantics are unambiguous.

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?

'Page large source or write to an absolute output_path for local editing' gives two concrete usage modes, which is real guidance. However, it never states when to prefer this tool over siblings (e.g., script_write for edits, object_read for non-script object data) or any prerequisites such as needing an active table connection.

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