Skip to content

Gymmy

by hellogymmy.com · remote · no sign-in to list tools · v1.0.0 · published by com.hellogymmy

Find gyms and studios, see classes and prices, and book with Gymmy.

Deletes · 1Changes · 5

10 tools: 1 can delete or cancel things, 5 change things and 4 only read.

Scanned Oct 21, 2026

2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http gymmy https://hellogymmy.com/api/mcp

Findings

Matches of fixed checks, with the text they matched.

2 warn
  • The server marks "start_trial" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "start_trial" says "start": a word for a change.

    What this check looks for
  • The server marks "my_schedule" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "my_schedule" says "schedule": a word for a change.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

10 tools

Deletes or cancels 1Claude Code: deny
  • cancel_bookingCancels the signed-in member's booking (or waitlist spot) for a class.No findings

    Why it is in this group

    • The name "cancel_booking" says "cancel": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Cancels the signed-in member's booking (or waitlist spot) for a class. The gym's cancellation deadline applies; a late cancel may count as used.

    Annotations the server declares

    • title: Cancel a booking
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: false
Changes things 5Claude Code: ask
  • book_classBooks a class for the signed-in member with their own membership (or puts them on the waitlist when full, if the gym allows).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Books a class for the signed-in member with their own membership (or puts them on the waitlist when full, if the gym allows). Uses the gym's booking rules. No payment is taken here.

    Annotations the server declares

    • title: Book a class
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • my_bookingsThe signed-in member's upcoming booked and waitlisted classes (next 2 weeks) at one of their Gymmy gyms.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    The signed-in member's upcoming booked and waitlisted classes (next 2 weeks) at one of their Gymmy gyms.

    Annotations the server declares

    • title: My bookings
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • my_gymsGyms the signed-in Gymmy member belongs to.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Gyms the signed-in Gymmy member belongs to.

    Annotations the server declares

    • title: My gyms
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • my_scheduleClasses at the signed-in member's gym for a week, with the class ids book_class needs, spots left and whether they are booked.1 finding

    Why it is in this group

    • The name "my_schedule" says "schedule": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "my_schedule" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "my_schedule" says "schedule": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Classes at the signed-in member's gym for a week, with the class ids book_class needs, spots left and whether they are booked.

    Annotations the server declares

    • title: My gym's schedule
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • start_trialGives the link to book a trial class at a Gymmy gym, with the trial offer and optionally the class already picked.1 finding

    Why it is in this group

    • The name "start_trial" says "start": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "start_trial" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "start_trial" says "start": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Gives the link to book a trial class at a Gymmy gym, with the trial offer and optionally the class already picked. The person opens it and confirms with their name and email; nothing is booked or charged by this tool.

    Annotations the server declares

    • title: Start a trial class
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 4Claude Code: allow
  • get_gymDetails of a Gymmy gym: description, address, opening hours, sites, how to book, page and join links.No findings

    Why it is in this group

    • The name "get_gym" says "get": a word for reading.
    Description, as the server wrote it
    Details of a Gymmy gym: description, address, opening hours, sites, how to book, page and join links.

    Annotations the server declares

    • title: Gym details
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_pricesMemberships, class packs and trial offers of a Gymmy gym with prices in EUR and a direct sign-up link per offer.No findings

    Why it is in this group

    • The name "get_prices" says "get": a word for reading.
    Description, as the server wrote it
    Memberships, class packs and trial offers of a Gymmy gym with prices in EUR and a direct sign-up link per offer.

    Annotations the server declares

    • title: Prices and offers
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_scheduleUpcoming classes of a Gymmy gym (next 14 days): time, duration, spots left, and a booking link with the class already picked.No findings

    Why it is in this group

    • The name "get_schedule" says "get": a word for reading.
    Description, as the server wrote it
    Upcoming classes of a Gymmy gym (next 14 days): time, duration, spots left, and a booking link with the class already picked.

    Annotations the server declares

    • title: Class schedule
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • search_gymsFind gyms and studios (CrossFit, HYROX, fitness, yoga, pilates, boxing, martial arts, dance) in France and Europe, near a point or by name, city or postcode.No findings

    Why it is in this group

    • The name "search_gyms" says "search": a word for reading.
    Description, as the server wrote it
    Find gyms and studios (CrossFit, HYROX, fitness, yoga, pilates, boxing, martial arts, dance) in France and Europe, near a point or by name, city or postcode. Gymmy gyms (onGymmy: true) can be booked; others are listed from OpenStreetMap, not bookable, with a claim link. Use the `gym` value with get_gym, get_schedule, get_prices or start_trial.

    Annotations the server declares

    • title: Search gyms and studios
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http gymmy https://hellogymmy.com/api/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__gymmy__search_gyms",
      "mcp__gymmy__get_gym",
      "mcp__gymmy__get_schedule",
      "mcp__gymmy__get_prices"
    ],
    "ask": [
      "mcp__gymmy__start_trial",
      "mcp__gymmy__my_gyms",
      "mcp__gymmy__my_bookings",
      "mcp__gymmy__my_schedule",
      "mcp__gymmy__book_class"
    ],
    "deny": [
      "mcp__gymmy__cancel_booking"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as gymmy. Review it before you use it.