Problem: Augment sends protocolVersion (camelCase) but server expected protocol_version (snake_case)
Fix: Added #[serde(rename_all = "camelCase")] to protocol structs:
InitializeParamsInitializeResultClientInfoServerInfo
Problem: Server hardcoded protocol version 2024-11-05 but Augment uses 2025-06-18
Fix: Server now accepts and echoes back the client's protocol version
The server now works correctly with Augment's messages:
echo '{"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"augment-mcp-client","version":"1.0.0"}},"jsonrpc":"2.0","id":0}' | ./target/release/smart-diff-mcpResponse:
{"jsonrpc":"2.0","id":0,"result":{"capabilities":{"resources":{"list_changed":true,"subscribe":false},"tools":{"list_changed":true}},"protocolVersion":"2025-06-18","serverInfo":{"name":"smart-diff-mcp-server","version":"0.1.0"}}}-
Update your Augment configuration to use the regular binary (not the debug wrapper):
/home/matteius/codediff/target/release/smart-diff-mcp -
Restart Augment Code or toggle the MCP server off and on
-
Verify connection: The smart-diff server should now show a green dot (connected)
-
Test it: Try asking Augment to compare some code:
Use the smart-diff MCP server to compare /path/to/old with /path/to/new
Once connected, Augment can use these tools:
- compare_locations - Compare two code locations
- list_changed_functions - List functions sorted by change magnitude
- get_function_diff - Get detailed diff for a specific function
- get_comparison_summary - Get summary statistics
If you want to keep debugging, you can still use the debug wrapper:
/home/matteius/codediff/target/release/smart-diff-mcp-debug
Check logs at: /tmp/smart-diff-mcp-debug.log
Files modified:
crates/mcp-server/src/mcp/protocol.rs- Added camelCase serializationcrates/mcp-server/src/server.rs- Accept client's protocol version
Rebuilt binary:
cargo build --release -p smart-diff-mcp-server✅ Fixed and Ready
The MCP server now works with Augment Code!