Skip to main content
Glama

snowflake_read_stream_changes

Query unconsumed CDC changes from a Snowflake stream, with an optional row limit.

Instructions

Query unconsumed CDC changes recorded in a stream (default 10 rows).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
stream_nameYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior2/5

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

No annotations are provided, so the description carries the full burden of disclosing behavioral traits. The description calls the operation 'Query', which implies read-only, but in Snowflake, reading stream changes advances the stream offset and consumes the records. The description mentions 'unconsumed' but does not explicitly warn that calling this tool will mark those changes as consumed. This is a critical side effect that an agent must know to avoid accidentally losing data. The description also does not mention any other side effects or requirements.

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 a single, well-structured sentence that front-loads the core action and includes the default limit. There is no redundancy or filler; every word contributes to meaning. It is appropriately concise for a tool with only two parameters and a clear purpose.

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

Completeness2/5

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

The tool reads CDC changes, which involves nuanced semantics around consumption and offset advancement, yet the description does not explain these. It also does not mention what the output contains (though an output schema exists), nor any conditions like stream availability or required privileges. Given the complexity of stream reading and the lack of annotations, this description is insufficient for an agent to reliably invoke the tool without making assumptions.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for the lack of documentation on parameters. It addresses `limit` by stating the default of 10 rows, but it does not elaborate on `stream_name`—for example, whether a fully qualified name is required, what format is expected, or any constraints. The schema only provides types and titles, so the description adds only marginal value for one of the two parameters.

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 states a specific verb (Query), a specific resource (unconsumed CDC changes recorded in a stream), and mentions the default row limit. This clearly distinguishes it from sibling tools like snowflake_list_streams (which lists streams) and snowflake_describe_stream (which describes stream metadata). It is unambiguous about its function, though it does not explicitly name alternatives.

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?

The description implies the intended use case (querying CDC changes) but provides no explicit guidance on when to prefer this tool over others, nor any exclusions or prerequisites (e.g., that the stream must exist, or that querying consumes the changes). The 'unconsumed' phrasing hints at the consumption semantics but does not state them clearly. This leaves selection and invocation partially to inference.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/christianclaudio/mcp-server-snowflake'

If you have feedback or need assistance with the MCP directory API, please join our Discord server