v1.0.0 add pagination BREAKING CHANGE
[1.0.0] - 2026-08-01
Added
max_results(default 25) andoffset(default 0) pagination parameters
onrules_search,rules_examples,word_list, andword_match--
the four tools whose unpaginated result can grow large enough (over a
thousand items, forrules_examples; the full multi-thousand-entry
vocabulary, forword_list/word_match) that a full page is otherwise
ambiguous.- New
PagedResultbase model (src/biz/dfch/asdste100mcp/models/paged_result.py)
carrying the sharedtotal,offset,max_results, andtruncated
pagination fields, plus three tool-specific subclasses built on it:
SearchResult(rules_search,results: list[Rule]),
RulesExamplesResult(rules_examples,results: list[ContentItem]),
andWordResult(word_list/word_match,results: list[Word]).
truncatedtells callers whether a full page means "that's all the
matches" or "there are more -- call again with a higheroffset". src/biz/dfch/asdste100mcp/tools/_pagination.py-- sharedMaxResults/
Offsetparameter types and apaginate()slicing helper used by all
four paginated tools.
Changed
- Breaking:
rules_searchnow returns aSearchResultobject instead
of a barelist[Rule]; the page of matching rules is available at
result.results. - Breaking:
rules_examplesnow returns aRulesExamplesResult
object instead of a barelist[ContentItem]; the page of matching
content items is available atresult.results. - Breaking:
word_listandword_matchnow return aWordResult
object instead of a barelist[Word]; the page of matching vocabulary
entries is available atresult.results.
Full Changelog: v0.2.0...v1.0.0