@@ -26,6 +26,14 @@ func SearchRepositories(getClient GetClientFn, t translations.TranslationHelperF
2626 mcp .Required (),
2727 mcp .Description ("Repository search query. Examples: 'machine learning in:name stars:>1000 language:python', 'topic:react', 'user:facebook'. Supports advanced search syntax for precise filtering." ),
2828 ),
29+ mcp .WithString ("sort" ,
30+ mcp .Description ("Sort repositories by field, defaults to best match" ),
31+ mcp .Enum ("stars" , "forks" , "help-wanted-issues" , "updated" ),
32+ ),
33+ mcp .WithString ("order" ,
34+ mcp .Description ("Sort order" ),
35+ mcp .Enum ("asc" , "desc" ),
36+ ),
2937 mcp .WithBoolean ("minimal_output" ,
3038 mcp .Description ("Return minimal repository information (default: true). When false, returns full GitHub API repository objects." ),
3139 mcp .DefaultBool (true ),
@@ -37,6 +45,14 @@ func SearchRepositories(getClient GetClientFn, t translations.TranslationHelperF
3745 if err != nil {
3846 return mcp .NewToolResultError (err .Error ()), nil
3947 }
48+ sort , err := OptionalParam [string ](request , "sort" )
49+ if err != nil {
50+ return mcp .NewToolResultError (err .Error ()), nil
51+ }
52+ order , err := OptionalParam [string ](request , "order" )
53+ if err != nil {
54+ return mcp .NewToolResultError (err .Error ()), nil
55+ }
4056 pagination , err := OptionalPaginationParams (request )
4157 if err != nil {
4258 return mcp .NewToolResultError (err .Error ()), nil
@@ -46,6 +62,8 @@ func SearchRepositories(getClient GetClientFn, t translations.TranslationHelperF
4662 return mcp .NewToolResultError (err .Error ()), nil
4763 }
4864 opts := & github.SearchOptions {
65+ Sort : sort ,
66+ Order : order ,
4967 ListOptions : github.ListOptions {
5068 Page : pagination .Page ,
5169 PerPage : pagination .PerPage ,
0 commit comments