The follow kludge (no more time to give it) does toggle from Color Tint to Grayscale and back each time it is run on macOS 11.3.1. Ideally instead of key code sequences, one should be able to directly address "Grayscale" or "Color Tint" settings.
-- set_grayscale.applescript
-- alternates between grayscale and normal display with each run.
-- Tested on High Sierra (10.13.6), Mojave (10.14.6), and Catalina 10.15.1
-- Revision: 11/19/2019, Upgrade script for Catalina
-- Revision 2021-05-13 for Big Sur 11.3.1
-- VikingOSX, 12/30/2018, Apple Support Communities, No warranty at all
set os_ver to do shell script "sw_vers -productVersion | cut -d '.' -f1-2"
tell application "System Preferences"
launch
if os_ver < "10.15" then
reveal anchor "Seeing_Display" of pane id "com.apple.preference.universalaccess"
else
reveal anchor "Seeing_ColorFilters" of pane "Accessibility"
end if
end tell
tell application "System Events"
tell application process "System Preferences"
set frontmost to true
delay 1
if os_ver ≥ "10.15" then
tell window "Accessibility"
repeat until exists checkbox "Enable Color Filters" of tab group 1 of group 1
delay 0.01
end repeat
tell pop up button 1 of tab group 1 of group 1
click
if not its value is "Grayscale" then
# send four up-arrow key codes fromn Color Tint to select "Grayscale"
key code {126, 126, 126, 126}
# and a return
key code 36
else
# send four down-arrow sequences from GrayScale to get Color Tint
key code {125, 125, 125, 125}
key code 36
click
end if
end tell
end tell
else if os_ver = "10.14" then
tell group 1 of window "Accessibility"
click checkbox "Use grayscale"
end tell
else if os_ver < "10.14" then
tell window "Accessibility"
click checkbox "Use grayscale"
end tell
end if
end tell
end tell
tell application "System Preferences" to if it is running then quit