原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Trainzilla Coach MCP

作者:Trainzilla版本 1.0.0i★ –i在云端运行
注册名称io.github.Trainzilla/trainzilla-mcp

安装

概览

作者提供的说明(英文原文)

Manage clients, plans, sessions, habits, and billing on Trainzilla via one-click OAuth.

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

你需要

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

适用于网页版、桌面版和手机版 Claude:

  1. 打开 Settings → Connectors
  2. 点击 Add custom connector
  3. 粘贴下面的地址,然后点击 Add
  4. 如果要求登录,请登录作者的服务
SettingsConnectors1+ Add2https://…3
https://api.tzilla.live/mcp

在终端中运行这条命令

claude mcp add --transport http trainzilla https://api.tzilla.live/mcp

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "trainzilla": {
      "url": "https://api.tzilla.live/mcp"
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "trainzilla": {
      "type": "http",
      "url": "https://api.tzilla.live/mcp"
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

ChatGPT 只能连接互联网上的服务器:

  1. 打开网页版 ChatGPT → Settings → Connectors (Apps)
  2. 点击 Create 或 Add(部分套餐需要先在 Advanced 中开启 Developer mode)
  3. 粘贴下面的地址,起个名字,然后保存
  4. 如果要求登录,请登录作者的服务
SettingsConnectors1+ Create2https://…3
https://api.tzilla.live/mcp

菜单名称可能因套餐和版本不同而略有差异。

你的选择通过 Cookie 保存在这台设备上,无需账户。

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 Trainzilla 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    端点有响应

    尚未检查;我们会轮流检查各个端点

  • … 尚未检查

    使用 OAuth 登录

    尚未检查;我们会轮流检查各个端点

  • … 尚未检查

    工具描述中没有隐藏指令

    尚未检查;我们会在检查端点时读取工具列表

与“其他”中的其他服务器比较i

  • 星标数多于此分类中其他 32417 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 32417 个服务器的 13% 更新
  • 基础检查结果等于或优于此分类中其他 32417 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Trainzilla Coach MCP 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。

它在我的电脑上运行还是在云端?

它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(1.0.0)于5个月前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。

有什么可以替代它?

同一分类中有:Spec Driven Development, Remote Desktop Commander, FOGA node

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

Spec Driven Development

作者:formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

在你的电脑上运行★ 440MIT14个月前更新
安装

Remote Desktop Commander

作者:desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

在云端运行★ 211昨天更新
安装

FOGA node

作者:garyyang-finchip

A Finch OG Agent cell as an MCP server: read the world, dry-run and take ERC-8414 tenders by policy.

电脑或云端今天更新
安装

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

tzilla-mcp (MVP, local only)

A local MCP server that lets an MCP client (Claude Desktop, Claude Code, Cursor, …) act as a Trainzilla coach. It wraps the existing GraphQL API at api.tzilla.live — no direct DB access — so all auth and business rules stay enforced by the backend.

Status: Local MVP — read tools, offline calculators, and **confirm-gated

write tools**, plus a resource + a prompt. Not deployed anywhere. Runs entirely

on your machine against your own coach login.

What it can do today (360 tools, 1 resource, 1 prompt)

Read (live data):

  • whoami, list_clients, get_client_profile
  • list_client_habits, get_habit_compliance, recent_habit_activity, master_habits
  • list_workout_plans, list_diet_plans
  • list_checkins, list_sessions, list_subscriptions, billing_summary

Calculators (offline, no network):

  • calc_tdee — BMR / TDEE / recommended calories
  • calc_macros — macro split by strategy (Standard 40/30/30, Pro g/kg, Keto)
  • calc_1rm — 1-rep-max (Epley) + %1RM weight suggestions

Write (confirm-gated): every write tool returns a preview unless called with confirm: true, so nothing changes by accident:

  • create_habit, create_master_habit, assign_master_habit
  • create_checkin (with questions), schedule_session
  • create_workout_plan, create_diet_plan

Switching from another platform (Nov 2026): bulk_invite_clients (up to 200 clients with name, phone and a private note that lands in the coach's client notes when they connect), the switch_to_trainzilla prompt, and the format-agnostic skill in skills/switch-to-trainzilla/ (a coach hands Claude any export, PDFs or a spreadsheet; Claude maps it, previews, then sends). No vendor presets: nothing here assumes a competitor's export layout.

Coverage added Oct 2026 (src/tools/*, each tool backed by one GraphQL operation and checked against the backend schema with scripts/validate-docs.mjs):

  • *Client tracking* — diet/workout logs, daily metrics, personal bests, exercise history, progress, health reports, intake forms, no-app (managed) clients + private portal links, contact details; coach-side logging.
  • *AI coaching* — review queue (approve/reject/requeue), trigger/offer, engagement, per-client preferences, AI-plans and self-cancel switches.
  • *Check-ins & inbox* — respond, logs, recurring schedules, clear overdue; notifications; chat room list.
  • *Business* — plans (create/prices/listing/active/session rules/delete), pause/cancel membership, desk payments, direct-pay claim confirm/reject, payments, invoices + settings, share links, Coach Pro pricing/checkout link, referral program, gym seat billing.
  • *Community, gym, workflows, catalog, profile* — community posts/comments, gym kiosks/face/check-ins/standing bookings/imports/staff/domain, workflow edit/delete + gym-wide workflows, PDF plan import, food/recipe/exercise catalog, branding/custom domain/global payout/localization, Google Calendar status, video calls.
  • *Client groups (Coach Pro / gym), Nov 2026* — list_client_groups, get_client_group, list_groups_for_client, create/update/delete group, add_group_members/remove_group_members, get_group_overview, list_group_assignments, and the fan-outs assign_workout_to_groups, assign_diet_to_groups, assign_habit_to_groups, message_groups, schedule_checkin_for_groups, book_session_for_groups, undo_group_assignment. The fan-outs preview server-side without confirm (who would get it, who is skipped and why) and are idempotent for 10 minutes. scripts/mcp-groups-e2e.mjs drives them against a local backend (TZ_API_URL=http://127.0.0.1:4100/graphql).

Validate documents against the backend schema after changing a tool:

npm run build

SCHEMA=/path/to/tzilla-be/schema.graphql GRAPHQL_PKG=/path/to/node_modules/graphql node scripts/validate-docs.mjs

Also included: upload_file (local path on stdio, or base64) → S3 key for the tools that take one (health reports, PDF plan import, member photo, receipts, community media, branding images); API-key create/list/revoke (secret shown once); Stripe/Razorpay connect (secrets masked in previews); start_google_calendar_connect (returns the sign-in URL for the coach to open).

Chat: get_client_chat_messages reads a client's DM history (needs the clientChatMessages backend query, tzilla-be#493).

Not available: taking or refunding a payment — the backend has no coach-facing refund operation, and client checkout is completed by the client's own payment.

Resource: tzilla://client/{clientId}/profile — a client's profile as JSON.

Prompt: weekly_client_review — pulls profile/habits/compliance/sessions and writes a read-only weekly review.

Setup

npm install

npm run build

Create .env (see .env.example) with a coach's tokens. Easiest source — log in to the coach web app, then in the browser console:

localStorage.getItem("token")        // -> TZ_ACCESS_TOKEN

localStorage.getItem("refreshToken") // -> TZ_REFRESH_TOKEN

The server auto-refreshes the access token via refreshAccessToken when it expires.

Run

Local (stdio) — for Claude Desktop etc.:

  • Dev: npm run dev
  • Built: npm start
  • Smoke: node scripts/smoke.mjs

Remote (Streamable HTTP) — localhost only, multi-coach:

  • Dev: npm run http · Built: npm run start:http
  • Listens on http://127.0.0.1:8787/mcp (set MCP_HTTP_PORT / MCP_HTTP_HOST).
  • Smoke: node scripts/smoke-http.mjs

Auth modes

  • stdio: uses TZ_ACCESS_TOKEN (+ TZ_REFRESH_TOKEN) from env; auto-refreshes.
  • Endpoint selection:
  • TZ_API_URL wins when set.
  • Otherwise TZ_ENVIRONMENT=staging uses https://qa-be2.tzilla.live/graphql.
  • All other cases default to https://api.tzilla.live/graphql.
  • HTTP: pass-through — each request must send the coach's API key (Authorization: Bearer tz_... or x-api-key). The server never stores tokens; it forwards the caller's key to the GraphQL API, so the backend enforces scope (multi-coach safe). API keys are minted by the backend feature below.
Backend: trainer API keys (built in tzilla-be, local — not deployed yet)
  • createApiKey(name) → returns the plaintext tz_… key once + info
  • apiKeys (list, no secret) · revokeApiKey(id)
  • Auth middleware accepts tz_ keys (header x-api-key or Bearer), resolves the owning coach, and stamps lastUsedAt. Only a SHA-256 hash is stored.

Use from Claude Desktop

Add to claude_desktop_config.json (Settings → Developer → Edit Config):

{

"mcpServers": { "tzilla-coach": { "command": "node", "args": ["C:/New folder/tzilla-mcp/dist/index.js"], "env": { "TZ_API_URL": "https://api.tzilla.live/graphql", "TZ_ACCESS_TOKEN": " ", "TZ_REFRESH_TOKEN": " " } } } }

Restart Claude Desktop, then try: *"Use tzilla-coach: who am I, and list my clients."*

Roadmap

  • Write tools (habits, check-ins, sessions, plans) — confirm-gated
  • Resource (client profile) + prompt (weekly review)
  • Wider read coverage (plans, check-ins, sessions, billing)
  • Backend trainer API keys / PAT (built in tzilla-be, local — needs PR + deploy)
  • Remote Streamable-HTTP transport (localhost, API-key pass-through auth)
  • Deploy the backend API-key feature; host the HTTP server (TLS) for real remote use
  • Full MCP OAuth 2.1 (replace pass-through) for a public connector
  • More resources (plans / check-in history) + prompts (e.g. "draft a plan")

Layout

src/

config.ts # env + tiny .env loader client.ts # GraphQL client: bearer auth + refresh-on-401 + role header calc.ts # offline coach math (ported from HealthMath/WorkoutMath) index.ts # MCP server + tool definitions (stdio) scripts/ smoke.mjs # spawns the server and lists tools (handshake check)

问 PopNx