Medplum MCP
Securely access and manage FHIR healthcare data stored in Medplum.
ยังไม่มีคำอธิบายภาษาไทย ดูข้อเท็จจริงด้านล่าง หรือเปิดคำอธิบายต้นฉบับจากผู้ทำ
Chat forgets your workouts. AIm remembers them for Claude and ChatGPT: sets, weights, 1RM, volume.เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ผลตรวจผ่าน 4/5 · สิ่งที่คุณถามผ่านเซิร์ฟเวอร์ของผู้ทำ (aim-journal.com)
ขั้นแรก: คุณใช้ AI ตัวไหน
เลือกแอปที่คุณใช้ ขั้นตอนจะขึ้นด้านล่าง
ต่อกับ Claude ได้ · ประมาณ 2 นาที
ไม่ต้องใช้คีย์ ไม่ต้องลงโปรแกรม · ตั้งครั้งเดียวที่ claude.ai หรือแอปบนคอม แล้วใช้ในแชตได้ · บัญชีฟรีเพิ่มได้ 1 ตัว · แผน Team/Enterprise ให้เจ้าของ (Owner) เป็นคนเพิ่ม
CustomizeConnectors
คัดลอกจากที่นี่ไปวางในช่องชื่อเดียวกันบนหน้าจอของ Claude แล้วกด Continue
AIm Workout Journalhttps://aim-journal.com/mcpหัวข้อ Authentication ปล่อยตามที่ Claude ตรวจเจอ แล้วกด Add
+ConnectorsAIm Workout Journal
ใช้ AIm Workout Journal บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude บอกว่ากำลังใช้ AIm Workout Journal หรือมีชื่อเครื่องมือของ AIm Workout Journal ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ ChatGPT ได้ เฉพาะแผนองค์กร
ใช้ได้กับ ChatGPT Business, Enterprise หรือ Edu บนเว็บ และแอดมินหรือเจ้าของ workspace ต้องเป็นคนเพิ่ม · ถ้าใช้ Free, Plus หรือ Pro: ChatGPT แผนของคุณยังต่อ MCP เองไม่ได้
Plugins+Add custom MCP server
ใส่ชื่อ แล้ววางที่อยู่ใต้ Connection ติ๊กยอมรับคำเตือน แล้วกด Create as a plugin
AIm Workout Journalhttps://aim-journal.com/mcpเปิดแชตใหม่แล้วเลือก AIm Workout Journal จากรายการปลั๊กอินก่อนพิมพ์
ใช้ AIm Workout Journal บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า ChatGPT บอกว่ากำลังใช้ AIm Workout Journal หรือมีชื่อเครื่องมือของ AIm Workout Journal ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ OpenAI เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ Claude Code ได้ · ประมาณ 2 นาที
ไม่ต้องใช้คีย์ ไม่ต้องลงโปรแกรม
Mac: กด Command+Space พิมพ์ Terminal · Windows: เปิด PowerShell
claude mcp add --transport http --scope user aim https://aim-journal.com/mcpต้องเห็น AIm Workout Journal ในรายการและขึ้นว่าเชื่อมต่อแล้ว
ใช้ AIm Workout Journal บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Claude Code บอกว่ากำลังใช้ AIm Workout Journal หรือมีชื่อเครื่องมือของ AIm Workout Journal ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ Cursor ได้ · ประมาณ 2 นาที
ไม่ต้องใช้คีย์ ไม่ต้องลงโปรแกรม
ใช้ AIm Workout Journal บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า Cursor บอกว่ากำลังใช้ AIm Workout Journal หรือมีชื่อเครื่องมือของ AIm Workout Journal ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Cursor เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
ต่อกับ VS Code ได้ · ประมาณ 2 นาที
ไม่ต้องใช้คีย์ ไม่ต้องลงโปรแกรม
ใช้ AIm Workout Journal บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง✓ ถ้า VS Code บอกว่ากำลังใช้ AIm Workout Journal หรือมีชื่อเครื่องมือของ AIm Workout Journal ขึ้นในคำตอบ แปลว่าต่อสำเร็จ
ชื่อเมนูตรวจกับหน้าช่วยเหลือของ VS Code เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป
โปรแกรมอื่นที่ใช้ MCP ได้ เช่น Windsurf, Zed หรือ Gemini CLI มีวิธีเพิ่มต่างกัน ดูวิธีของแต่ละตัวในหน้ารวมโปรแกรม
ที่อยู่สำหรับโปรแกรมที่ต่อผ่านเว็บ
https://aim-journal.com/mcpค่าตั้งแบบไฟล์ JSON อยู่ในหัวข้อ “สำหรับคนเขียนโค้ด” ด้านล่าง
Claude Code
claude mcp add --transport http --scope user aim https://aim-journal.com/mcpCursor (~/.cursor/mcp.json)
{
"mcpServers": {
"aim": {
"url": "https://aim-journal.com/mcp"
}
}
}VS Code (mcp.json)
{
"servers": {
"aim": {
"type": "http",
"url": "https://aim-journal.com/mcp"
}
}
}ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569
ต่อผ่านคลาวด์ได้ใน
ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast
server ให้ล็อกอินก่อนจึงจะแสดงรายการเครื่องมือ
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 12 พ.ย. 2569
ผู้ลงทะเบียน (aim-journal.com) ไม่ใช่เจ้าของ repo (persistmcp) อาจเป็นคนอื่นที่นำมาลงต่อ
มีการแก้โค้ดล่าสุด 40 วันที่ผ่านมา
ใช้ MIT
ตอบกลับใน 213 ms (HTTP 401)
ประกาศวิธีล็อกอินแบบ OAuth ให้โปรแกรม AI พาไปล็อกอินเอง
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
ถาม แชร์เคล็ดลับ หรือแจ้งว่าใช้ไม่ได้ เรียงตามที่คนกดว่ามีประโยชน์
ยังไม่มีใครโพสต์ ถามหรือแชร์เป็นคนแรกได้เลย
ข้อความในส่วนนี้เขียนโดยผู้ใช้ ไม่ใช่ทีม PopNx
ยังไม่มีรีวิว
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 4 จาก 5 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ
repo บน GitHub มีการแก้โค้ดล่าสุด 40 วันที่ผ่านมา และส่งรุ่นล่าสุด (1.3.0) เข้า registry 25 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT แผน Business ขึ้นไป
ในหมวดเดียวกันมี 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 workout tracker your AI assistant writes to. AIm is an MCP server plus a mobile web app (PWA): you describe a session in Claude or ChatGPT in your own words, the assistant logs it through MCP, and the app shows the program, the history, records, estimated 1RM and per muscle load. The server hands the assistant your goal, injuries and logged weights as data, so it plans from your training instead of generic advice.
Live at aim-journal.com. Free, and it runs inside the AI subscription you already pay for rather than being a second one. Guides: connect a workout tracker over MCP, AI personal trainer, 1RM calculator.
There are two ways in, on the same host, and both resolve to the same user_id:
https://<app>/mcp OAuth 2.1 — add as a connector, approve in the browser
https:// /{token} mobile web app / installable PWA https:// /{token}/mcp the original connector address, still supported https:// /{token}/api/* read only JSON the UI consumes
OAuth is what a connector uses now. The server is an OAuth 2.1 resource server: an unauthenticated call gets a 401 carrying RFC 9728 protected-resource metadata, the client discovers the authorization server from it, registers itself dynamically, and the user approves on a consent screen this app serves. Supabase Auth is the authorization server, so no authorization codes or access tokens are stored here; the access token's sub is mapped to an account through users.supabase_user_id. Nothing secret is pasted by hand.
The URL token predates it and still works, which is why every link already in someone's inbox kept working when OAuth landed. A token resolver middleware maps the leading path segment to a user and scopes every query by user_id; the OAuth path sets the same context variable from a verified token instead. Two doors, one scoping rule.
20 tools over stateless streamable HTTP (FastMCP):
log_session, update_session, update_set, delete_session, import_document (paste an export from another tracker or a photo of a notebook page).get_sessions, get_session, get_stats (volume, progression, estimated 1RM via Epley), get_program, get_goals, get_body_metrics.search_exercise_pool (a curated global pool with illustrations), list_exercises, upsert_exercise.get_coaching_context is the important one. It returns data only: this user's goal, experience, equipment, injuries (with the movement patterns that load them), recent working weights, goal-matched planning ranges and the intake state, for the task at hand (next workout, new program, weekly review), so the assistant plans from data rather than from nothing. How the assistant uses it lives in the server's MCP instructions. review_program_draft, update_coach_profile, upsert_goal, log_coach_event, log_body_metric keep that context current.api/index.py Vercel entrypoint (must stay at repo root, see below). Imports backend/src.
requirements.txt Vercel's Python build reads this (must also stay at repo root). backend/ Python package, tests, scripts, DB migrations. web/ Vite + React SPA (own package.json, own dev server) and the static guide pages.
api/index.py and requirements.txt cannot move: Vercel's zero config Python builder only auto detects functions under a root level api/, and only installs a root level requirements.txt alongside them. Everything else in backend/ (pyproject.toml, uv.lock, tests, scripts, supabase/) is hidden from the Vercel build by .vercelignore, so Vercel treats the repo as a static SPA plus one Python function.
One thing to know before you go reading: some code comments cite internal planning documents by path, such as docs/COACHING_PLAN.md, docs/TEST_CASES.md or docs/DEPLOYMENT.md. Those are product and research notes that are not published here, so the paths will not resolve. Nothing in the code depends on them; they are provenance for a decision, not a dependency. Everything you need to build, test and run what is in this repository is in this README.
backend/): Python 3.12, FastMCP (stateless HTTP), psycopg3, Supabase Postgres (transaction pooler). MCP and the read API live in backend/src/workout_storage/, served by api/index.py.web/): Vite, React, Tailwind v4, shadcn/ui, recharts, React Query, vite-plugin-pwa. Data layer in web/src/app/lib/ (token to api to adapter to hooks). The guide pages under web/guides/ are generated to static HTML at build time and ship no bundle.vercel.json routes mcp, api and cron to the function and everything else to the SPA.cd web
npm install echo 'VITE_API_ORIGIN=https://workout-storage.vercel.app' > .env.local # dev against prod API npm run dev # http://localhost:5173/{token} npm run test # vitest: pure function + component tests npx playwright install chromium # one time, before the first test:e2e run npm run test:e2e # Playwright, against /demo (no backend needed)
cd backend
uv sync --extra dev # install deps cp ../.env.example ../.env # fill DATABASE_URL etc. (kept at repo root, shared by all tooling) uv run pytest # unit + integration + e2e uv run ruff check . && uv run mypy .
Create a user (prints the token to open in the browser and to paste into an assistant):
cd backend
uv run python scripts/create_user.py --name "Alex"
Everything needed is here, but this is the source of a hosted service rather than a turnkey self host kit: you supply a Supabase project (migrations in backend/supabase/migrations/), a Vercel project, and the environment variables listed in .env.example. Analytics, email and backup integrations are optional and stay dormant without their keys.
Exercise illustrations are third party works under CC BY-SA, each credited in web/ATTRIBUTIONS.md. They keep their own license regardless of the license on this repository.
MIT, see LICENSE. The exercise illustrations are the one exception, see Attribution above.