Medplum MCP
Securely access and manage FHIR healthcare data stored in Medplum.
Intervals.icu MCP เป็นเซิร์ฟเวอร์ MCP ที่ให้ AI อ่านและเขียนข้อมูลใน Intervals.icu ได้ ทั้งกิจกรรม การบันทึกสุขภาพประจำวัน ปฏิทิน อุปกรณ์ และการสร้างเวิร์กเอาต์
แปลอัตโนมัติจากคำอธิบายของผู้ทำ · ทีมยังไม่ได้ตรวจ
Read/write Intervals.icu MCP server: activities, wellness, calendar, gear, and workouts.เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ผลตรวจผ่าน 3/3 · ทำงานบนเครื่องคุณ · ✓ ตรวจคำสั่งแล้ว 13 พ.ย. 2569
ขั้นแรก: คุณใช้ AI ตัวไหน
เลือกแอปที่คุณใช้ ขั้นตอนจะขึ้นด้านล่าง
ต่อกับ Claude ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Intervals Icu MCP (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (INTERVALS_ICU_ATHLETE_ID) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว) · ใช้ได้เฉพาะแอป Claude บนคอม (Windows หรือ Mac) ไม่ใช่บนเว็บหรือมือถือ
ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Python (uv)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย
INTERVALS_ICU_ATHLETE_ID ID นักกีฬาของคุณใน Intervals.icu (เช่น i12345) คำอธิบายแปลอัตโนมัติ ชื่อตัวแปรคงตามต้นฉบับ ถ้าไม่แน่ใจให้ดูต้นฉบับ
SettingsDeveloperEdit Config
{
"mcpServers": {
"intervals-icu": {
"command": "uvx",
"args": [
"intervals-icu-mcp"
],
"env": {
"INTERVALS_ICU_API_KEY": "ใส่ค่าของคุณ",
"INTERVALS_ICU_ATHLETE_ID": "ใส่ค่าของคุณ"
}
}
}
}วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ใช้ Intervals Icu MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude บอกว่ากำลังใช้ Intervals Icu MCP หรือมีชื่อเครื่องมือของ Intervals Icu MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ChatGPT ยังต่อ Intervals Icu MCP ไม่ได้
Intervals Icu MCP ต้องติดตั้งในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะตัวที่ทำงานบนเว็บ
ก · ใช้แอปที่ต่อ Intervals Icu MCP ได้
ข · ตัวอื่นในหมวด คลินิกและสุขภาพ ที่ต่อกับ ChatGPT ได้
เลือกจากตัวที่ใช้มากในหมวดเดียวกัน เฉพาะตัวที่ต่อด้วยที่อยู่ได้โดยไม่ต้องใส่คีย์
ต่อกับ Claude Code ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Intervals Icu MCP (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (INTERVALS_ICU_ATHLETE_ID) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว)
ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Python (uv)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย
INTERVALS_ICU_ATHLETE_ID ID นักกีฬาของคุณใน Intervals.icu (เช่น i12345) คำอธิบายแปลอัตโนมัติ ชื่อตัวแปรคงตามต้นฉบับ ถ้าไม่แน่ใจให้ดูต้นฉบับ
Mac: กด Command+Space พิมพ์ Terminal · Windows: เปิด PowerShell
claude mcp add --scope user intervals-icu --env INTERVALS_ICU_API_KEY='ใส่ค่าของคุณ' --env INTERVALS_ICU_ATHLETE_ID='ใส่ค่าของคุณ' -- uvx intervals-icu-mcpแก้ “ใส่ค่าของคุณ” เป็นคีย์ของคุณก่อนกด Enter
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ต้องเห็น Intervals Icu MCP ในรายการและขึ้นว่าเชื่อมต่อแล้ว
ใช้ Intervals Icu MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude Code บอกว่ากำลังใช้ Intervals Icu MCP หรือมีชื่อเครื่องมือของ Intervals Icu MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ Cursor ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Intervals Icu MCP (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (INTERVALS_ICU_ATHLETE_ID) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว)
ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Python (uv)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย
INTERVALS_ICU_ATHLETE_ID ID นักกีฬาของคุณใน Intervals.icu (เช่น i12345) คำอธิบายแปลอัตโนมัติ ชื่อตัวแปรคงตามต้นฉบับ ถ้าไม่แน่ใจให้ดูต้นฉบับ
ในค่าตั้งของ Intervals Icu MCP ช่อง INTERVALS_ICU_API_KEY, INTERVALS_ICU_ATHLETE_ID ยังว่าง ใส่คีย์ของคุณแล้วบันทึก
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ใช้ Intervals Icu MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Cursor บอกว่ากำลังใช้ Intervals Icu MCP หรือมีชื่อเครื่องมือของ Intervals Icu MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Cursor เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ VS Code ได้ แต่ต้องเตรียมก่อน
ต้องมีคีย์ของ Intervals Icu MCP (สร้างที่เว็บของผู้ทำ) · ต้องกรอกค่าตั้ง 1 ช่อง (INTERVALS_ICU_ATHLETE_ID) · ต้องลง Python (uv) ในเครื่องก่อน (ทำครั้งเดียว)
ทำครั้งเดียว ใช้ได้กับทุกตัวที่ต้องใช้ Python (uv)
เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ
วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง
ค่าเหล่านี้เป็นค่าตั้งของโปรแกรม ไม่ใช่คีย์ ไม่ต้องสมัครอะไร ใส่ตามที่ผู้ทำอธิบาย
INTERVALS_ICU_ATHLETE_ID ID นักกีฬาของคุณใน Intervals.icu (เช่น i12345) คำอธิบายแปลอัตโนมัติ ชื่อตัวแปรคงตามต้นฉบับ ถ้าไม่แน่ใจให้ดูต้นฉบับ
ในค่าตั้งของ Intervals Icu MCP ช่อง INTERVALS_ICU_API_KEY, INTERVALS_ICU_ATHLETE_ID ยังว่าง ใส่คีย์ของคุณแล้วบันทึก
วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร
ใช้ Intervals Icu MCP บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า VS Code บอกว่ากำลังใช้ Intervals Icu MCP หรือมีชื่อเครื่องมือของ Intervals Icu MCP ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ VS Code เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
โปรแกรมอื่นที่ใช้ MCP ได้ เช่น Windsurf, Zed หรือ Gemini CLI มีวิธีเพิ่มต่างกัน ดูวิธีของแต่ละตัวในหน้ารวมโปรแกรม
ค่าตั้งแบบไฟล์ JSON อยู่ในหัวข้อ “สำหรับคนเขียนโค้ด” ด้านล่าง
Claude Code
claude mcp add --scope user intervals-icu --env INTERVALS_ICU_API_KEY='ใส่ค่าของคุณ' --env INTERVALS_ICU_ATHLETE_ID='ใส่ค่าของคุณ' -- uvx intervals-icu-mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"intervals-icu": {
"command": "uvx",
"args": [
"intervals-icu-mcp"
],
"env": {
"INTERVALS_ICU_API_KEY": "ใส่ค่าของคุณ",
"INTERVALS_ICU_ATHLETE_ID": "ใส่ค่าของคุณ"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"intervals-icu": {
"command": "uvx",
"args": [
"intervals-icu-mcp"
],
"env": {
"INTERVALS_ICU_API_KEY": "ใส่ค่าของคุณ",
"INTERVALS_ICU_ATHLETE_ID": "ใส่ค่าของคุณ"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"intervals-icu": {
"type": "stdio",
"command": "uvx",
"args": [
"intervals-icu-mcp"
],
"env": {
"INTERVALS_ICU_API_KEY": "ใส่ค่าของคุณ",
"INTERVALS_ICU_ATHLETE_ID": "ใส่ค่าของคุณ"
}
}
}
}INTERVALS_ICU_API_KEY ความลับ จำเป็น envINTERVALS_ICU_ATHLETE_ID จำเป็น envคำอธิบายแปลอัตโนมัติ ชื่อตัวแปรคงตามต้นฉบับ ถ้าไม่แน่ใจให้ดูต้นฉบับ
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
pypi: intervals-icu-mcpดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569
ติดตั้งบนเครื่องได้ใน
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 14 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub hhopke ซึ่งเป็นเจ้าของ repo
มีการแก้โค้ดล่าสุด วันนี้
ใช้ MIT
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
ถาม แชร์เคล็ดลับ หรือแจ้งว่าใช้ไม่ได้ เรียงตามที่คนกดว่ามีประโยชน์
ยังไม่มีใครโพสต์ ถามหรือแชร์เป็นคนแรกได้เลย
ข้อความในส่วนนี้เขียนโดยผู้ใช้ ไม่ใช่ทีม PopNx
ยังไม่มีรีวิว
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: INTERVALS_ICU_API_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด วันนี้ และส่งรุ่นล่าสุด (5.9.1) เข้า registry 6 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย
ในหมวดเดียวกันมี Medplum MCP, Mirobody, Apple Health
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Securely access and manage FHIR healthcare data stored in Medplum.
Lab results to LOINC codes and UCUM units, symptoms and diagnoses to ICPC-3. Offline, no API key.
Local-first Apple Health MCP server for questions about your sleep, workouts and heart data.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
A Model Context Protocol (MCP) server for Intervals.icu integration. Access your training data, wellness metrics, and performance analysis through Claude, ChatGPT, and other LLMs.
Originally based on eddmann/intervals-icu-mcp (MIT licensed). This project is an independent continuation with significant bug fixes and new features — see the release notes for details.
73 tools spanning activities, activity analysis, activity messages, athlete profile, wellness, events/calendar, performance curves, workout library, gear, sport settings, and custom items — plus 4 MCP Resources (athlete profile, workout syntax, event categories, custom item schemas) and 9 MCP Prompts (training analysis, recovery check, weekly planning, and more). See Available Tools for the per-category breakdown.
Or for Claude Desktop, in 30 seconds:
{
"mcpServers": { "intervals-icu": { "command": "uvx", "args": ["intervals-icu-mcp"], "env": { "INTERVALS_ICU_API_KEY": "your-api-key-here", "INTERVALS_ICU_ATHLETE_ID": "i123456" } } } }
Prefer Claude Code, Cursor, or ChatGPT? See Client Configuration. Want to run from source or with Docker? See Installation & Setup.
Install uv — it handles Python, dependencies, and execution in one tool. curl -LsSf https://astral.sh/uv/install.sh | sh on macOS/Linux (or brew install uv; Homebrew no longer installs on Intel Macs), or powershell -c "irm https://astral.sh/uv/install.ps1 | iex" on Windows. From there, uvx fetches Python and the package automatically. If your MCP client can't find uvx, set command to the full path that which uvx prints. Docker is also supported as an alternative.
Before installation, obtain your Intervals.icu API key:
i123456).Nothing to install separately if you use the recommended setup. uvx (which ships with uv) automatically downloads and caches the intervals-icu-mcp package the first time your MCP client launches it — just paste the config snippet from Client Configuration into your client and you're done.
Alternative: from source — for development or local modifications
git clone https://github.com/hhopke/intervals-icu-mcp.git
cd intervals-icu-mcp uv sync uv run intervals-icu-mcp-auth # interactive credential setup; or create .env manually:
Then point your MCP client at this checkout — see the From source snippet inside each client below.
Alternative: Docker
docker build -t intervals-icu-mcp .
touch intervals-icu-mcp.env # pre-create the file so Docker mounts it as a file, not a dir docker run -it --rm \ -v "$(pwd)/intervals-icu-mcp.env:/app/.env" \ --entrypoint= intervals-icu-mcp:latest \ python -m intervals_icu_mcp.scripts.setup_auth
Or create intervals-icu-mcp.env manually (same format as the .env above).
Then point your MCP client at the Docker image — see the Docker snippet inside each client below.
The server speaks MCP over stdio and works with any compliant client. Click a client to expand. If you followed Quick Start (uvx), use the first config block; if you used the source or Docker alternative above, use the matching variant inside the same collapsible.
Claude Desktop
Add to your configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json{
"mcpServers": { "intervals-icu": { "command": "uvx", "args": ["intervals-icu-mcp"], "env": { "INTERVALS_ICU_API_KEY": "your-api-key-here", "INTERVALS_ICU_ATHLETE_ID": "i123456" } } } }
From source (requires git clone + uv sync + uv run intervals-icu-mcp-auth):
{
"mcpServers": { "intervals-icu": { "command": "uv", "args": ["run", "--directory", "/ABSOLUTE/PATH/TO/intervals-icu-mcp", "intervals-icu-mcp"] } } }
Docker:
{
"mcpServers": { "intervals-icu": { "command": "docker", "args": ["run", "-i", "--rm", "-v", "/ABSOLUTE/PATH/TO/intervals-icu-mcp.env:/app/.env", "intervals-icu-mcp:latest"] } } }
Claude Code
Register the server as a user-scoped MCP server:
claude mcp add intervals-icu --scope user \
--env INTERVALS_ICU_API_KEY=your-key \ --env INTERVALS_ICU_ATHLETE_ID=i123456 \ -- uvx intervals-icu-mcp
Then in any Claude Code session, run /mcp to confirm intervals-icu is connected.
Cursor
Add to ~/.cursor/mcp.json (or the project-local .cursor/mcp.json):
{
"mcpServers": { "intervals-icu": { "command": "uvx", "args": ["intervals-icu-mcp"], "env": { "INTERVALS_ICU_API_KEY": "your-api-key-here", "INTERVALS_ICU_ATHLETE_ID": "i123456" } } } }
Restart Cursor and open *Settings → MCP* to verify the server is listed.
ChatGPT — requires a paid plan, Developer Mode, and a publicly reachable URL (walkthrough not yet verified end-to-end)
ChatGPT's custom MCP connector flow requires running the server over HTTP and exposing it via a tunnel, then registering the URL in ChatGPT's Developer Mode settings. See docs/chatgpt-connector.md for the full walkthrough, plan-tier requirements, and security notes.
Ask Claude to interact with your Intervals.icu data in natural language. A few starter prompts:
"Show me my activities from the last 30 days"
"Am I overtraining? Check my CTL, ATL, and TSB" "How's my recovery this week? Show HRV and sleep trends" "Create a sweet spot cycling workout for tomorrow" "What's my 20-minute power and FTP?"
For the full catalogue of example prompts by category, see docs/examples.md.
73 tools, 4 resources, and 9 prompt templates. One-line summary below — full reference in docs/tools.md.
| Category | Tools | Summary |
|---|---|---|
| Activities | 13 | Query, search, update, delete, download activities |
| Activity Analysis | 9 | Streams, window stats, intervals, best efforts, histograms |
| Activity Messages | 4 | Read, post, edit, and delete notes/comments/coach feedback on activities |
| Athlete | 5 | Accessible athletes, profile and athlete notes, CTL/ATL/TSB analysis, fitness chart time-series |
| Wellness | 3 | HRV, sleep, recovery metrics |
| Events / Calendar | 13 | Planned workouts, races, notes, ATP periodization (bulk ops supported) |
| Performance / Curves | 3 | Power, HR, and pace curves with zones |
| Workout Library | 8 | Browse, create, and delete folders and training plans; create (incl. bulk), update, and delete library workouts |
| Gear Management | 6 | Track equipment and maintenance reminders |
| Sport Settings | 4 | FTP, FTHR, pace thresholds, and zones |
| Custom Items | 5 | User customizations: custom charts, fields, zones, dashboard panels |
Destructive tools are gated by the optional INTERVALS_ICU_DELETE_MODE env var (safe / full / none, default safe) — a server-side gate outside the model's reach, so unregistered tools can't be invoked. See docs/tools.md for the full mode table, response envelope, and TZ-buffer rationale.
The server runs over stdio by default — the right transport for local clients like Claude Desktop, Claude Code, and Cursor. HTTP and SSE transports are available for remote or hosted use.
⚠️ MCP has no built-in authentication — never expose an HTTP-mode server to an untrusted network without a tunnel (Tailscale, Cloudflare Tunnel) or an authenticating reverse proxy.
See docs/remote-deployment.md for transport flags and the full security model.