Garmin MCP Server

by Taxuspt
Verified
""" Debug version of the MCP server for direct testing """ import asyncio import datetime import os from pathlib import Path from dotenv import load_dotenv from garminconnect import Garmin # Load environment variables from .env file env_path = Path(__file__).parent / '.env' load_dotenv(dotenv_path=env_path) # Direct test function async def test_direct(): # Get credentials from environment email = os.environ.get("GARMIN_EMAIL") password = os.environ.get("GARMIN_PASSWORD") print(f"Logging in with email: {email}") try: # Create and initialize Garmin client client = Garmin(email, password) client.login() print("Login successful!") # Test activities print("\nGetting recent activities...") activities = client.get_activities(0, 2) if activities: print(f"Found {len(activities)} activities") for idx, activity in enumerate(activities, 1): print(f"\n--- Activity {idx} ---") print(f"Name: {activity.get('activityName', 'Unknown')}") else: print("No activities found") print("\nTest completed successfully!") except Exception as e: print(f"Error: {str(e)}") if __name__ == "__main__": asyncio.run(test_direct())