Creating a Garmin "MCP"

(jackantico.io)

37 points | by ricotico060 1 day ago

15 comments

  • m463 1 day ago
    Why can't we just connect a garmin watch (or edge or gps) to our ai machine, have it extract all the data with MTP or garmin format, and keep it local. Then ask questions.

    Honestly I've been wondering if in the near future I can basically have a big machine and some sort of "ingest" program.

    Then keep connect my devices to it, where it will backup all the data, and mine the backups for information I want.

    Mine my iphone backups for text messages or contacts

    mine all my devices for photos or videos

    mine my watch or bike computer or gps or whatever else for where I've been and how I've exercised.

    instead, everyone wants your data and imposes themselves in the middle.

    • levocardia 52 minutes ago
      You can literally connect your Garmin to your computer via USB and drag-and-drop the raw activity files and analyze them if you want. Works totally fine. But Garmin's cloud sync is convenient and cloud processing adds data like elevation (by cross-matching GPS to topo data).
    • zknill 1 day ago
      GPS traces recorded on a watch can be pretty noisy. If you stand in the same spot for a while, you're not going to get the exact GPS position recorded for the entire time you're there. The same happens when you move, it's not a smooth trace.

      Strava (and I assume to some extent Garmin) apply some smoothing to these raw GPX traces to try and improve the path, or remove some of the noise.

      You'd be missing out on this post-processing by taking the data raw. Ofc you can implement something similar yourself, but I wanted to point out that these platforms are doing a little bit more than just displaying the GPX trace.

      • asp_hornet 26 minutes ago
        When parsing high end Garmin and Apple fit files, it appears a lot of their smoothing is done before writing to the fit file. They’re in a very workable state straight out of the gate.
      • szszrk 1 hour ago
        But how real of a problem that is?

        I wander often on many smartwatch/sport tracking forums/subreddits, and it's fairly frequent that people ask how to deal with smoothing and get back raw data. Some love how Garmin smooths out a race track run for them and make gps trail stick perfectly to a lane. Some pull their hair out seeing their lake run being smoothed out to make it look like they jumped over fences and private properties.

        I often find my garmin traces confusing as well, it's not objectively better.

    • cgsmith 1 day ago
      This is similar to what I did. Just download the gpx and analyze that. Skips the Garmin API.
    • kyzrfranz 1 hour ago
      Main problem is the sync and getting to the data. Speaking from experience here, been working on something for a while. This is the current state of the product pitch:

      https://claude.ai/artifact/162zJUVejDdrAAw6yz9ETs

      fyi - most of the functionality already working, but the key factor is how to get the data from the vendors.I currently rely on run-gap but i realise this is not a long-term solution. Last time i have checked intervals icu api I just couldn't stop throwing up for a few days -but this might be better in the mean time.

      long term solution is to have something like rungap, server side without the ridiculous fees some of the vendors charge (terra, rook,...)

      if anybody wants to test what I currently got, or just has some feedback - let me know.

      • gadders 54 minutes ago
        >>without the ridiculous fees some of the vendors charge (terra, rook,...)

        They charge an absolute fortune.

    • exabrial 1 day ago
      doesn’t Garmin support completely local synchronization with their devices still?
      • gadders 1 hour ago
        Yes, but it stays within Garmin. It's hard to get metrics from multiple devices in one place.
      • m463 1 day ago
        they do - and this is why I buy their stuff.

        but a lot of these folks are uploading everything to garmin connect and letting it have your data and do the work.

        • jawilson2 19 hours ago
          If you do local sync, can you work with the files directly? I.e. if I don't want to upload to garmin connect, can I just tell Claude to use an API or reverse engineer the files? I've had a venu 4 for a few months, and finished my connect+ trial, and want to setup my own analytics.
          • djantje 1 hour ago
            I just connected my Garmin watch to charge via usb, enabled disk access, going into folder GARMIN/Activity/ and uploaded one of the .fit files to claude web and asked a summary and graph, it seems I had a nice evening bike ride that day :)
  • jordiori 4 minutes ago
    I've created a "running coach" agent that does something similar. It basically exports Garmin's data using the unofficial API into a sqlite db. Then, the agent has some tools to query the data directly in the database with SQL. It works pretty well.
  • lormayna 8 minutes ago
    If you are using Intervals.icu, you can connect it to Garmin and then use their own MCP server https://forum.intervals.icu/t/mcp-server-for-connecting-clau...
  • lairv 17 minutes ago
    I would like the reverse of an MCP, a protocol so that everyday apps can push notify (given my authorization) my agents on specific events

    For example after I complete a run on Strava I want my agents to know about it, they already have all the context, they know what weekly volume I'm aiming for and what I'm training for

  • shrx 1 hour ago
    I highly recommend GadgetBridge for anyone wanting to avoid Garmin's cloud services: https://gadgetbridge.org/
    • szszrk 1 hour ago
      I love it as it supports some weird devices that were abandoned or require Chinese data residency for them to sync.

      How is it working for you in Garmin for sleep tracking? I tried it a few years ago and loved it at first, but then noticed how incorrect sleep data was.

  • ssgodderidge 15 minutes ago
    The approach is more agent skills + a CLI that hits publicly available APIs than an MCP, but still cool! I would love to see the code?
  • teroshan 1 hour ago
    > Imagine how great an Instagram MCP would be. You could create your own feed algorithm (such as the OG algorithm: just pictures from friends based on when they posted). Users would be able to filter out all the influencer content and ads Instagram throws on them. But Instagram would never do this.

    See also: the OG App : https://techcrunch.com/2022/09/27/og-app-promises-you-an-ad-...

    This is why I don't understand why MCPs (or in other words open documented APIs right?) are being pushed so much.

    What's the value in e.g. Amazon opening up their APIs to competitors, lowering the cost of scraping their data? Or allowing their consumers to more easily analyze dynamic pricing? Isn't the whole point to steer people towards closed proprietary apps that work in walled garden that prevent reverse-engineering and any kind of modification?

    • weird-eye-issue 1 hour ago
      > e.g. Amazon opening up their APIs to competitors, lowering the cost of scraping their data?

      Not a great example considering how easy it is to get Amazon data from both official and unofficial APIs (which is very cheap at scale)

  • quora 51 minutes ago
    I've recently done something simliar but for creating strength workouts via Claude.

    The web and mobile based workout builder has a terrible UI if your workout changes between sessions so I've lifted some features from an app called liftosaur and got it to send activities to my watch. Unfortunately Garmin don't seem to care very much about strength training, so are missing a lot of pretty key exercises from their list, with no ability to create custom ones

    • hummuscience 49 minutes ago
      I am very happy with liftosaur and it's MCP for that!
  • faangguyindia 43 minutes ago
    Many people actually try to use Garmin or other trackers/smart watches for things they aren't good at.

    For example, if you want to track your maintenance calories (TDEE, total daily expenditure), Garmin isn't going to be much useful.

    • jcul 27 minutes ago
      I've started exporting my sleep data from Garmin connect. And my expenditure, weight, nutrition, from macrofactor.

      I add them to a spreadsheet along with other metrics I've been collecting manually for a long time, like tape, caliper measurements etc.

      I do it weekly and then ask Claude to analyse the sheet.

      It's super manual but just once a week and it can be really helpful / spots insights I often miss like how sleep affected something etc.

      • faangguyindia 20 minutes ago
        We use a neural network to predict maintenance calories.

        We actually operate a MacroFactor competitor: MacroCodex (which is completely free). https://macrocodex.app/ we've like 17,000+ users so far.

        It adapts much faster than MacroFactor, and it's completely free of subscriptions and ads.

        Guaranteed weight gain or loss within 2-3 weeks, consider reading reviews if in doubt, many people will see results from the very first week on macrocodex!

        Many people waste their time by adding "calorie burn" from different activities by tracking all of them individually in smartwatches or fitness bands.

  • isolli 6 minutes ago
  • TrueGeek 1 hour ago
    I've been using the unofficial Garmin APIs as well, but instead of an MCP I wrote an app that waits until my watch syncs after I wake up and then grabs all of yesterdays data and puts it into a Notion db.

    It's been working great. The Claude morning brief compares my sleep, HRV, training status, calendar, and weather and then tells me when and how hard to workout that day.

  • weird-eye-issue 1 hour ago
    I sync Garmin activities to Strava then use the Strava API in Claude Code. Although I think Strava just came out with an MCP. This works great but doesn't access things like sleep which I didn't need anyways

    Its funny because I literally just used it, opened HN, then saw this post

  • obilgic 1 hour ago
    Just connect your garmin to intervals.icu
    • rcMgD2BwE72F 15 minutes ago
      Just connect your Garmin to GadgetBridge as and have a small script upload your files to intervals.icu. Your data will never touch a Garmin server.

      This works perfectly for me. Couldn't be happier.

  • leni536 49 minutes ago
    The idea of letting an LLM anywhere near my finances (and actually initiate transactions) terrifies me. And I like using LLMs.
    • Hamuko 15 minutes ago
      I'm more terrified about how much (personal) data people are feeding commercial LLMs. You send Claude your Garmin data and Anthropic will keep it for literally years. And then probably hand it over to law enforcement as soon as a subpoena hits.

      I've been using a local LLM (Gemma) to tag my personal documents (invoices, receipts, etc.) and there's no way I'd ever send that data to Anthropic or OpenAI.

  • Krasnol 1 hour ago
    SparkyFitness has an MCP and you can connect Garmin to it:

    https://github.com/CodeWithCJ/SparkyFitness