@@ -823,18 +823,18 @@ func (s *MCPServer) handleListResources(
823823 s .resourcesMu .RLock ()
824824 resources := make ([]mcp.Resource , 0 , len (s .resources ))
825825
826- // Get all resource names for consistent ordering
827- resourceNames := make ([]string , 0 , len (s .resources ))
828- for name := range s .resources {
829- resourceNames = append (resourceNames , name )
826+ // Get all resource URIs for consistent ordering
827+ resourceURIs := make ([]string , 0 , len (s .resources ))
828+ for uri := range s .resources {
829+ resourceURIs = append (resourceURIs , uri )
830830 }
831831
832- // Sort the resource names for consistent ordering
833- sort .Strings (resourceNames )
832+ // Sort the resource URIs for consistent ordering
833+ sort .Strings (resourceURIs )
834834
835835 // Add resources in sorted order
836- for _ , name := range resourceNames {
837- resources = append (resources , s .resources [name ].resource )
836+ for _ , uri := range resourceURIs {
837+ resources = append (resources , s .resources [uri ].resource )
838838 }
839839 s .resourcesMu .RUnlock ()
840840
@@ -849,12 +849,12 @@ func (s *MCPServer) handleListResources(
849849
850850 // Add global resources first
851851 for _ , resource := range resources {
852- resourceMap [resource .Name ] = resource
852+ resourceMap [resource .URI ] = resource
853853 }
854854
855855 // Then override with session-specific resources
856- for name , serverResource := range sessionResources {
857- resourceMap [name ] = serverResource .Resource
856+ for uri , serverResource := range sessionResources {
857+ resourceMap [uri ] = serverResource .Resource
858858 }
859859
860860 // Convert back to slice
@@ -865,7 +865,7 @@ func (s *MCPServer) handleListResources(
865865
866866 // Sort again to maintain consistent ordering
867867 sort .Slice (resources , func (i , j int ) bool {
868- return resources [i ].Name < resources [j ].Name
868+ return resources [i ].URI < resources [j ].URI
869869 })
870870 }
871871 }
0 commit comments