rename file param to path in get tool for LLM discoverability#373
Open
rename file param to path in get tool for LLM discoverability#373
file param to path in get tool for LLM discoverability#373Conversation
The `file` parameter name in the `get` tool caused LLMs to guess `path` or `file_path` (the universal convention for file path parameters), resulting in failed calls and unnecessary round-trips to discover the correct name. Fixes tobi#372
The `file` parameter name in the `get` tool caused LLMs to guess `path` or `file_path` (the universal convention for file path parameters), resulting in failed calls and unnecessary round-trips to discover the correct name. Fixes tobi#372
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.
Fixes #372
What
Renames the
fileparameter topathin thegettool'sinputSchema.Why
pathis the universal convention for parameters that accept file path strings - used by Claude's built-inReadtool (file_path), most MCP tools, and essentially every file-reading API. The namefilereads as a file object, not a string path.In practice, LLMs call
getwith{ path: "..." }on the first try and get a validation error, requiring an extra round-trip to discover the correct name isfile. This is exactly what happened during a real session using this MCP - the error surfaced the issue and led to this fix.Changes
inputSchema:file→path{ file, ... }→{ path, ... }`Document not found: ${file}`→`Document not found: ${path}`multi_getskip message:with file="..."→with path="..."Minor breaking change for clients explicitly passing
{ file: "..." }- worth calling out in CHANGELOG.