zepp-mcp
zepp-mcp
Zepp/Amazfit 건강 및 피트니스 데이터(걸음 수, 수면, 심박수, 운동)를 MCP 클라이언트(예: Claude)용 도구로 노출하는 MCP 서버입니다. Hono로 구축되었으며 Cloudflare Workers에 배포됩니다.
계정 이메일/비밀번호를 사용해 Zepp 클라우드 API에 인증하고, 결과 세션 토큰을 Cloudflare KV 네임스페이스에 캐시하며, 캐시된 토큰이 만료되면 자동으로 재인증합니다.
요구 사항
Node.js 및 npm
Cloudflare 계정
Wrangler (개발 종속성으로 설치)
Zepp/Amazfit 계정(이메일 + 비밀번호)
Related MCP server: Oura MCP Server (Python)
설정
의존성 설치:
npm install예제에서 Wrangler 구성을 만들고 KV 네임스페이스 ID를 입력하세요:
cp wrangler.example.jsonc wrangler.jsonc아직 KV 네임스페이스가 없으면 생성한 다음 해당 ID를
wrangler.jsonc에 붙여넣으세요:npx wrangler kv namespace create ZEPP_KV예제에서 로컬 시크릿 파일을 만드세요:
cp .dev.vars.example .dev.varsZEPP_EMAIL과ZEPP_PASSWORD에 Zepp 계정 자격 증명을 입력하세요.
개발
서버를 로컬에서 실행:
npm run devMCP 엔드포인트는 /mcp(Streamable HTTP 전송)에서 제공됩니다. /는 기본 상태 JSON 페이로드를 반환합니다.
프로젝트 타입 검사:
npm run typecheck배포
npm run deploy배포 전에 Cloudflare Worker에 동일한 시크릿을 설정하세요(.dev.vars 대신):
npx wrangler secret put ZEPP_EMAIL
npx wrangler secret put ZEPP_PASSWORD배포 후 Wrangler는 Worker의 공개 URL(예: https://zepp-mcp.<your-subdomain>.workers.dev)을 출력합니다. MCP 엔드포인트는 해당 URL에 /mcp를 더한 값입니다(예: https://zepp-mcp.<your-subdomain>.workers.dev/mcp). 이 엔드포인트에는 기본 제공 인증이 없습니다. URL을 아는 사람은 누구나 호출할 수 있으므로, 이 점이 중요하다면 비밀로 취급하거나 자체 인증을 앞에 추가하세요.
배포된 MCP 서버 사용하기
Streamable HTTP 전송을 지원하는 모든 MCP 클라이언트를 https://<your-worker-url>/mcp에 연결하세요.
Claude Code
claude mcp add --transport http zepp https://zepp-mcp.<your-subdomain>.workers.dev/mcpClaude Desktop
Claude Desktop은 로컬 stdio 프록시(mcp-remote)를 통해 원격 HTTP 서버에 연결합니다. claude_desktop_config.json에 다음을 추가하세요:
{
"mcpServers": {
"zepp": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://zepp-mcp.<your-subdomain>.workers.dev/mcp"]
}
}
}구성 편집 후 Claude Desktop을 다시 시작하세요. 그러면 도구 선택기에 zepp_* 도구가 표시됩니다.
기타 MCP 클라이언트
기본 Streamable HTTP를 지원하는 모든 클라이언트(예: Cursor, Windsurf)는 /mcp URL을 직접 가리키면 됩니다. 해당 클라이언트 문서에서 구성 형식을 확인하세요. stdio 서버만 지원하는 클라이언트는 위에 표시된 mcp-remote 프록시 패턴을 사용할 수 있습니다.
도구
도구 | 설명 |
| Zepp 클라우드 로그인 상태 및 사용자 ID 확인 |
| 계정에 페어링된 Zepp/Amazfit 기기 나열 |
| 날짜 범위에 대한 일별 걸음 수, 거리, 칼로리 및 수면 요약 |
| 최근 운동/스포츠 세션 나열(달리기, 걷기, 사이클링 등) |
|
|
| 사용자 프로필 데이터(체중, 키, 생일, 성별 등) |
| 날짜 범위에 대한 심박수 측정값 |
| 날짜 범위에 대한 야간 수면 단계 분석 |
| 젖산 역치 데이터(사용 가능한 경우) |
날짜 범위 도구는 선택적 from_date / to_date를 YYYY-MM-DD 형식으로 받으며, 기본값은 최근 30일입니다.
프로젝트 구조
src/
index.ts Hono app, MCP server wiring, /mcp route
tools/index.ts MCP tool registrations
zepp/
auth.ts Zepp login flow (token exchange + login)
client.ts ZeppClient: session caching + data API calls
constants.ts Zepp API URLs, headers, payload templates
types.ts Shared Zepp types
lib/
crypto.ts AES-CBC helper used to encrypt the login token request
kv-cache.ts Session caching in Cloudflare KV참고
세션 토큰은 KV에 24시간 동안 캐시되며 401/403 응답 시 자동으로 갱신됩니다.
wrangler.jsonc와.dev.vars는 KV 네임스페이스 ID와 계정 자격 증명을 보관하므로 gitignore에 포함됩니다. 커밋된.example파일을 템플릿으로 사용하세요.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Pace is a remote MCP server that exposes wearable and fitness data to Claude via the Model Context Protocol. It connects to Garmin, Oura, Whoop, Polar, Fitbit and 20+ devices and provides 15 tools for querying sleep, activity, recovery, and training data. Hosted on Google Cloud Run, OAuth 2.1 authentication, Streamable HTTP transport. Instructions: First you need to create an account at: https://pacetraining.co and connect your wearables. After that you can connect the remote Server via Custom Connector in Claude and OAuth 2.1 Flow startet.
Private Apple Health metrics and workout detail for ChatGPT, Claude, and any MCP client.
Multi-tenant hosted MCP server for Oura Ring — 21 read-only tools, OAuth per user.
Hosted MCP server with managed OAuth for 15+ toolkits: Google Workspace, Fitbit, Oura, Kalshi, etc.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides access to Ultrahuman health and fitness data through standardized MCP tools, enabling AI assistants to retrieve metrics like sleep, movement, heart rate, and glucose.1MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to access Oura Ring health data including sleep, readiness, activity, heart rate, and workouts through MCP tools with OAuth2 authentication.1MIT
- AlicenseNot gradedqualityBmaintenanceExposes personal health data (recovery, sleep, strain, etc.) as MCP tools for AI agents to query and analyze.2MIT
- FlicenseNot gradedqualityBmaintenanceExposes Garmin Connect health data (steps, sleep, HR, HRV, stress, activities, etc.) as tools for MCP-compatible clients like Claude.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Adisudirta/zepp-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server