refactor(time_entries): split create_time_entry tool to fix schema validation #59
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.
The 'create_time_entry' tool used a 'oneOf' clause in its input schema to require either 'project_id' or 'issue_id'. This violates the MCP schema constraints, which do not allow 'oneOf', 'allOf', or 'anyOf' at the top level of a tool's input schema.
This commit resolves the issue by splitting the single tool into two distinct tools:
create_time_entry_for_project: Requiresproject_id.create_time_entry_for_issue: Requiresissue_id.This change aligns with MCP best practices by making each tool have a single, clear responsibility.
The corresponding handler in
src/handlers/time_entries.tshas been refactored to support these new tools, removing the complex validation logic and simplifying the implementation.