Skip to main content
Glama

List block types

list_blocks

List standard Scratch block opcodes, filterable by core category or extension, to discover valid blocks for your .sb3 project.

Instructions

The catalog of standard Scratch block opcodes you can use in a target's blocks map — each with its category, shape (hat / stack / c-block / cap / reporter / boolean) and the names of its inputs and fields. Use this to discover opcodes, then get_block_schema for how to fill one in. With no category, lists core blocks; pass a core category (motion, looks, sound, event, control, sensing, operator, data, procedures) or a built-in extension id (pen, music, videoSensing, text2speech, translate, makeymakey, microbit, ev3, boost, wedo2, gdxfor) to filter.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
categoryNoA core category or a built-in extension id.
Behavior4/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It explains what the catalog contains, how filtering works, and what happens when category is omitted. It does not describe the exact output shape or any error behavior, but for a read-only listing tool the described behavior is substantially transparent.

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 dense sentences with no filler. The first sentence states what the tool returns, the second gives the usage flow, and the third explains the parameter behavior. Every clause adds actionable information.

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 one-optional-parameter catalog tool with no annotations and no output schema, the description is remarkably complete. It covers purpose, contents, valid parameter values, default behavior, and the relationship to get_block_schema. Nothing an agent needs to decide whether and how to call this tool is missing.

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

Parameters5/5

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

The schema only says category is 'A core category or a built-in extension id.' The description adds the crucial default behavior, lists every valid core category and extension ID, and clarifies that passing category filters the catalog. Since there are no enums in the schema, this enrichment is essential for correct invocation.

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 clearly identifies what the tool returns: a catalog of standard Scratch block opcodes usable in a target's blocks map, including category, shape, and input/field names. It also distinguishes itself from get_block_schema by framing itself as the discovery step and get_block_schema as the fill-in step.

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 explicit usage context: use it to discover opcodes, then use get_block_schema to learn how to fill one in. It also states the default behavior with no category and enumerates valid core categories and extension IDs for filtering. It stops short of explicitly saying when not to use this tool, though the alternative is clearly named.

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/AstroBlocksMod/ScratchMCP'

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