protogrid

Search / io.github.mcp-dir/mfit-mcp

MFIT Personal

R0· no sign-in

Client, workout, body composition, retention and finance management for personal trainers.

v0.1.0 · active · repository · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality85good
Trust87of 100
Uptime, 30 days96%
Latency p50190 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "mfit-mcp": {
      "type": "http",
      "url": "https://api.mcp.ai/p_mfit"
    }
  }
}
claude mcp add --transport http mfit-mcp https://api.mcp.ai/p_mfit
[mcp_servers.mfit-mcp]
url = "https://api.mcp.ai/p_mfit"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "mfit-mcp": {
      "type": "remote",
      "url": "https://api.mcp.ai/p_mfit",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "mfit-mcp": {
      "type": "http",
      "url": "https://api.mcp.ai/p_mfit"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=mfit-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYXBpLm1jcC5haS9wX21maXQifQ%3D%3D"
}
{
  "servers": {
    "mfit-mcp": {
      "type": "http",
      "url": "https://api.mcp.ai/p_mfit"
    }
  }
}
{
  "mcpServers": {
    "mfit-mcp": {
      "httpUrl": "https://api.mcp.ai/p_mfit"
    }
  }
}
extensions:
  "mfit-mcp":
    enabled: true
    name: "mfit-mcp"
    type: streamable_http
    uri: "https://api.mcp.ai/p_mfit"
    timeout: 300

Quality 85 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene86 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length8 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations48 of 48 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • warn
    tools.token_costabout 12,484 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changesno tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

48 tools, about 12,484 tokens to load them all · tool set a0f1297d526c · checked 2026-10-19 10:52 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 87 / 100

provenance80
liveness99
freshness65
hygiene100

+repository +namespace-matches-repo +reachable +uptime-96% ~updated-131d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://api.mcp.ai/p_mfit streamable-httpnoneyes96%190 ms2025-11-252026-10-19

Tools (48)

authenticateMCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "<jwt>" } after the user pastes, or with no args to get the link.
connectread-onlyReturns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.
marketplaceThe official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/<slug> link that opens without login.
mfit_client_files_deletedestructiveDelete a student file (irreversible). Bulk support: accepts client_ids, file_ids for batched execution.
mfit_client_files_getread-onlyRead student files/attachments (diet plans, exams, planners, misc). Actions: list (all files for a student), get (file detail with sharing info). [Flattened action: get] Bulk support: accepts client_ids, file_ids for batched execution.
mfit_client_files_listread-onlyRead student files/attachments (diet plans, exams, planners, misc). Actions: list (all files for a student), get (file detail with sharing info). [Flattened action: list] Bulk support: accepts client_ids, file_ids for batched execution.
mfit_client_files_writeUpdate a student file: rename or change sharing settings. Bulk support: accepts file_ids for batched execution.
mfit_client_getread-onlyRead students in MFIT. Actions: list — paginated list, filter by status/name get — full student profile list_groups — trainer's custom groups (DYNAMIC — call before creating/updating a student to get valid groupId) Field types — STATIC: status (0=active/1=inactive). [Flattened action: get] Bulk support: accepts client_ids for batched execution.
mfit_client_listread-onlyRead students in MFIT. Actions: list — paginated list, filter by status/name get — full student profile list_groups — trainer's custom groups (DYNAMIC — call before creating/updating a student to get valid groupId) Field types — STATIC: status (0=active/1=inactive). [Flattened action: list] Bulk support: accepts client_ids for batched execution.
mfit_client_list_groupsread-onlyRead students in MFIT. Actions: list — paginated list, filter by status/name get — full student profile list_groups — trainer's custom groups (DYNAMIC — call before creating/updating a student to get valid groupId) Field types — STATIC: status (0=active/1=inactive). [Flattened action: list_groups] Bulk support: accepts client_ids for batched execution.
mfit_client_write_createCreate / update / deactivate students in MFIT. Actions: create — register new student (name, email, phone required) update — edit student fields (partial update) deactivate — set student inactive (reversible via update) Field types — STATIC: gender (m/f). DYNAMIC: groupId (per-trainer, call mfit_client list_groups first). [Flattened action: create] Bulk support: accepts client_ids for batched execution.
mfit_client_write_deactivateCreate / update / deactivate students in MFIT. Actions: create — register new student (name, email, phone required) update — edit student fields (partial update) deactivate — set student inactive (reversible via update) Field types — STATIC: gender (m/f). DYNAMIC: groupId (per-trainer, call mfit_client list_groups first). [Flattened action: deactivate] Bulk support: accepts client_ids for batched execution.
mfit_client_write_updateCreate / update / deactivate students in MFIT. Actions: create — register new student (name, email, phone required) update — edit student fields (partial update) deactivate — set student inactive (reversible via update) Field types — STATIC: gender (m/f). DYNAMIC: groupId (per-trainer, call mfit_client list_groups first). [Flattened action: update] Bulk support: accepts client_ids for batched execution.
mfit_get_anamnesis_modelsread-onlyGet available anamnesis form templates (e.g. PAR-Q) that can be sent to students.
mfit_get_client_countread-onlyGet a summary count of active and inactive students.
mfit_get_client_evaluationsread-onlyGet evaluations for one or many students: heart rate zones, VO2max, and training frequency.
mfit_get_client_notesread-onlyRead notes/observations for one or many students (bulk via client_ids).
mfit_get_client_notes_writeSave (overwrite) notes/observations for a student. Replaces any existing notes text. Bulk support: accepts client_ids for batched execution.
mfit_get_client_workoutsread-onlyGet all workout routines assigned to one or many students. Supports bulk via client_ids.
mfit_get_exercise_favoritesread-onlyGet the trainer's favorite exercises.
mfit_get_feedbacksread-onlyGet all unread workout feedbacks from students. Each feedback includes: student name, Borg RPE score (1-10 perceived effort), text feedback, workout date/time, duration. Shows which students completed workouts and how they felt.
mfit_get_financesread-onlyGet financial overview: transactions in date range, wallet/payment info, seller status.
mfit_get_invoicesread-onlyGet invoices/billing for one or many students (bulk via client_ids).
mfit_get_profileread-onlyGet the trainer's own MFIT profile: name, email, plan, payment country.
mfit_get_retentionread-onlyGet student retention dashboard: active clients, engagement rate, growth rate, churn rate, NPS. Compare current period vs previous.
mfit_get_retention_clientsread-onlyList students by retention status: AT_RISK (may churn), ABANDONED (stopped training), ACTIVE, or all. Shows days since last workout, avg weekly workouts, WhatsApp link. Much more useful than listing clients — this tells you WHO NEEDS ATTENTION.
mfit_get_today_checkinsread-onlyCheck which students trained today. Scans all active students and returns two lists: who_trained and who_didnt. Single call, no need to check one by one.
mfit_get_training_frequencyread-onlyGet which days one or many students trained in a date range. Returns true/false per day of week.
mfit_get_training_rankingread-onlyRanking of students who trained the most in a period (default: current month). Uses bulk frequency checks and returns top performers.
mfit_get_user_exercisesread-onlyGet custom exercises created by the trainer.
mfit_get_workout_libraryread-onlyBrowse the trainer's workout library folders and saved routines. Use folder_id=0 for the root. Bulk support: accepts folder_ids for batched execution.
mfit_list_accountsread-onlyList all MFIT accounts linked to this install. Returns each account's id, email, label, and an "is_default" flag (true when only one is linked — no need to pass `account` in other tools). When multiple accounts are linked, every other mfit_* tool accepts an optional `account` parameter; pass id, email, or label (full or partial).
mfit_search_exercisesread-onlySearch the exercise library by name (Portuguese or English). Returns exercise name, category, muscle group, and video/image URL.
mfit_workout_delete_exercisedestructiveDestructive operations on workout routines, sessions, and exercises. Actions: delete_routine — soft-delete a routine (moves to "Excluídas"; reversible) delete_session — remove a session from a routine (irreversible) delete_exercise — remove an exercise from a session (irreversible). Get exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].idExercSession. [Flattened action: delete_exercise] Bulk support: accepts routine_ids, session_ids, exercise_session_ids for batched execution.
mfit_workout_delete_routinedestructiveDestructive operations on workout routines, sessions, and exercises. Actions: delete_routine — soft-delete a routine (moves to "Excluídas"; reversible) delete_session — remove a session from a routine (irreversible) delete_exercise — remove an exercise from a session (irreversible). Get exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].idExercSession. [Flattened action: delete_routine] Bulk support: accepts routine_ids, session_ids, exercise_session_ids for batched execution.
mfit_workout_delete_sessiondestructiveDestructive operations on workout routines, sessions, and exercises. Actions: delete_routine — soft-delete a routine (moves to "Excluídas"; reversible) delete_session — remove a session from a routine (irreversible) delete_exercise — remove an exercise from a session (irreversible). Get exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].idExercSession. [Flattened action: delete_session] Bulk support: accepts routine_ids, session_ids, exercise_session_ids for batched execution.
mfit_workout_get_routineread-onlyRead workout routines and sessions in MFIT. Actions: get_routine — routine details with all sessions get_session — session prescription with all exercises, series, and exercise IDs [Flattened action: get_routine] Bulk support: accepts routine_ids, session_ids for batched execution.
mfit_workout_get_sessionread-onlyRead workout routines and sessions in MFIT. Actions: get_routine — routine details with all sessions get_session — session prescription with all exercises, series, and exercise IDs [Flattened action: get_session] Bulk support: accepts routine_ids, session_ids for batched execution.
mfit_workout_write_add_exerciseCreate / update workout routines, sessions, and exercises in MFIT. Actions: create_routine — create a new workout routine for a student update_routine — edit routine name, dates, goal, difficulty, etc. archive_routine — archive a routine (status=1, reversible) unarchive_routine — restore archived routine to active (status=0) create_session — add a training session (day) to a routine add_exercise — add an exercise to a session (use mfit_search_exercises to find exercise_id). Added with 1 empty set — use update_serie to configure. update_serie — set reps, weight, rest for a serie. Get serie_id and exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].series[0].id and .idExercSession. Static options: trainingType: 1=Dia da Semana, 2=Numérico goal: 1=Hipertrofia, 2=Redução de gordura, 3=Redução de gordura/hipertrofia, 4=Definição muscular, 5=Condicionamento físico, 6=Qualidade de vida difficulty: 1=Iniciante, 2=Intermediário, 3=Avançado, 4=Adaptação day (session): 1=Domingo, 2=Segunda, 3=Terça, 4=Quarta, 5=Quinta, 6=Sexta, 7=Sábado For destructive operations (delete routine / session / exercise) use mfit_workout_delete. [Flattened action: add_exercise] Bulk support: accepts client_ids, routine_ids, session_ids, exercise_ids, exercise_session_ids, serie_ids for batched execution.
mfit_workout_write_archive_routineCreate / update workout routines, sessions, and exercises in MFIT. Actions: create_routine — create a new workout routine for a student update_routine — edit routine name, dates, goal, difficulty, etc. archive_routine — archive a routine (status=1, reversible) unarchive_routine — restore archived routine to active (status=0) create_session — add a training session (day) to a routine add_exercise — add an exercise to a session (use mfit_search_exercises to find exercise_id). Added with 1 empty set — use update_serie to configure. update_serie — set reps, weight, rest for a serie. Get serie_id and exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].series[0].id and .idExercSession. Static options: trainingType: 1=Dia da Semana, 2=Numérico goal: 1=Hipertrofia, 2=Redução de gordura, 3=Redução de gordura/hipertrofia, 4=Definição muscular, 5=Condicionamento físico, 6=Qualidade de vida difficulty: 1=Iniciante, 2=Intermediário, 3=Avançado, 4=Adaptação day (session): 1=Domingo, 2=Segunda, 3=Terça, 4=Quarta, 5=Quinta, 6=Sexta, 7=Sábado For destructive operations (delete routine / session / exercise) use mfit_workout_delete. [Flattened action: archive_routine] Bulk support: accepts client_ids, routine_ids, session_ids, exercise_ids, exercise_session_ids, serie_ids for batched execution.
mfit_workout_write_create_routineCreate / update workout routines, sessions, and exercises in MFIT. Actions: create_routine — create a new workout routine for a student update_routine — edit routine name, dates, goal, difficulty, etc. archive_routine — archive a routine (status=1, reversible) unarchive_routine — restore archived routine to active (status=0) create_session — add a training session (day) to a routine add_exercise — add an exercise to a session (use mfit_search_exercises to find exercise_id). Added with 1 empty set — use update_serie to configure. update_serie — set reps, weight, rest for a serie. Get serie_id and exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].series[0].id and .idExercSession. Static options: trainingType: 1=Dia da Semana, 2=Numérico goal: 1=Hipertrofia, 2=Redução de gordura, 3=Redução de gordura/hipertrofia, 4=Definição muscular, 5=Condicionamento físico, 6=Qualidade de vida difficulty: 1=Iniciante, 2=Intermediário, 3=Avançado, 4=Adaptação day (session): 1=Domingo, 2=Segunda, 3=Terça, 4=Quarta, 5=Quinta, 6=Sexta, 7=Sábado For destructive operations (delete routine / session / exercise) use mfit_workout_delete. [Flattened action: create_routine] Bulk support: accepts client_ids, routine_ids, session_ids, exercise_ids, exercise_session_ids, serie_ids for batched execution.
mfit_workout_write_create_sessionCreate / update workout routines, sessions, and exercises in MFIT. Actions: create_routine — create a new workout routine for a student update_routine — edit routine name, dates, goal, difficulty, etc. archive_routine — archive a routine (status=1, reversible) unarchive_routine — restore archived routine to active (status=0) create_session — add a training session (day) to a routine add_exercise — add an exercise to a session (use mfit_search_exercises to find exercise_id). Added with 1 empty set — use update_serie to configure. update_serie — set reps, weight, rest for a serie. Get serie_id and exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].series[0].id and .idExercSession. Static options: trainingType: 1=Dia da Semana, 2=Numérico goal: 1=Hipertrofia, 2=Redução de gordura, 3=Redução de gordura/hipertrofia, 4=Definição muscular, 5=Condicionamento físico, 6=Qualidade de vida difficulty: 1=Iniciante, 2=Intermediário, 3=Avançado, 4=Adaptação day (session): 1=Domingo, 2=Segunda, 3=Terça, 4=Quarta, 5=Quinta, 6=Sexta, 7=Sábado For destructive operations (delete routine / session / exercise) use mfit_workout_delete. [Flattened action: create_session] Bulk support: accepts client_ids, routine_ids, session_ids, exercise_ids, exercise_session_ids, serie_ids for batched execution.
mfit_workout_write_unarchive_routineCreate / update workout routines, sessions, and exercises in MFIT. Actions: create_routine — create a new workout routine for a student update_routine — edit routine name, dates, goal, difficulty, etc. archive_routine — archive a routine (status=1, reversible) unarchive_routine — restore archived routine to active (status=0) create_session — add a training session (day) to a routine add_exercise — add an exercise to a session (use mfit_search_exercises to find exercise_id). Added with 1 empty set — use update_serie to configure. update_serie — set reps, weight, rest for a serie. Get serie_id and exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].series[0].id and .idExercSession. Static options: trainingType: 1=Dia da Semana, 2=Numérico goal: 1=Hipertrofia, 2=Redução de gordura, 3=Redução de gordura/hipertrofia, 4=Definição muscular, 5=Condicionamento físico, 6=Qualidade de vida difficulty: 1=Iniciante, 2=Intermediário, 3=Avançado, 4=Adaptação day (session): 1=Domingo, 2=Segunda, 3=Terça, 4=Quarta, 5=Quinta, 6=Sexta, 7=Sábado For destructive operations (delete routine / session / exercise) use mfit_workout_delete. [Flattened action: unarchive_routine] Bulk support: accepts client_ids, routine_ids, session_ids, exercise_ids, exercise_session_ids, serie_ids for batched execution.
mfit_workout_write_update_routineCreate / update workout routines, sessions, and exercises in MFIT. Actions: create_routine — create a new workout routine for a student update_routine — edit routine name, dates, goal, difficulty, etc. archive_routine — archive a routine (status=1, reversible) unarchive_routine — restore archived routine to active (status=0) create_session — add a training session (day) to a routine add_exercise — add an exercise to a session (use mfit_search_exercises to find exercise_id). Added with 1 empty set — use update_serie to configure. update_serie — set reps, weight, rest for a serie. Get serie_id and exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].series[0].id and .idExercSession. Static options: trainingType: 1=Dia da Semana, 2=Numérico goal: 1=Hipertrofia, 2=Redução de gordura, 3=Redução de gordura/hipertrofia, 4=Definição muscular, 5=Condicionamento físico, 6=Qualidade de vida difficulty: 1=Iniciante, 2=Intermediário, 3=Avançado, 4=Adaptação day (session): 1=Domingo, 2=Segunda, 3=Terça, 4=Quarta, 5=Quinta, 6=Sexta, 7=Sábado For destructive operations (delete routine / session / exercise) use mfit_workout_delete. [Flattened action: update_routine] Bulk support: accepts client_ids, routine_ids, session_ids, exercise_ids, exercise_session_ids, serie_ids for batched execution.
mfit_workout_write_update_serieCreate / update workout routines, sessions, and exercises in MFIT. Actions: create_routine — create a new workout routine for a student update_routine — edit routine name, dates, goal, difficulty, etc. archive_routine — archive a routine (status=1, reversible) unarchive_routine — restore archived routine to active (status=0) create_session — add a training session (day) to a routine add_exercise — add an exercise to a session (use mfit_search_exercises to find exercise_id). Added with 1 empty set — use update_serie to configure. update_serie — set reps, weight, rest for a serie. Get serie_id and exercise_session_id from mfit_workout get_session → exerciciosMontados.k{id}[0].series[0].id and .idExercSession. Static options: trainingType: 1=Dia da Semana, 2=Numérico goal: 1=Hipertrofia, 2=Redução de gordura, 3=Redução de gordura/hipertrofia, 4=Definição muscular, 5=Condicionamento físico, 6=Qualidade de vida difficulty: 1=Iniciante, 2=Intermediário, 3=Avançado, 4=Adaptação day (session): 1=Domingo, 2=Segunda, 3=Terça, 4=Quarta, 5=Quinta, 6=Sexta, 7=Sábado For destructive operations (delete routine / session / exercise) use mfit_workout_delete. [Flattened action: update_serie] Bulk support: accepts client_ids, routine_ids, session_ids, exercise_ids, exercise_session_ids, serie_ids for batched execution.
report_bugReport a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.
show_versionread-onlyShow the current MCP platform and adapter versions.
toolkit_inforead-onlyReturns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.

Schemas: list_tools.

Similar MCP servers

More from io.github.mcp-dir

And 1,107 more from this publisher.

Official server.json
{
  "name": "io.github.mcp-dir/mfit-mcp",
  "title": "MFIT Personal",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://api.mcp.ai/p_mfit",
      "type": "streamable-http"
    }
  ],
  "version": "0.1.0",
  "repository": {
    "url": "https://github.com/mcp-dir/mfit-mcp",
    "source": "github"
  },
  "description": "Client, workout, body composition, retention and finance management for personal trainers."
}