feat: add diff_files tool for file comparison #63
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.
Summary
Implements a new
diff_filestool that enables file comparison within the MCP filesystem server.Closes #62
Changes
New Tool:
diff_filesParameters:
path1(string): First file path to comparepath2(string): Second file path to comparemaxFileSizeBytes(optional, default: 10MB): Maximum file size limitBehavior:
Implementation Details
Files Modified/Created:
src/tools/diff_files.rs- Tool definition with schemasrc/fs_service.rs- Service layer implementation with binary detectionsrc/tools.rs- Tool registration in macrossrc/handler.rs- Handler dispatch registrationCargo.toml- Addedhexdependency for hash encodingdocs/capabilities.md- Updated documentation (24→25 tools)tests/test_tools.rs- 8 comprehensive test casesKey Features:
Test Coverage
Added 8 test cases covering:
All 131 tests passing (cargo make check ✓)
Test Plan
Manual testing completed:
[agent pull request]