Improves how every agent (and Glama's schema scorer) sees the tools: every tool parameter now carries a description in the JSON schema.
What's new
- Per-parameter descriptions across all tools —
channel,scale,offset,coupling,level,slope,source,kind,points,confirm, and the rest now explain themselves viaAnnotated[..., Field(description=...)]. - Hardened
guarded()— resolves type hints withinclude_extras=Trueagainst each tool module, so theAnnotated/Fieldmetadata survivesfrom __future__ import annotationsand lands in the FastMCP schema. - Tightened tool docstrings (usage guidance) along the way.
Why
Fixes the Parameters 1/5 dings on Glama's tool-schema quality score, and — more importantly — makes the tools far easier for any LLM to call correctly.
No behavioral or API changes. ruff clean; 57 tests green; schema introspection confirms descriptions are present.
Full changelog: v1.0.2...v1.0.3