プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Garmin Connect Personal API

作者:hanntaバージョン 1.1.1i★ –iパソコンで動く
レジストリ名io.github.hannta/garmin-connect-personal-api-mcp

インストール

概要

作者による説明(英語の原文)

Read-only Garmin Connect data on Garmin's official Personal API: training, sleep, HRV, recovery.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: クリニック・健康
  • 入力が必要なもの:GARMIN_PERSONAL_API_KEY

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • 自分で入力するもの: GARMIN_PERSONAL_API_KEY

「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。

必要なもの

  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "garmin-connect-personal-api": {
      "command": "npx",
      "args": [
        "-y",
        "@hannta/garmin-connect-personal-api-mcp"
      ],
      "env": {
        "GARMIN_PERSONAL_API_KEY": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add garmin-connect-personal-api --env GARMIN_PERSONAL_API_KEY=your-value -- npx -y @hannta/garmin-connect-personal-api-mcp

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "garmin-connect-personal-api": {
      "command": "npx",
      "args": [
        "-y",
        "@hannta/garmin-connect-personal-api-mcp"
      ],
      "env": {
        "GARMIN_PERSONAL_API_KEY": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "garmin-connect-personal-api": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@hannta/garmin-connect-personal-api-mcp"
      ],
      "env": {
        "GARMIN_PERSONAL_API_KEY": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • GARMIN_PERSONAL_API_KEY 秘密 env
    Garmin Connect Personal API key (optional: the auth command saves one instead)

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント hannta で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

クリニック・健康のほかのサーバーとの比較i

  • このカテゴリのほかの1028件のうち0%よりスターが多い
  • このカテゴリのほかの1028件のうち93%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの1028件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Garmin Connect Personal APIは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:GARMIN_PERSONAL_API_KEY

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(1.1.1)がレジストリに届いたのは一昨日です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。

代わりに使えるものは?

同じカテゴリには:Mirobody, FHIR MCP Server, Google Health MCP

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Mirobody

Lab results to LOINC codes and UCUM units, symptoms and diagnoses to ICPC-3. Offline, no API key.

作者:thetahealth成長中↓ 290/週★ 1408昨日更新

パソコンで動く✓ thetahealth.ai

FHIR MCP Server

MCP server providing seamless access to FHIR APIs for AI tools and healthcare applications

作者:wso2成長中↓ 823/週★ 13710 日前更新

パソコンで動く

Google Health MCP

Privacy-first unofficial Google Health API v4 MCP server for health, sleep, activity, HR agents

作者:davidmosiah成長中↓ 1024/週★ 794 か月前更新

パソコンで動く

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

Garmin Connect Personal API MCP

Not affiliated with or endorsed by Garmin. Garmin and Garmin Connect are trademarks of

Garmin Ltd.

A read-only MCP server that gives AI assistants your own Garmin Connect training, recovery and health data through the official Garmin Connect Personal API. Run it on your own computer, or host it on your own Cloudflare account to use it from anywhere.

AI agents: to set this up for a user, follow docs/AGENT-SETUP.md.

Setup

You need a Garmin Connect Personal API key, which you create in Garmin Connect on the web.

Run locally

The quickest way, for Claude Code, Claude Desktop, Cursor, VS Code and other clients that run local servers. Needs Node.js 22+.

Paste this into your coding agent:

Connect @hannta/garmin-connect-personal-api-mcp

Or do it yourself: docs/LOCAL.md.

Host on Cloudflare

For Claude on the web and on mobile, and any other client that connects to remote servers with OAuth. The free plan is enough, apart from one known limitation.

  • One click:
  • Manual: follow docs/DEPLOY.md.

Then connect your MCP client, such as Claude, ChatGPT, Cursor or VS Code.

Tools

ToolWhat it returns
garmin_get_dayOne day at a glance: sleep, HRV, Body Battery, stress, resting HR, intensity minutes, activities
garmin_get_daysThe same over a date range, one row per day, with daily activity totals and training load
garmin_search_activitiesActivities in a date range with Garmin IDs and fastest splits, or totals per week
garmin_get_activityOne activity in depth: pace, HR zones, running dynamics, power, training effect, interval totals, strength sets per exercise
garmin_get_activity_streamsOne activity's time series (HR, pace, grade-adjusted pace, cadence, power, elevation, …)
garmin_get_activity_lapsOne row per lap and interval rep, from the activity's FIT file
garmin_get_sleepOne night's sleep in detail: score components with optimal ranges, sleep need and why it changed, naps
garmin_get_sleep_summariesSleep per night over a date range
garmin_get_hrvOne night's HRV with baseline, status and overnight readings
garmin_get_hrv_summariesHRV per night over a date range
garmin_get_daily_summariesResting HR, Body Battery, stress, intensity minutes, steps per day over a date range
garmin_get_weightWeigh-ins and body composition over a date range
garmin_get_profileProfile settings and heart-rate zones
garmin_get_body_batteryBody Battery per day: charged, drained and the sleep / activity events behind it
garmin_get_stressStress per day: average level and minutes at rest / low / medium / high
garmin_get_stepsSteps per day with goal and distance
garmin_get_heart_rateOne day's resting / min / max heart rate, optionally averaged per 15 minutes
garmin_get_spo2One day's blood oxygen (Pulse Ox), optionally hourly with altitude
garmin_get_fitness_ageFitness age and its components (resting HR, BMI, vigorous days / minutes)
garmin_get_heart_rate_zonesHeart-rate zones per sport
garmin_get_weight_goalsWeight goals in effect (target kg)
garmin_get_activity_workoutsThe structured workout an activity followed: steps, targets (HR, pace, power) and repeats
garmin_get_hydrationHydration per day: intake, goal, sweat loss (ml)
garmin_get_food_logOne day's food log: calories and macros eaten vs. goals, per meal and food
garmin_get_wellness_activitiesWellness sessions (e.g. Health Snapshot, breathwork) with HR, stress, HRV, SpO2
garmin_get_menstrual_cycleCycle day, period and fertile window, predictions and cycle analysis
garmin_get_menstrual_dayOne day's logged flow, symptoms and moods, with that day's cycle summary
Good to know
  • Range tools default to the last 7 days. If a range is too long for one Garmin request, the error says the maximum and the assistant splits it into several calls.
  • Output is metric, with the unit in every field name. Dates are YYYY-MM-DD in your time zone; sleep and HRV are keyed by the wake-up date.
  • Location, sexual activity and sex drive data are never returned.
  • Known limitation: garmin_get_activity_laps can fail on long activities on the Cloudflare free plan. See Known limitations.

Development

Requires Node.js 24+.

npm install

cp .dev.vars.example .dev.vars # then add GARMIN_API_KEY and OWNER_PASSPHRASE npm run check # typecheck, lint, format check, tests npm run today # print today's recovery data using your key npm run dev # MCP server at http://localhost:8787/mcp npm run build # local server in dist/cli.mjs

To try the local server, connect the MCP Inspector to it and sign in with OWNER_PASSPHRASE.

Architecture and conventions: docs/DEVELOPMENT.md.

License

MIT

PopNxに聞く