Mirobody
Lab results to LOINC codes and UCUM units, symptoms and diagnoses to ICPC-3. Offline, no API key.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Read-only Garmin Connect data on Garmin's official Personal API: training, sleep, HRV, recovery.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
GARMIN_PERSONAL_API_KEYค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด 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": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add garmin-connect-personal-api --env GARMIN_PERSONAL_API_KEY='ใส่ค่าของคุณ' -- npx -y @hannta/garmin-connect-personal-api-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .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": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .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": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub hannta ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: GARMIN_PERSONAL_API_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.1.1) เข้า registry เมื่อวานซืน
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Mirobody, FHIR MCP Server, Google Health MCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Lab results to LOINC codes and UCUM units, symptoms and diagnoses to ICPC-3. Offline, no API key.
MCP server providing seamless access to FHIR APIs for AI tools and healthcare applications
Privacy-first unofficial Google Health API v4 MCP server for health, sleep, activity, HR agents
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
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.
You need a Garmin Connect Personal API key, which you create in Garmin Connect on the web.
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.
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.
Then connect your MCP client, such as Claude, ChatGPT, Cursor or VS Code.
| Tool | What it returns |
|---|---|
garmin_get_day | One day at a glance: sleep, HRV, Body Battery, stress, resting HR, intensity minutes, activities |
garmin_get_days | The same over a date range, one row per day, with daily activity totals and training load |
garmin_search_activities | Activities in a date range with Garmin IDs and fastest splits, or totals per week |
garmin_get_activity | One activity in depth: pace, HR zones, running dynamics, power, training effect, interval totals, strength sets per exercise |
garmin_get_activity_streams | One activity's time series (HR, pace, grade-adjusted pace, cadence, power, elevation, …) |
garmin_get_activity_laps | One row per lap and interval rep, from the activity's FIT file |
garmin_get_sleep | One night's sleep in detail: score components with optimal ranges, sleep need and why it changed, naps |
garmin_get_sleep_summaries | Sleep per night over a date range |
garmin_get_hrv | One night's HRV with baseline, status and overnight readings |
garmin_get_hrv_summaries | HRV per night over a date range |
garmin_get_daily_summaries | Resting HR, Body Battery, stress, intensity minutes, steps per day over a date range |
garmin_get_weight | Weigh-ins and body composition over a date range |
garmin_get_profile | Profile settings and heart-rate zones |
garmin_get_body_battery | Body Battery per day: charged, drained and the sleep / activity events behind it |
garmin_get_stress | Stress per day: average level and minutes at rest / low / medium / high |
garmin_get_steps | Steps per day with goal and distance |
garmin_get_heart_rate | One day's resting / min / max heart rate, optionally averaged per 15 minutes |
garmin_get_spo2 | One day's blood oxygen (Pulse Ox), optionally hourly with altitude |
garmin_get_fitness_age | Fitness age and its components (resting HR, BMI, vigorous days / minutes) |
garmin_get_heart_rate_zones | Heart-rate zones per sport |
garmin_get_weight_goals | Weight goals in effect (target kg) |
garmin_get_activity_workouts | The structured workout an activity followed: steps, targets (HR, pace, power) and repeats |
garmin_get_hydration | Hydration per day: intake, goal, sweat loss (ml) |
garmin_get_food_log | One day's food log: calories and macros eaten vs. goals, per meal and food |
garmin_get_wellness_activities | Wellness sessions (e.g. Health Snapshot, breathwork) with HR, stress, HRV, SpO2 |
garmin_get_menstrual_cycle | Cycle day, period and fertile window, predictions and cycle analysis |
garmin_get_menstrual_day | One day's logged flow, symptoms and moods, with that day's cycle summary |
YYYY-MM-DD in your time zone; sleep and HRV are keyed by the wake-up date.garmin_get_activity_laps can fail on long activities on the Cloudflare free plan. See Known limitations.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.
MIT