Skip to main content
Glama
PyModel
by PyModel

set_model

Set the default model and reasoning tier for all tools on this machine, saving the choice so no tool asks again. Accepts one user selection or falls back to the default.

Instructions

Choose the model and reasoning tier every tool uses from now on, on this machine. Ask the user first — "proceed with the default, or change model or effort?" — then call this once: with no arguments to accept the default, or with what they chose. The choice is saved and no tool asks again. An explicit model argument on a call still wins for that call. Set AGY_ASK_MODEL=false to skip the gate and route on the built-in chains.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modelNoThe model the user chose: a display name ("Gemini 3.8 Flash (High)"), an id ("gemini-3.8-flash-high"), or a family selector ("gemini-flash@latest-high"). Omit to accept the default (AGY_DEFAULT_MODEL, Gemini Flash High out of the box).
effortNoThe tier the user chose. Omit to take the tier the model name carries.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.0

TDQS

A4.5/5.0
Behavior4/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, and it does disclose real behavior: the choice is persisted ('saved and no tool asks again'), it is machine-global, and per-call overrides take precedence. It also documents the environment escape hatch (AGY_ASK_MODEL=false) and the routing fallback. It stops short of saying how to change or clear the choice later, so 4 rather than 5.

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?

Front-loaded with the what and scope, then the required user-prompt flow, then the persistence/override rules. Every sentence carries information, though the last two sentences pack several related behaviors (persistence, per-call override, env bypass) tightly together.

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?

With 0 required params, 100% schema coverage, no output schema, and no annotations, the description supplies the missing behavioral context: prompting the user, persistence, override precedence, and the bypass variable. What it omits is downstream lifecycle detail (re-invoking to change or reset the choice, and failure behavior), which is minor for this tool.

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 description coverage is 100%, which sets a baseline of 3, but the description adds meaning beyond it: omitting arguments accepts the default (AGY_DEFAULT_MODEL / Gemini Flash High), and it clarifies how this stored choice interacts with per-call `model` arguments. It does not add format detail for the family-selector syntax, which the schema already covers.

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?

Specific verb+resource+scope: 'Choose the model and reasoning tier every tool uses from now on, on this machine.' An agent immediately knows this sets a machine-wide, persistent configuration rather than invoking a model for one call. It is clearly separable from the analysis-oriented siblings (analyze_files, deep_search, delegate).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit when-to-use with sequencing: ask the user first ('proceed with the default, or change model or effort?'), then call this once. It names the invocation variants (no args = accept default; args = the chosen values) and the condition under which an alternative applies (an explicit `model` argument on a call wins for that call).

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