You could try the following nagios check: http://exchange.nagios.org/directory/Plugins/Hardware/Network-Gear/Cisco/Check-cisco-3750-stack-status/details
As always, it is best to test that the check does what you want by causing a failure when possible. This check is based on the following oids (Taken from the script itself):
my $cisco_stack_table = "188.8.131.52.184.108.40.206.500.1.2.1.1.1";
my $cisco_stack_state = "220.127.116.11.18.104.22.168.500.1.2.1.1.6";
my $cisco_stack_ring = "22.214.171.124.126.96.36.199.500.1.1.3.0";
In particular, the description of cisco_stack_state (cswSwitchState according to the mib and of which is part of a table, so one for each switch) is:
The current state of a switch:
waiting - Waiting for a limited time on other switches in the stack to
progressing - Master election or mismatch checks in progress.
added - The switch is added to the stack.
ready - The switch is operational.
sdmMismatch - The SDM template configured on the master is not
supported by the new member.
verMismatch - The operating system version running on the master is
different from the operating system version running on this member.
featureMismatch - Some of the features configured on the master are
not supported on this member.
newMasterInit - Waiting for the new master to finish initialization
after master switchover (Master Re-Init).
provisioned - The switch is not an active member of the stack.
invalid - The switch's state machine is in an invalid state.
removed - The switch is removed from the stack.