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デプロイ前に、同じシークレットを(.dev.vars の代わりに)Cloudflare Worker に設定します:
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"]
}
}
}その他の MCP クライアント
Streamable HTTP をネイティブサポートしているクライアント(例: Cursor、Windsurf)は、/mcp URL に直接接続できます。設定形式については、そのクライアントのドキュメントを確認してください。stdio サーバーしかサポートしていないクライアントは、上記の mcp-remote プロキシパターンを使用できます。
ツール
Tool | Description |
| 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