Skip to main content
Glama

logout

End your session on the Open eClass platform using the authentication system, ensuring secure disconnection and access termination.

Instructions

Log out from eClass

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
random_stringYesDummy parameter for no-parameter tools

Implementation Reference

  • Registration of the 'logout' MCP tool, including its description and input schema (dummy parameter).
    types.Tool( name="logout", description="Log out from eClass", inputSchema={ "type": "object", "properties": { "random_string": {"type": "string", "description": "Dummy parameter for no-parameter tools"}, }, "required": ["random_string"], }, ),
  • MCP handler function for the 'logout' tool that invokes the authentication logout logic and formats the response.
    async def handle_logout() -> List[types.TextContent]: """Handle logout from eClass.""" # Use the authentication module to perform logout success, username_or_error = authentication.perform_logout(session_state) # Format and return the response return [authentication.format_logout_response(success, username_or_error)]
  • Core implementation of logout logic: sends GET to logout URL, resets session, handles errors.
    def perform_logout(session_state) -> Tuple[bool, Optional[str]]: """ Log out from eClass. Args: session_state: The current session state Returns: Tuple of (success, error_message or username) """ if not session_state.logged_in: return True, None # Already logged out try: response = session_state.session.get(session_state.logout_url) response.raise_for_status() # Store username for response message username = session_state.username # Reset session state session_state.reset() return True, username except Exception as e: logger.error(f"Logout error: {str(e)}") return False, f"Error during logout: {str(e)}"
  • Helper function to format the logout result into an MCP TextContent response.
    def format_logout_response(success: bool, username_or_error: Optional[str]) -> types.TextContent: """ Format logout response for MCP. Args: success: Whether logout was successful username_or_error: Username if logout succeeded, error message if failed Returns: Formatted MCP TextContent response """ if success: if username_or_error: # If we had a username return types.TextContent( type="text", text=f"Successfully logged out user {username_or_error}.", ) else: return types.TextContent( type="text", text="Not logged in, nothing to do.", ) else: return types.TextContent( type="text", text=f"Error during logout: {username_or_error}", )
  • Input schema definition for the 'logout' tool (uses dummy parameter as tool takes no real inputs).
    inputSchema={ "type": "object", "properties": { "random_string": {"type": "string", "description": "Dummy parameter for no-parameter tools"}, }, "required": ["random_string"], },

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sdi2200262/eclass-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server