refactor: make each subtool a top-level MCP tool #286
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.
Stack from ghstack (oldest at bottom):
In codemcp/multi_entry.py there is a POC for how to have each of the SubTools as a dedicated top level MCP tool. Let's change codemcp/main.py so we apply this for all subtools.
We must worry about BC for the codemcp function in codemcp/main.py. We will remove the @mcp.tool decorator but leave the function so tests don't break (we will refactor the tests later.) Let's annotate @mcp.tool in each codemcp/tools/ file individually. In codemcp/tools/init_project.py there is a system_prompt which documents the tools. These should be moved into the docstring of each mcp.tool declaration. The non-tool system prompt should continue to emitted from InitProject tool.
codemcp-id: 292-refactor-make-each-subtool-a-top-level-mcp-tool