Two tools a model cannot tell apart
With the same vocabulary in both descriptions there is nothing to choose on, so it picks by name similarity
{"tools": [
{"name": "get_user", "description": "Fetch a user record from the database by identifier. Call this when you need user details.", "inputSchema": {"type": "object", "properties": {}}},
{"name": "fetch_user", "description": "Fetch a user record from the database by identifier. Call this when you need user details.", "inputSchema": {"type": "object", "properties": {}}}
]}