Skip to main content
Glama
gjlmotea

BlockHand

by gjlmotea

分析建築的鏡像對稱程度

mc_analyze_symmetry
DestructiveIdempotent

Check if a build region is symmetrical along the X or Z axis, and identify exactly which blocks break the symmetry for grading student work. It mirrors the region, compares blocks, and returns a symmetry score.

Instructions

檢查一塊區域是否左右(或前後)對稱,並在不對稱時指出哪幾塊不對稱。批改學生作品用這個:分數是對稱格子的比例,不是憑感覺。原理:testforblocks 只會平移比對不會鏡像,所以先用 structure save/load 的 mirror 參數做出鏡像副本,再跟原區比對。⚠️ 這會暫時寫入 scratch 指定的暫存區:流程一定先備份該區內容,比對完立刻還原;備份失敗就中止且不動世界。scratch 不可與分析區重疊,否則鏡像副本會蓋掉原始建築。區域受 structure 指令上限限制(64×384×64)。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toYes分析區的對角
fromYes分析區的一角
mirrorNo鏡射軸;x 檢查左右對稱、z 檢查前後對稱、xz 兩軸都要x
scratchYes暫存區最小角;會被覆蓋後還原,不可與分析區重疊
cellsPerAxisNo整體不對稱時的細分粒度;每軸 n 段共 n³ 格,每格一條指令

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
scoreYes0–100,對稱格子的比例
mirrorYes
symmetricYes
totalCellsYes
matchedCellsYes
commandsIssuedYes
asymmetricCellsYes
scratchRestoredYesfalse 代表暫存區沒還原成功,世界被留下改動
Behavior5/5

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

The description goes well beyond the annotations by disclosing that the tool temporarily writes to the scratch region, backs it up before writing, restores it immediately after comparison, and aborts without modifying the world if backup fails. It also warns that overlapping scratch with the analysis region can destroy the original build and explains the underlying mirror-copy algorithm. This is excellent behavioral disclosure for a tool marked destructiveHint=true.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but efficient: it states purpose, method, safety behavior, and constraints in a few sentences. It is front-loaded with the primary function and then adds warnings. Slightly longer than strictly necessary, but every sentence carries useful information about behavior or limitations.

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?

The description covers the tool's purpose, scoring semantics, algorithm, side effects, failure mode, safety restoration, overlap prohibition, and size limits. It also explains how asymmetric results are reported at a per-cell granularity. Combined with the output schema and annotations, nothing essential is missing for an agent to invoke this tool correctly.

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 schema already documents all five parameters. The description adds practical semantic value by explaining the roles of the symmetry axes (x/z/xz), the meaning of cellsPerAxis as per-axis subdivisions, and the critical constraint that scratch cannot overlap the analysis region. This extra context helps the agent choose parameter values correctly.

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 ('檢查'), resource (a region/building), and the core function: detecting whether a region is mirror-symmetric and identifying which sub-blocks are not. It also distinguishes the output as a quantitative score (proportion of symmetric cells) rather than a heuristic judgment, clearly differentiating it from a generic region comparison like mc_compare_regions.

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 an explicit use case: grading student builds with an objective symmetry score. It also provides important operational conditions, such as scratch must not overlap the analysis region and region size limits. It does not explicitly name alternative tools or state when not to use it, but the use-case guidance is concrete enough for an agent to select it appropriately.

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/gjlmotea/minecraft-mcp'

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