Feature/merge instantiate tools#472
Open
Shashankss1205 wants to merge 1 commit into
Open
Conversation
c1b300e to
f7766e6
Compare
Rebase onto main and unify instantiation behind a single MCP tool that accepts either estimator+params or components+params_list. Removes the separate instantiate_pipeline tool registration while keeping a backward- compat alias for internal callers. Co-authored-by: Cursor <cursoragent@cursor.com>
f7766e6 to
9eeaa40
Compare
1 task
Shashankss1205
added a commit
that referenced
this pull request
Jun 12, 2026
Co-authored-by: Cursor <cursoragent@cursor.com>
Shashankss1205
added a commit
that referenced
this pull request
Jun 12, 2026
Adds instantiate/set_params craft tools, craft_utils sandboxing, and merges craft-backed instantiation with the unified instantiate_estimator API from PR #472. Includes test_craft_instantiate suite (219 tests pass). Co-authored-by: Cursor <cursoragent@cursor.com>
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Reference Issues/PRs
Independence: This PR is rebased on latest
mainand does not depend on #463, #466, #468, or #469. It can be merged on its own.What does this implement/fix? Explain your changes.
Merges
instantiate_estimatorandinstantiate_pipelineinto a single unifiedinstantiate_estimatortool.Before: LLM clients chose between two tools:
instantiate_estimator(estimator="ARIMA", params={...})— single estimatorinstantiate_pipeline(components=["Detrender", "ARIMA"], params_list=[...])— pipelineAfter: One tool handles both:
instantiate_estimator(estimator="ARIMA", params={...})— single estimatorinstantiate_estimator(components=["Detrender", "ARIMA"], params_list=[...])— pipelineThe tool validates that exactly one of
estimatororcomponentsis provided. A single-elementcomponentslist is equivalent to a singleestimator. Pipeline composition validation runs automatically whencomponentshas multiple entries.Files changed (7):
src/sktime_mcp/tools/instantiate.py— unified API withestimator|componentsdispatch; backward-compat aliasinstantiate_pipeline_toolkept internallysrc/sktime_mcp/server.py— merged tool schema and dispatchsrc/sktime_mcp/tools/__init__.py— removedinstantiate_pipeline_toolfrom exportstests/test_param_validation.py— keyword args; mutual-exclusion teststests/test_codegen.py,tests/test_core.py— updated call sitesdocs/source/implementation.md— updated documentationDoes your contribution introduce a new dependency? If yes, which one?
No.
What should a reviewer concentrate their feedback on?
instantiate_estimator_toolAPI — mutual exclusion logic forestimatorvscomponentsserver.py— norequiredfields since eitherestimatororcomponentssufficesinstantiate_pipeline_tool = instantiate_estimator_tooltest_requires_estimator_or_components,test_rejects_both_estimator_and_componentsAny other comments
Rebased on latest
main(1 commit, +224 / −151). 184 tests pass undermake check. Ruff lint clean.PR checklist
For all contributions
make check).docs/source/.