MoveMentors
REMOTE · MOVEMENTORS.COM · 2 COMPONENTS
Find and book yoga, pilates and movement classes with independent teachers and small studios.
Available components
Last scanned (3 hours ago)
Scores higher than 45% of remote servers
Reachable. Last reached 5 Nov 2026.
Category E-commerce
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 Security66
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not fully verified: no authorisation is required to call this server, and 12 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. See how to fix → View diagnostics → Unverified
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability63
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 2167 tokens (~180/item across 12 items; 12 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 Management7
- Stability observed for 2 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage85
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 55% 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
- We read all 12 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 13 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
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.
- 5 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 4 Nov 26 0
- Stability: unverified → 0.03 ▲ functional
- 3 Nov 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 5 Nov 2026 · Probed https://movementors.com/api/mcp/public
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=movementors.com | CN=YR1,O=Let's Encrypt,C=US | 21 Sept 2026 | 20 Dec 2026 | RSA 2048 | SHA256-RSA | 65bbe8fe2a87d213886998c58e37fda796e |
| SANs: movementors.com | ||||||
| CN=YR1,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | a20253f15f2691c05dc1ce13b9bcca4e |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of movementors.com. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| movementors.com. | present | 2371 | 13 | Verified |
| movementors.com. | Verified address RRset verified with the apex keys |
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 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains; preload |
| content-security-policy | default-src 'self'; script-src 'self' 'unsafe-inline' https://js.stripe.com https://maps.googleapis.com https://www.googletagmanager.com https://www.google-analytics.com https://va.vercel-scripts.com https://vercel.live https://www.google.com https://www.gstatic.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; img-src 'self' data: blob: https://res.cloudinary.com https://lh3.googleusercontent.com https://*.stripe.com https://*.supabase.co https://img.youtube.com https://i.ytimg.com https://maps.gstatic.com https://maps.googleapis.com https://tile.openstreetmap.org https://*.tile.openstreetmap.org https://tiles.openfreemap.org; font-src 'self' https://fonts.gstatic.com; connect-src 'self' https://api.stripe.com https://vitals.vercel-insights.com https://*.ingest.sentry.io https://maps.googleapis.com https://places.googleapis.com https://tiles.openfreemap.org https://lzsykzdysvetvlbsvftz.supabase.co wss://lzsykzdysvetvlbsvftz.supabase.co https://www.google-analytics.com https://region1.google |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | camera=(), microphone=(), geolocation=(self), interest-cohort=(), payment=(self), usb=(), magnetometer=(), accelerometer=(), gyroscope=() |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://movementors.com/api/mcp/public | Verified | 200 | |
| http (plaintext) | http://movementors.com/api/mcp/public | HTTPS enforced | 308 | https://movementors.com/api/mcp/public |
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 →
book_class_as_guest ~352
Book a class, event or retreat for a person with no MoveMentors account. No sign-in needed: ask the person for their name and email and pass them in. The seat is held while the person pays by card: the response has a single-use Stripe Checkout URL to open in a browser (a payment vault or one-time card works there). The seat is released if unpaid, and once paid the confirmation email, with a link to change or cancel, goes to guestEmail in the language given. Only card-paid bookings work here; for a free class, a host paid in cash or by bank transfer, a host who checks phone numbers by text, a promo code or a retreat payment plan, the tool answers with the class page where the person books it themselves (no account needed). Find scheduleId with search_classes. For a pay-what-you-can class pass pwycAmountCents (at least minPriceCents from search_classes). Limited to a few bookings an hour per person.
| Name | Type | Req | Description |
|---|---|---|---|
| guestEmail | string | yes | Where the confirmation email and booking link go. Use the person's own address. |
| guestName | string | yes | The person's full name, as the host will see it. |
| locale | string | – | Language for the emails and booking page. Defaults to English. |
| notes | string | – | – |
| partySize | integer | – | Total seats to reserve, including the person booking. |
| pwycAmountCents | integer | – | Pay-what-you-can classes only: the per-seat amount the person chooses, in cents of the class currency. Defaults to the suggested price. |
| scheduleId | string | yes | Schedule ID (use search_classes to discover). |
No output schema declared.
No examples provided.
get_class_payment_methods ~124
Return the list of payment methods the payee accepts for a class. Use this before calling book_class so you can ask the user which one to use (especially when the class's payee doesn't have Stripe enabled). Each entry has a canonical `key` (pass that to book_class as paymentMethod) and a human-readable `label`. Note: full payment details (bank account number, PayPal handle, etc.) are NOT returned here — they live on the confirmation page after booking, since they're sensitive to the payee.
| Name | Type | Req | Description |
|---|---|---|---|
| classId | string | yes | – |
No output schema declared.
No examples provided.
get_mentor ~55
Fetch full public details for a single mentor by slug: bio, location, ratings, certifications, taught styles, and canonical URL. Read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| slug | string | yes | Mentor slug (the part after /mentors/...). |
No output schema declared.
No examples provided.
list_host_videos ~169
List a mentor's or studio's published video library by slug (pass exactly one of mentorSlug / studioSlug). Returns title, durationSec, priceCents (0 = free), currency, hasPreview (whether a free watchable snippet of the actual video exists on the page), and the public page path for each video. Buying or claiming happens on that page (/videos/{id}) and requires a free MoveMentors account; the video saves to the buyer's library and plays on any signed-in device. Videos a mentor includes with their membership are free to watch for that mentor's active subscribers. Hosts keep 100% of video sales. Hosts manage their library at /mentor/library or /studio/library.
| Name | Type | Req | Description |
|---|---|---|---|
| mentorSlug | string | – | – |
| studioSlug | string | – | – |
No output schema declared.
No examples provided.
list_mentor_class_packs ~70
List a mentor's active class packs by slug. Returns name, sessionCount, priceCents, currency, validityDays for each pack. Public read; useful when a client asks 'what packs does X sell?' or before calling buy_class_pack.
| Name | Type | Req | Description |
|---|---|---|---|
| mentorSlug | string | yes | – |
No output schema declared.
No examples provided.
list_private_session_slots ~183
See what a mentor offers for private one-to-one sessions: each place with its lengths and prices, the ways to pay the mentor, the cancellation policy and, when durationMinutes is given, the open start times (UTC ISO, with the place's IANA time zone) over the next `days`. Open times already leave out classes, other bookings, time the mentor blocked and the 12-hour notice. An empty `places` list means the mentor has not opened private sessions; use send_mentor_inquiry instead. Book a time with book_private_session. The same flow for a person is the 'Book a private session' section on the mentor's public profile.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | – |
| durationMinutes | integer | – | Session length. Omit to get only the lengths and prices. |
| mentorSlug | string | yes | Mentor profile slug. |
No output schema declared.
No examples provided.
list_reviews_for_class ~71
List reviews for a specific class (by id or slug), latest first. Includes the rating, written review, mentor response (when present), and reviewer first-name-only. No auth required.
| Name | Type | Req | Description |
|---|---|---|---|
| classId | string | – | – |
| classSlug | string | – | – |
| limit | integer | – | – |
No output schema declared.
No examples provided.
search_classes ~290
Search bookable classes, events, or retreats by query, city, discipline, date, session type, kind, or format (in-person vs online). Returns id, slug, title, kind, price, pricingModel, currency, duration, instructor, location, isOnline, meetingProvider, and the canonical URL. When pricingModel is PWYC (pay what you can), priceCents is the suggested amount and minPriceCents the lowest the user may pay (0 means they may attend free): ask the user what they want to pay and pass it to book_class as pwycAmountCents. Each result includes the next upcoming schedule. Read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Class type slug. |
| city | string | – | – |
| date | string | – | ISO date (YYYY-MM-DD). |
| format | string | – | Filter by class format. `online` returns classes taught remotely (mentor's connected Google Meet or Zoom mints the join link at booking time). `in_person` returns classes hosted at a physical venue.… |
| kind | string | – | Programming kind. CLASS = recurring per-session classes (the default mix); EVENT = focused workshops with an agenda; RETREAT = multi-day arcs with optional installment payments. |
| limit | integer | – | Maximum results to return. |
| query | string | – | – |
| type | string | – | – |
No output schema declared.
No examples provided.
search_help_articles ~140
Search the MoveMentors help center for articles matching a free-text query. Returns the top matches with title, description, category, locale, and a permalink the agent can cite or fetch for the full markdown body. Filter by category slug (e.g., 'payments', 'for-mentors') or locale ('en', 'es', etc.). No auth required.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Optional category slug. Run with no category once to discover; the response includes categories alongside results. |
| limit | integer | – | – |
| locale | string | – | Locale of the article body to search. Defaults to English. |
| query | string | yes | – |
No output schema declared.
No examples provided.
search_mentors ~151
Search instructor profiles by free-text query, city, or discipline (yoga, pilates, meditation, etc). Returns slug, display name, city, ratings, top class types, and the canonical public URL. Many instructors also offer client-bookable private one-on-one sessions, bookable directly from their profile page (pick a room, length, and open half-hour slot). Read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Class type slug (e.g. 'vinyasa', 'pilates'). |
| city | string | – | City name (case-insensitive). |
| limit | integer | – | Maximum results to return. |
| query | string | – | Free-text search across name/bio/class types. |
No output schema declared.
No examples provided.
search_studios ~139
Search studios and gyms by free-text query or city. Pass rentable=true to restrict results to studios with at least one location that publishes rentable space (visiting mentors can claim slots and pay rent via Stripe Connect). Returns slug, business name, city, ratings, the canonical public URL, and rentable=true / false per studio. Read-only.
| Name | Type | Req | Description |
|---|---|---|---|
| city | string | – | – |
| limit | integer | – | Maximum results to return. |
| query | string | – | – |
| rentable | boolean | – | When true, only return studios with at least one Location where rentalEnabled = true. Matches the public /studios?rentable=1 directory filter. |
No output schema declared.
No examples provided.
search_videos ~201
Browse the cross-host public video directory (the /videos page): published class recordings and courses from every mentor and studio. Optional `query` filters by title (case-insensitive). Returns title, host, durationSec, priceCents (0 = free), currency, hasPreview (a free watchable snippet on the page), series (the collection title when the video is part of a multi-part course, else null), and the public page path. Buying or claiming happens on /videos/{id} and requires a free MoveMentors account: the video saves to the buyer's library (/videos/mine), plays on any device they sign in on, and resumes where they left off. Mentors can include videos with their recurring membership, so subscribers watch those at no extra cost. Use when a client asks 'what videos can I watch or buy?' without naming a specific teacher.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | – |
| query | string | – | – |
No output schema declared.
No examples provided.
How do I install the MoveMentors MCP server?
MoveMentors is a hosted endpoint at https://movementors.com/api/mcp/public, 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 · movementors.com
claude mcp add --transport http com-movementors-booking 'https://movementors.com/api/mcp/public'
What is the MoveMentors MCP server?
MoveMentors is an MCP server listed in the public MCP registry as com.movementors/booking. Find and book yoga, pilates and movement classes with independent teachers and small studios. This page covers its hosted endpoint (https://movementors.com/api/mcp/public).
Is the MoveMentors MCP server safe to use?
MoveMentors scores 64 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 MoveMentors MCP server expose?
MoveMentors exposes 12 tools: search_mentors, search_studios, search_classes, get_mentor, search_videos, and 7 more. Their descriptions and schemas cost roughly 1,945 tokens of context every time the server is loaded.
Does the MoveMentors MCP server require authentication?
No. We connected to MoveMentors without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the MoveMentors MCP server still maintained?
MoveMentors is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.