@@ -901,33 +901,77 @@ Return ONLY the JSON object - no explanations, no markdown, no extra text.`,
901901 tool : ( params ) => params . operation ,
902902 params : ( params ) => {
903903 const result : Record < string , unknown > = { }
904- if ( params . alertTitle ) result . title = params . alertTitle
905- if ( params . folderTitle ) result . title = params . folderTitle
906- if ( params . updateFolderTitle ) result . title = params . updateFolderTitle
907- if ( params . folderUidNew ) result . uid = params . folderUidNew
908- if ( params . alertRuleUidNew ) result . uid = params . alertRuleUidNew
909- if ( params . parentUidNew ) result . parentUid = params . parentUidNew
910- if ( params . parentUidList ) result . parentUid = params . parentUidList
911- if ( params . manageFolderUid ) result . folderUid = params . manageFolderUid
912- if ( params . contactPointName ) result . name = params . contactPointName
913- if ( params . contactPointNameNew ) result . name = params . contactPointNameNew
914- if ( params . contactPointType ) result . type = params . contactPointType
915- if ( params . contactPointSettings ) result . settings = params . contactPointSettings
916- if ( params . annotationTags ) result . tags = params . annotationTags
917- if ( params . annotationDashboardUid ) result . dashboardUid = params . annotationDashboardUid
918- if ( params . annotationType ) result . type = params . annotationType
919- if ( params . panelId ) result . panelId = Number ( params . panelId )
920- if ( params . annotationId ) result . annotationId = Number ( params . annotationId )
921- if ( params . alertId ) result . alertId = Number ( params . alertId )
922- if ( params . userId ) result . userId = Number ( params . userId )
923- if ( params . time ) result . time = Number ( params . time )
924- if ( params . timeEnd ) result . timeEnd = Number ( params . timeEnd )
925- if ( params . from ) result . from = Number ( params . from )
926- if ( params . to ) result . to = Number ( params . to )
927- if ( params . page ) result . page = Number ( params . page )
928- if ( params . limit ) result . limit = Number ( params . limit )
929- if ( params . missingSeriesEvalsToResolve ) {
930- result . missingSeriesEvalsToResolve = Number ( params . missingSeriesEvalsToResolve )
904+ switch ( params . operation ) {
905+ case 'grafana_list_dashboards' :
906+ if ( params . page ) result . page = Number ( params . page )
907+ if ( params . limit ) result . limit = Number ( params . limit )
908+ break
909+ case 'grafana_create_alert_rule' :
910+ if ( params . alertTitle ) result . title = params . alertTitle
911+ if ( params . alertRuleUidNew ) result . uid = params . alertRuleUidNew
912+ if ( params . missingSeriesEvalsToResolve ) {
913+ result . missingSeriesEvalsToResolve = Number ( params . missingSeriesEvalsToResolve )
914+ }
915+ break
916+ case 'grafana_update_alert_rule' :
917+ if ( params . alertTitle ) result . title = params . alertTitle
918+ if ( params . missingSeriesEvalsToResolve ) {
919+ result . missingSeriesEvalsToResolve = Number ( params . missingSeriesEvalsToResolve )
920+ }
921+ break
922+ case 'grafana_list_contact_points' :
923+ if ( params . contactPointName ) result . name = params . contactPointName
924+ break
925+ case 'grafana_create_contact_point' :
926+ if ( params . contactPointNameNew ) result . name = params . contactPointNameNew
927+ if ( params . contactPointType ) result . type = params . contactPointType
928+ if ( params . contactPointSettings ) result . settings = params . contactPointSettings
929+ break
930+ case 'grafana_create_annotation' :
931+ if ( params . annotationTags ) result . tags = params . annotationTags
932+ if ( params . annotationDashboardUid ) result . dashboardUid = params . annotationDashboardUid
933+ if ( params . panelId ) result . panelId = Number ( params . panelId )
934+ if ( params . time ) result . time = Number ( params . time )
935+ if ( params . timeEnd ) result . timeEnd = Number ( params . timeEnd )
936+ break
937+ case 'grafana_update_annotation' :
938+ if ( params . annotationTags ) result . tags = params . annotationTags
939+ if ( params . annotationId ) result . annotationId = Number ( params . annotationId )
940+ if ( params . time ) result . time = Number ( params . time )
941+ if ( params . timeEnd ) result . timeEnd = Number ( params . timeEnd )
942+ break
943+ case 'grafana_delete_annotation' :
944+ if ( params . annotationId ) result . annotationId = Number ( params . annotationId )
945+ break
946+ case 'grafana_list_annotations' :
947+ if ( params . annotationTags ) result . tags = params . annotationTags
948+ if ( params . annotationDashboardUid ) result . dashboardUid = params . annotationDashboardUid
949+ if ( params . annotationType ) result . type = params . annotationType
950+ if ( params . panelId ) result . panelId = Number ( params . panelId )
951+ if ( params . alertId ) result . alertId = Number ( params . alertId )
952+ if ( params . userId ) result . userId = Number ( params . userId )
953+ if ( params . from ) result . from = Number ( params . from )
954+ if ( params . to ) result . to = Number ( params . to )
955+ if ( params . limit ) result . limit = Number ( params . limit )
956+ break
957+ case 'grafana_list_folders' :
958+ if ( params . parentUidList ) result . parentUid = params . parentUidList
959+ if ( params . page ) result . page = Number ( params . page )
960+ if ( params . limit ) result . limit = Number ( params . limit )
961+ break
962+ case 'grafana_create_folder' :
963+ if ( params . folderTitle ) result . title = params . folderTitle
964+ if ( params . folderUidNew ) result . uid = params . folderUidNew
965+ if ( params . parentUidNew ) result . parentUid = params . parentUidNew
966+ break
967+ case 'grafana_get_folder' :
968+ case 'grafana_delete_folder' :
969+ if ( params . manageFolderUid ) result . folderUid = params . manageFolderUid
970+ break
971+ case 'grafana_update_folder' :
972+ if ( params . manageFolderUid ) result . folderUid = params . manageFolderUid
973+ if ( params . updateFolderTitle ) result . title = params . updateFolderTitle
974+ break
931975 }
932976 return result
933977 } ,
0 commit comments