{"$schema":"https://verifymcp.io/schemas/trust-report.json","schemaVersion":1,"license":{"name":"CC BY-NC 4.0","url":"https://creativecommons.org/licenses/by-nc/4.0/"},"generatedAt":"2026-11-07T16:55:10.900Z","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey","markdownUrl":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey.md","server":{"slug":"io-usefulapi-fitssey","name":"Fitssey MCP by usefulapi","registryName":"io.usefulapi/fitssey","description":"Read Fitssey schedules, class capacity, stock, pass pricing, sales and attendance reports.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"fitssey","type":"remote","identifier":"https://fitssey.usefulapi.io/mcp","withdrawn":false,"url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey","version":"1.7.3","transport":null,"scoredAt":"2026-11-07T11:16:27.565Z"},"score":{"total":18,"tier":"low","status":"scored","weekDelta":-43,"history":[{"date":"2026-11-07","total":18},{"date":"2026-11-06","total":18},{"date":"2026-11-05","total":18},{"date":"2026-11-04","total":18},{"date":"2026-11-03","total":18},{"date":"2026-11-02","total":18},{"date":"2026-11-01","total":62},{"date":"2026-10-31","total":61},{"date":"2026-10-30","total":58}]},"categories":[{"name":"Endpoint Security","score":46,"verdict":"fail","reasons":["The endpoint's TLS certificate is valid, in date, and uses a strong key.","Authorisation not yet verified: we couldn't confirm whether this endpoint requires it.","HTTPS enforcement could not be verified: the plaintext port redirected somewhere other than https, so enforcement is unproven.","HSTS check failed: the Strict-Transport-Security header is absent.","DNSSEC check failed: this domain isn't protected by DNSSEC."],"codes":[{"code":"tls.valid","args":{}},{"code":"auth.unreachable","args":{}},{"code":"https.inconclusive","args":{"reason":"redirect_not_https"}},{"code":"headers.hsts_absent","args":{}},{"code":"dnssec.absent","args":{}}]},{"name":"Transport & Reachability","score":0,"verdict":"fail","reasons":["Transport check failed: declared streamable-http, but the endpoint redirected instead of responding directly."],"codes":[{"code":"transport.redirected","args":{"transport":"streamable-http"}}]},{"name":"Schema Quality & AI Usability","score":0,"verdict":"unverified","reasons":["Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list."],"codes":[{"code":"schema.unreachable","args":{}}]},{"name":"Stability & Change Management","score":0,"verdict":"unverified","reasons":["Stability not yet verified: not enough scan history yet (needs a 30-day window)."],"codes":[{"code":"stability.insufficient_history","args":{}}]},{"name":"Tool Coverage","score":0,"verdict":"unverified","reasons":["Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list."],"codes":[{"code":"toolquality.unreachable","args":{}}]},{"name":"Tool Safety","score":0,"verdict":"unverified","reasons":["Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list."],"codes":[{"code":"toolsafety.unreachable","args":{}}]},{"name":"Capabilities","score":0,"verdict":"unverified","reasons":["Capabilities not yet verified: we couldn't read the endpoint's capabilities."],"codes":[{"code":"cap.unreachable","args":{}}]}],"inconclusive":["Authorisation not yet verified: we couldn't confirm whether this endpoint requires it.","HTTPS enforcement could not be verified: the plaintext port redirected somewhere other than https, so enforcement is unproven.","Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.","Stability not yet verified: not enough scan history yet (needs a 30-day window).","Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.","Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.","Capabilities not yet verified: we couldn't read the endpoint's capabilities."],"malware":[],"components":[{"slug":"fitssey","type":"remote","identifier":"https://fitssey.usefulapi.io/mcp","withdrawn":false,"score":18,"current":true,"url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey","markdownUrl":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey.md"}],"facts":[{"label":"Endpoint","value":"https://fitssey.usefulapi.io/mcp"},{"label":"Transports","value":"streamable-http"},{"label":"Auth","value":"none"},{"label":"Version","value":"1.7.3"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"fitssey_list_classes","title":"List classes","description":"Read one page of the class catalog and categories. Excludes descriptions and private notes.","inputs":[{"name":"count","type":"integer","required":false,"description":null},{"name":"page","type":"integer","required":false,"description":null},{"name":"sortDir","type":"string","required":false,"description":null},{"name":"sortField","type":"string","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":57},{"name":"fitssey_list_locations","title":"List locations","description":"Read studio locations, business addresses and rooms. Excludes entrance instructions and phone details.","inputs":[{"name":"count","type":"integer","required":false,"description":null},{"name":"page","type":"integer","required":false,"description":null},{"name":"sortDir","type":"string","required":false,"description":null},{"name":"sortField","type":"string","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":57},{"name":"fitssey_list_staff","title":"List staff","description":"Read one page of studio staff IDs and names; optionally filter by role. Excludes contact and profile details.","inputs":[{"name":"count","type":"integer","required":false,"description":null},{"name":"iamRole","type":"string","required":false,"description":null},{"name":"page","type":"integer","required":false,"description":null},{"name":"sortDir","type":"string","required":false,"description":null},{"name":"sortField","type":"string","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":70},{"name":"fitssey_list_products","title":"List products","description":"Read one page of products with SKU, stock and prices in the vendor’s smallest currency unit.","inputs":[{"name":"count","type":"integer","required":false,"description":null},{"name":"page","type":"integer","required":false,"description":null},{"name":"sortDir","type":"string","required":false,"description":null},{"name":"sortField","type":"string","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":59},{"name":"fitssey_get_product","title":"Get product","description":"Read one product’s stock, SKU and price. Excludes private notes.","inputs":[{"name":"product","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":32},{"name":"fitssey_list_pricing_options","title":"List pricing options","description":"Read pass catalog, session allowance and prices in the vendor’s smallest currency unit.","inputs":[{"name":"count","type":"integer","required":false,"description":null},{"name":"page","type":"integer","required":false,"description":null},{"name":"sortDir","type":"string","required":false,"description":null},{"name":"sortField","type":"string","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":58},{"name":"fitssey_get_pricing_option","title":"Get pricing option","description":"Read one pass offering and its session, expiry and price settings. Excludes private notes.","inputs":[{"name":"pricingOption","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":38},{"name":"fitssey_list_contracts","title":"List contracts","description":"Read contract catalog IDs, names and online-sale flags. Excludes private notes and payment details.","inputs":[{"name":"count","type":"integer","required":false,"description":null},{"name":"page","type":"integer","required":false,"description":null},{"name":"sortDir","type":"string","required":false,"description":null},{"name":"sortField","type":"string","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":60},{"name":"fitssey_get_contract","title":"Get contract","description":"Read one contract’s ID, name and online-sale flag; no payment or bank details.","inputs":[{"name":"contract","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":35},{"name":"fitssey_get_schedule","title":"Get schedule","description":"Read scheduled classes and remaining capacities for a date range of at most 31 days. No bookings are changed.","inputs":[{"name":"endDate","type":"string","required":true,"description":null},{"name":"startDate","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":48},{"name":"fitssey_list_courses","title":"List courses","description":"Read online-bookable courses and their scheduled sessions for a date range of at most 31 days.","inputs":[{"name":"endDate","type":"string","required":true,"description":null},{"name":"startDate","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":46},{"name":"fitssey_get_schedule_event","title":"Get schedule event","description":"Read one scheduled event, capacities and assigned teachers. Excludes livestream URLs, passwords and private notes.","inputs":[{"name":"scheduleEvent","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":39},{"name":"fitssey_get_client_visits_report","title":"Get client visits report","description":"Read one page of class visits for at most 31 days, with client IDs, pass and payment status. Excludes names, emails and private notes. This page is not a complete attendance total.","inputs":[{"name":"count","type":"integer","required":false,"description":null},{"name":"endDate","type":"string","required":true,"description":null},{"name":"page","type":"integer","required":false,"description":null},{"name":"startDate","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":83},{"name":"fitssey_get_sales_report","title":"Get sales report","description":"Read one page of sales for at most 31 days, preserving vendor monetary numbers. Excludes customer names, emails, addresses and invoice tax identifiers. This page is not total revenue.","inputs":[{"name":"count","type":"integer","required":false,"description":null},{"name":"endDate","type":"string","required":true,"description":null},{"name":"page","type":"integer","required":false,"description":null},{"name":"startDate","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":78},{"name":"fitssey_get_active_passes_report","title":"Get active passes report","description":"Read one page of active client passes with client IDs and validity; cached by Fitssey for five minutes. Interpret remain with sessionType: limitedVisits counts visits, limitedTime counts minutes, and -1 means no session limit. Excludes names and emails. This page is not a full membership total.","inputs":[{"name":"count","type":"integer","required":false,"description":null},{"name":"page","type":"integer","required":false,"description":null}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":87}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-07T11:16:27.000Z","track":"remote","endpoint":"https://fitssey.usefulapi.io/mcp","declaredUrl":null,"truncated":false,"tls":{"outcome":"valid","label":"Valid","version":"TLS 1.3","cipherSuite":"TLS_AES_128_GCM_SHA256","chainError":null,"certificates":[{"subject":"CN=usefulapi.io","issuer":"CN=WE1,O=Google Trust Services,C=US","notBefore":"2026-09-13T08:55:39Z","notAfter":"2026-12-12T09:54:12Z","keyType":"ECDSA","keyBits":256,"isCa":false},{"subject":"CN=WE1,O=Google Trust Services,C=US","issuer":"CN=GTS Root R4,O=Google Trust Services LLC,C=US","notBefore":"2023-12-13T09:00:00Z","notAfter":"2029-02-20T14:00:00Z","keyType":"ECDSA","keyBits":256,"isCa":true},{"subject":"CN=GTS Root R4,O=Google Trust Services LLC,C=US","issuer":"CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE","notBefore":"2023-11-15T03:43:21Z","notAfter":"2028-01-28T00:00:42Z","keyType":"ECDSA","keyBits":384,"isCa":true}]},"dnssec":{"result":"insecure","label":"Not signed","name":"fitssey.usefulapi.io.","steps":[{"zone":".","outcome":"verified","label":"Verified"},{"zone":"io.","outcome":"verified","label":"Verified"},{"zone":"usefulapi.io.","outcome":"insecure_proven","label":"Unsigned (proven)"}]},"auth":{"outcome":"inconclusive","label":"Inconclusive","gate":null,"gateLabel":null,"status":302,"authorizationServers":[]},"httpsRedirect":{"outcome":"inconclusive","label":"Inconclusive","status":302},"transports":[{"transport":"streamable-http","outcome":"redirected","label":"Redirected","status":302,"followed":false}],"provenance":null,"installScripts":[],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":null},"mismatches":[],"changelog":{"trackingSince":"2026-10-30","recent":[{"id":"chg_01a1aeac-f801-7386-b5cf-48d660aff02c","kind":"score.rubric_changed","summary":"We updated how we score, so this day's move reflects our rubric, not a change to the server","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-06","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a1aeac-f801-7386-b5cf-48d660aff02c"},{"id":"chg_01a19a07-3ec5-794b-b667-31c1bb43715a","kind":"check.unverifiable","summary":"Stability (0.07 → unverified)","materiality":"security","direction":"regression","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a19a07-3ec5-794b-b667-31c1bb43715a"},{"id":"chg_01a19a07-3ec6-77df-a59e-4065ea7eade2","kind":"check.unverifiable","summary":"Tool safety (pass → unverified)","materiality":"security","direction":"regression","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a19a07-3ec6-77df-a59e-4065ea7eade2"},{"id":"chg_01a19a07-3ec6-7d29-a52b-c7a8af396915","kind":"check.unverifiable","summary":"Authorization (pass → unverified)","materiality":"security","direction":"regression","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a19a07-3ec6-7d29-a52b-c7a8af396915"},{"id":"chg_01a19a07-3ec7-731d-adbb-2672ed850dc0","kind":"check.unverifiable","summary":"Schema quality (100 → unverified)","materiality":"functional","direction":"regression","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a19a07-3ec7-731d-adbb-2672ed850dc0"},{"id":"chg_01a19a07-3ec7-7841-91e8-48dad10536b0","kind":"check.unverifiable","summary":"Capabilities (pass → unverified)","materiality":"functional","direction":"regression","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a19a07-3ec7-7841-91e8-48dad10536b0"},{"id":"chg_01a19a07-3ec7-7cb1-92e4-15d4dbd3c286","kind":"check.unverifiable","summary":"Tool coverage (100 → unverified)","materiality":"functional","direction":"regression","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a19a07-3ec7-7cb1-92e4-15d4dbd3c286"},{"id":"chg_01a19a07-3ec8-728e-a835-7e7a5b8c470d","kind":"capture.status_changed","summary":"Endpoint reachability (reachable → not serving MCP)","materiality":"security","direction":"regression","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a19a07-3ec8-728e-a835-7e7a5b8c470d"},{"id":"chg_01a19a07-3ec8-76de-afc2-248a5cb09920","kind":"score.total_changed","summary":"Trust score (62 → 18)","materiality":"functional","direction":"regression","scoreDelta":-44,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a19a07-3ec8-76de-afc2-248a5cb09920"},{"id":"chg_01a194e0-9ffe-7730-b9d7-38dec166d01d","kind":"score.total_changed","summary":"Trust score (61 → 62)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-01","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a194e0-9ffe-7730-b9d7-38dec166d01d"},{"id":"chg_01a193fb-6d70-73e0-810d-dbb0e9155817","kind":"check.verdict","summary":"Authorization (partial → pass)","materiality":"security","direction":"improvement","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d70-73e0-810d-dbb0e9155817"},{"id":"chg_01a193fb-6d71-7e5d-86f1-7f06814067cd","kind":"check.verdict","summary":"MCP protocol (fail → pass)","materiality":"functional","direction":"improvement","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d71-7e5d-86f1-7f06814067cd"},{"id":"chg_01a193fb-6d72-7334-8788-559cdba219ba","kind":"prompt.added","summary":"New prompt “check_studio_product_stock”","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d72-7334-8788-559cdba219ba"},{"id":"chg_01a193fb-6d72-7826-aad5-d19dc328fdc8","kind":"prompt.added","summary":"New prompt “compare_pass_offerings”","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d72-7826-aad5-d19dc328fdc8"},{"id":"chg_01a193fb-6d72-7cae-a236-d35b88f563e8","kind":"prompt.added","summary":"New prompt “inspect_recorded_sales”","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d72-7cae-a236-d35b88f563e8"},{"id":"chg_01a193fb-6d73-7132-af01-f62af90113d0","kind":"prompt.added","summary":"New prompt “review_active_passes_and_attendance”","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d73-7132-af01-f62af90113d0"},{"id":"chg_01a193fb-6d73-75e4-842a-38e396d7a0d7","kind":"prompt.added","summary":"New prompt “review_upcoming_class_capacity”","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d73-75e4-842a-38e396d7a0d7"},{"id":"chg_01a193fb-6d73-7ac0-a5a0-02118febf037","kind":"server.version_changed","summary":"Server version (1.2.0 → 1.4.0)","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d73-7ac0-a5a0-02118febf037"},{"id":"chg_01a193fb-6d73-7f41-a12a-1c3eabee3378","kind":"protocol.version_changed","summary":"MCP protocol version (2025-06-18 → 2025-11-25)","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d73-7f41-a12a-1c3eabee3378"},{"id":"chg_01a193fb-6d74-7476-a8b2-a98fe457c67e","kind":"score.total_changed","summary":"Trust score (58 → 61)","materiality":"functional","direction":"improvement","scoreDelta":3,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey#chg-chg_01a193fb-6d74-7476-a8b2-a98fe457c67e"}],"truncated":true,"feedUrl":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey/changelog.json"},"links":{"html":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey","markdown":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey.md","changelogJson":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey/changelog.json","changelogRss":"https://verifymcp.io/servers/io-usefulapi-fitssey/fitssey.xml","external":[{"label":"Remote endpoint","href":"https://fitssey.usefulapi.io/mcp"},{"label":"Repository","href":"https://github.com/m190/usefulapi-mcp"},{"label":"Website","href":"https://usefulapi.io/fitssey/"}]}}