Search / io.github.mcp-dir/mfit-mcp
MFIT Personal
R0· no sign-inClient, workout, body composition, retention and finance management for personal trainers.
v0.1.0 · active · repository · descriptor JSON · versions
Search / io.github.mcp-dir/mfit-mcp
R0· no sign-inClient, workout, body composition, retention and finance management for personal trainers.
v0.1.0 · active · repository · descriptor JSON · versions
{
"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
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_length8 tools have descriptions over 1,024 characters, which crowds the contexttools.schemasevery tool has an object input schematools.annotations48 of 48 tools declare readOnlyHint or destructiveHinttools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHinttools.token_costabout 12,484 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageNo 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.
+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.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://api.mcp.ai/p_mfit streamable-http | none | yes | 96% | 190 ms | 2025-11-25 | 2026-10-19 |
authenticate | MCP.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-only | Returns 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. |
marketplace | The 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_deletedestructive | Delete a student file (irreversible). Bulk support: accepts client_ids, file_ids for batched execution. |
mfit_client_files_getread-only | Read 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-only | Read 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_write | Update a student file: rename or change sharing settings. Bulk support: accepts file_ids for batched execution. |
mfit_client_getread-only | Read 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-only | Read 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-only | Read 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_create | Create / 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_deactivate | Create / 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_update | Create / 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-only | Get available anamnesis form templates (e.g. PAR-Q) that can be sent to students. |
mfit_get_client_countread-only | Get a summary count of active and inactive students. |
mfit_get_client_evaluationsread-only | Get evaluations for one or many students: heart rate zones, VO2max, and training frequency. |
mfit_get_client_notesread-only | Read notes/observations for one or many students (bulk via client_ids). |
mfit_get_client_notes_write | Save (overwrite) notes/observations for a student. Replaces any existing notes text. Bulk support: accepts client_ids for batched execution. |
mfit_get_client_workoutsread-only | Get all workout routines assigned to one or many students. Supports bulk via client_ids. |
mfit_get_exercise_favoritesread-only | Get the trainer's favorite exercises. |
mfit_get_feedbacksread-only | Get 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-only | Get financial overview: transactions in date range, wallet/payment info, seller status. |
mfit_get_invoicesread-only | Get invoices/billing for one or many students (bulk via client_ids). |
mfit_get_profileread-only | Get the trainer's own MFIT profile: name, email, plan, payment country. |
mfit_get_retentionread-only | Get student retention dashboard: active clients, engagement rate, growth rate, churn rate, NPS. Compare current period vs previous. |
mfit_get_retention_clientsread-only | List 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-only | Check 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-only | Get which days one or many students trained in a date range. Returns true/false per day of week. |
mfit_get_training_rankingread-only | Ranking of students who trained the most in a period (default: current month). Uses bulk frequency checks and returns top performers. |
mfit_get_user_exercisesread-only | Get custom exercises created by the trainer. |
mfit_get_workout_libraryread-only | Browse 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-only | List 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-only | Search the exercise library by name (Portuguese or English). Returns exercise name, category, muscle group, and video/image URL. |
mfit_workout_delete_exercisedestructive | Destructive 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_routinedestructive | Destructive 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_sessiondestructive | Destructive 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-only | Read 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-only | Read 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_exercise | Create / 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_routine | Create / 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_routine | Create / 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_session | Create / 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_routine | Create / 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_routine | Create / 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_serie | Create / 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_bug | Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction. |
show_versionread-only | Show the current MCP platform and adapter versions. |
toolkit_inforead-only | Returns 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.
And 1,107 more from this publisher.
{
"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."
}