Bug: read_module tool fails with "Missing required parameter: path"
Bug Description
When using the read_module tool to discover tool signatures, the tool fails with the error: Missing required parameter: path
This occurs even when the LLM correctly provides the parameter according to the tool's JSON schema.
Root Cause
There was a mismatch between the parameter name defined in the schema and the parameter name expected by the handler:
- Schema (ReadModuleParams struct): defines the parameter as module_path
- Handler (handle_read_module function): looks for a parameter named path
When the LLM reads the tool schema, it correctly uses module_path, but the handler rejects it because it's looking for path.
To Reproduce
- Start a Goose session with the code_execution extension enabled (this is typically enabled by default)
- Ask Goose to use an unfamiliar tool from another MCP extension
- Observe the error: Error: Missing required parameter: path
Expected behavior The read_module tool should return the tool signature and description for jira/search_issues, allowing Goose to understand the required parameters before calling the tool.
Actual Behavior The tool fails with "Missing required parameter: path" even though the module_path parameter was correctly provided according to the tool's JSON schema.