Skip to main content
Glama

mason_complete_init

Record assistant instruction setup locally in ignored .mason/local/project.json, with feature settings in shared .mason/config.json. Other tools work without this marker.

Instructions

Record assistant instruction setup locally in ignored .mason/local/project.json, with feature settings in shared .mason/config.json. Other tools work without this marker. Repeated calls preserve the original setup time and existing settings.

Input Schema

NameRequiredDescriptionDefault
dirYesAbsolute path to the project root directory

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.22.0
    • removedInput schema / properties / confluenceConfigured
      Removed value: -{
      -  "description": "Set the Confluence setup status; omit to preserve the existing value",
      -  "type": "boolean"
      -}
  2. Addedv0.17.0

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries full behavioral burden and does disclose meaningful traits: the write targets (an ignored local file plus a shared config file), and idempotency ('repeated calls preserve the original setup time and existing settings'). It omits overwrite semantics for the shared config and permissions, so it is strong but not complete.

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?

Three dense sentences with no filler, front-loaded with the primary action and file targets before the secondary idempotency note. Efficient and well-ordered.

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

Completeness4/5

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

For a one-parameter tool with no output schema and no annotations, the description covers the action, the files touched, the non-requirement for other tools, and idempotency. The one gap is the unexplained distinction from the sibling mason_init, but otherwise it supplies what an agent needs.

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?

Schema description coverage is 100% and the single 'dir' parameter is fully documented in the schema ('Absolute path to the project root directory'). The description adds no extra syntax or format detail beyond that, so the baseline 3 applies.

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 uses a specific verb ('Record assistant instruction setup') and names concrete artifacts (.mason/local/project.json and .mason/config.json), so the action is unambiguous. However, it never differentiates itself from the sibling 'mason_init', leaving the agent to guess the relationship between the two init-flavored tools.

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?

'Other tools work without this marker' gives a useful boundary condition (this call is not a prerequisite for other tools), which is more than nothing. But there is no explicit guidance on when to call this versus mason_init, nor what state must exist beforehand, so usage is only implied.

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