MONS Athletics
REMOTE · MONSATHLETICS.COM
Find your next endurance challenge and train for it with your MONS coach.
Available components
Last scanned (2 hours ago)
Scores higher than 59% of remote servers
Reachable. Last reached 18 Oct 2026.
Category Health and Science
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security57
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (update_profile). See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability72
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1864 tokens (~133/item across 14 items; 14 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management40
- Stability observed for 12 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage94
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 83% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 15 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 18 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.
- 16 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 13 to 20. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 10 Oct 26 +1
- “sign_up” reworded the description of “mix” cosmetic
- “update_profile” reworded the description of “mix” cosmetic
2 cosmetic changes on this day. Switch on “Show cosmetic changes” to see them.
- 7 Oct 26 +1
- Stability: unverified → 0.03 ▲ functional
- 6 Oct 26 63
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 18 Oct 2026 · Probed https://monsathletics.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=monsathletics.com | CN=YE2,O=Let's Encrypt,C=US | 29 Sept 2026 | 28 Dec 2026 | ECDSA 256 | ECDSA-SHA384 | 6400d6928e8dc32e699f1b8dc22c2c0f6e2 |
| SANs: *.monsathletics.com, monsathletics.com | ||||||
| CN=YE2,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 4df3b15dd6c0784c507cd37b58e6f115 |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of monsathletics.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| monsathletics.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://monsathletics.com/mcp | Verified | 200 | |
| http (plaintext) | http://monsathletics.com/mcp | HTTPS enforced | 308 | https://monsathletics.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
about_mons About MONS Athletics ~40
What MONS Athletics is, its training method, who it is for, what it needs (iPhone and Apple Watch), and links to get started.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
add_challenge Put a challenge on the calendar ~57
Puts a challenge on a date after today. challenge_id is a challenge id, as find_next_challenge and ladder give them.
| Name | Type | Req | Description |
|---|---|---|---|
| challenge_id | string | yes | – |
| date | string | yes | YYYY-MM-DD, after today. |
No output schema declared.
No examples provided.
ask_coach Ask the MONS coach ~101
Sends a message to their MONS coach, in the same thread as the app, and returns the coach's reply. Use for any training question: soreness, a missed session, how a session should feel. The coach may adjust their workouts.
| Name | Type | Req | Description |
|---|---|---|---|
| message | string | yes | – |
| today | string | – | The person's local date as YYYY-MM-DD, the day before if it is earlier than 05:00 where they are. Omit if unknown. |
No output schema declared.
No examples provided.
check_readiness Check readiness for a challenge ~220
Picks the challenge to aim for from the person's training, how many weeks they are from it, and the one thing that sets the date. Returns the next question while one is unanswered, then the challenge and verdict. Send every answer so far each time.
| Name | Type | Req | Description |
|---|---|---|---|
| answers | object | – | Answers so far, keyed by question id, each the value of the option the person chose. Omit before the first answer. |
| challenge_id | string | – | Optional: a challenge id from the challenges find_next_challenge lists, when the person names a goal of their own. Omit to let their training answers pick one. |
| furthest_km | number | yes | The furthest distance the person has ever done in one go in that sport, in kilometres. 0 if never. |
| sport | string | yes | The sport of the challenge: running, cycling or swimming. |
| today | string | – | The person's local date as YYYY-MM-DD, the day before if it is earlier than 05:00 where they are. Omit if unknown. |
No output schema declared.
No examples provided.
edit_schedule Change my schedule ~109
Sets what a coming day is for (days), or what a weekday is for every week (weekly). focus none on a day hands it back to the coach for that date only; focus null clears it. Only one weekday can be the long run.
| Name | Type | Req | Description |
|---|---|---|---|
| days | array | – | – |
| today | string | – | The person's local date as YYYY-MM-DD, the day before if it is earlier than 05:00 where they are. Omit if unknown. |
| weekly | array | – | – |
No output schema declared.
No examples provided.
find_next_challenge Find the next challenge ~143
Takes the furthest a person has run, ridden or swum and gives the first question about their training, plus every challenge in that sport. check_readiness picks the challenge once the questions are answered.
| Name | Type | Req | Description |
|---|---|---|---|
| challenge_id | string | – | Optional: a challenge id from the challenges find_next_challenge lists, when the person names a goal of their own. Omit to let their training answers pick one. |
| furthest_km | number | yes | The furthest distance the person has ever done in one go in that sport, in kilometres. 0 if never. |
| sport | string | yes | The sport of the challenge: running, cycling or swimming. |
No output schema declared.
No examples provided.
ladder My challenges ~74
The challenge ladder in order (collected, next, ready, readiness) and the challenges on the calendar, each with the id remove_challenge takes.
| Name | Type | Req | Description |
|---|---|---|---|
| today | string | – | The person's local date as YYYY-MM-DD, the day before if it is earlier than 05:00 where they are. Omit if unknown. |
No output schema declared.
No examples provided.
morning_check_in Morning check-in ~124
The morning check-in: tells the coach how many minutes they have today and what they cannot do, and the coach designs today's sessions. Returns them. Takes up to a minute.
| Name | Type | Req | Description |
|---|---|---|---|
| cannot_do | array | – | What they cannot do today, e.g. swimming when there is no pool. Omit if everything is possible. |
| minutes | integer | yes | Minutes they have for training today. |
| today | string | – | The person's local date as YYYY-MM-DD, the day before if it is earlier than 05:00 where they are. Omit if unknown. |
No output schema declared.
No examples provided.
my_profile My MONS profile ~33
Whether the account is set up and subscribed, the endurance mix, kettlebells, date of birth and max heart rate.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
remove_challenge Take a challenge off the calendar ~34
Removes a challenge that has not happened yet, by its id from ladder on_the_calendar.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | – |
No output schema declared.
No examples provided.
schedule My schedule ~72
The coming days: what each day is set to (rest, long run, a sport), the weekly rules, and the sessions so far.
| Name | Type | Req | Description |
|---|---|---|---|
| today | string | – | The person's local date as YYYY-MM-DD, the day before if it is earlier than 05:00 where they are. Omit if unknown. |
No output schema declared.
No examples provided.
sign_up Set up a MONS account ~290
Sets up the signed-in person's MONS account, as the app's onboarding would. Pass the challenge and answers from check_readiness when there are some. Does nothing to an account already set up.
| Name | Type | Req | Description |
|---|---|---|---|
| answers | object | – | The check_readiness answers for challenge_id, if any. |
| challenge_id | string | – | Optional: a challenge id from the challenges find_next_challenge lists, when the person names a goal of their own. Omit to let their training answers pick one. |
| date_of_birth | string | yes | YYYY-MM-DD. MONS is for ages 16 to 80. |
| kettlebells | object | yes | How many kettlebells they own in each weight class, 0 to 2 each. Moderate: get-ups and overhead work. Heavy: swings, squats and presses. Extra heavy: heavy carries. All 0 trains with bodyweight. |
| mix | string | yes | Which endurance sports they do: runner (run), swimmer (swim), rider (ride), rider_runner (run & ride), swimrunner (run & swim), rider_swimmer (swim & ride) or triathlete (run, swim & ride). Sports le… |
| today | string | – | The person's local date as YYYY-MM-DD, the day before if it is earlier than 05:00 where they are. Omit if unknown. |
No output schema declared.
No examples provided.
today Today's training ~59
Today's sessions as the coach designed them, or that today is not designed yet.
| Name | Type | Req | Description |
|---|---|---|---|
| today | string | – | The person's local date as YYYY-MM-DD, the day before if it is earlier than 05:00 where they are. Omit if unknown. |
No output schema declared.
No examples provided.
update_profile Change my profile ~153
Changes how they build endurance (mix) or which kettlebells they have. Send only what changes.
| Name | Type | Req | Description |
|---|---|---|---|
| kettlebells | object | – | How many kettlebells they own in each weight class, 0 to 2 each. Moderate: get-ups and overhead work. Heavy: swings, squats and presses. Extra heavy: heavy carries. All 0 trains with bodyweight. |
| mix | string | – | Which endurance sports they do: runner (run), swimmer (swim), rider (ride), rider_runner (run & ride), swimrunner (run & swim), rider_swimmer (swim & ride) or triathlete (run, swim & ride). Sports le… |
No output schema declared.
No examples provided.
How do I install the MONS Athletics MCP server?
MONS Athletics is a hosted endpoint at https://monsathletics.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · monsathletics.com
claude mcp add --transport http com-monsathletics-mons 'https://monsathletics.com/mcp'
What is the MONS Athletics MCP server?
MONS Athletics is an MCP server listed in the public MCP registry as com.monsathletics/mons. Find your next endurance challenge and train for it with your MONS coach. This page covers its hosted endpoint (https://monsathletics.com/mcp).
Is the MONS Athletics MCP server safe to use?
MONS Athletics scores 69 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the MONS Athletics MCP server expose?
MONS Athletics exposes 14 tools: about_mons, find_next_challenge, check_readiness, sign_up, my_profile, and 9 more. Their descriptions and schemas cost roughly 1,509 tokens of context every time the server is loaded.
Does the MONS Athletics MCP server require authentication?
No. We connected to MONS Athletics without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the MONS Athletics MCP server still maintained?
MONS Athletics is still listed as active in the MCP registry. We last reached this channel on 18 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.