Fitssey MCP by usefulapi

Read Fitssey schedules, class capacity, stock, pass pricing, sales and attendance reports.

Should I use this

Quality & Safety

A
Description quality
96%
Schema completeness
75%
Naming quality
77%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'fitssey_get_client_visits_report' name length outside 3-30 rangein fitssey_get_client_visits_report
  • LOWTool 'fitssey_get_active_passes_report' name length outside 3-30 rangein fitssey_get_active_passes_report

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,475Tokens (tool definitions)
~925 BTypical response size
Moderate attention impact (1.93% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "fitssey": {
      "url": "https://fitssey.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

https://fitssey.usefulapi.io/mcpstreamable-http

What it can do

Tool inventory

Tools (15)

🟒 Read-only🟑 WriteπŸ”΄ Deleteβšͺ Unknown
🟒fitssey_list_classes(page, count, sortField, sortDir)

Read one page of the class catalog and categories. Excludes descriptions and private notes.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "count": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "sortField": {
      "default": "createdAt",
      "type": "string",
      "const": "createdAt"
    },
    "sortDir": {
      "default": "asc",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_list_locations(page, count, sortField, sortDir)

Read studio locations, business addresses and rooms. Excludes entrance instructions and phone details.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "count": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "sortField": {
      "default": "createdAt",
      "type": "string",
      "const": "createdAt"
    },
    "sortDir": {
      "default": "asc",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_list_staff(page, count, sortField, sortDir, iamRole)

Read one page of studio staff IDs and names; optionally filter by role. Excludes contact and profile details.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "count": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "sortField": {
      "default": "createdAt",
      "type": "string",
      "const": "createdAt"
    },
    "sortDir": {
      "default": "asc",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "iamRole": {
      "type": "string",
      "enum": [
        "lb:iam_role:manager",
        "lb:iam_role:teacher",
        "lb:iam_role:host"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_list_products(page, count, sortField, sortDir)

Read one page of products with SKU, stock and prices in the vendor’s smallest currency unit.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "count": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "sortField": {
      "default": "createdAt",
      "type": "string",
      "const": "createdAt"
    },
    "sortDir": {
      "default": "asc",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_get_product(product)

Read one product’s stock, SKU and price. Excludes private notes.

Input Schema

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string",
      "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    }
  },
  "required": [
    "product"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_list_pricing_options(page, count, sortField, sortDir)

Read pass catalog, session allowance and prices in the vendor’s smallest currency unit.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "count": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "sortField": {
      "default": "createdAt",
      "type": "string",
      "const": "createdAt"
    },
    "sortDir": {
      "default": "asc",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_get_pricing_option(pricingOption)

Read one pass offering and its session, expiry and price settings. Excludes private notes.

Input Schema

{
  "type": "object",
  "properties": {
    "pricingOption": {
      "type": "string",
      "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    }
  },
  "required": [
    "pricingOption"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_list_contracts(page, count, sortField, sortDir)

Read contract catalog IDs, names and online-sale flags. Excludes private notes and payment details.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "count": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "sortField": {
      "default": "createdAt",
      "type": "string",
      "const": "createdAt"
    },
    "sortDir": {
      "default": "asc",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_get_contract(contract)

Read one contract’s ID, name and online-sale flag; no payment or bank details.

Input Schema

{
  "type": "object",
  "properties": {
    "contract": {
      "type": "string",
      "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    }
  },
  "required": [
    "contract"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_get_schedule(startDate, endDate)

Read scheduled classes and remaining capacities for a date range of at most 31 days. No bookings are changed.

Input Schema

{
  "type": "object",
  "properties": {
    "startDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "endDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    }
  },
  "required": [
    "startDate",
    "endDate"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_list_courses(startDate, endDate)

Read online-bookable courses and their scheduled sessions for a date range of at most 31 days.

Input Schema

{
  "type": "object",
  "properties": {
    "startDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "endDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    }
  },
  "required": [
    "startDate",
    "endDate"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_get_schedule_event(scheduleEvent)

Read one scheduled event, capacities and assigned teachers. Excludes livestream URLs, passwords and private notes.

Input Schema

{
  "type": "object",
  "properties": {
    "scheduleEvent": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256,
      "pattern": "^[A-Za-z0-9_-]+$"
    }
  },
  "required": [
    "scheduleEvent"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_get_client_visits_report(startDate, endDate, page, count)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "startDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "endDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "count": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "required": [
    "startDate",
    "endDate"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_get_sales_report(startDate, endDate, page, count)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "startDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "endDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "count": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "required": [
    "startDate",
    "endDate"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟒fitssey_get_active_passes_report(page, count)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "count": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded15 tools