{"openapi":"3.1.0","info":{"title":"Sportradar MMA (BYOK) API","version":"0.1.0","description":"Sportradar MMA (BYOK) lets an AI assistant read your own Sportradar MMA data through the Sportradar MMA API with a key you supply (Sportradar MMA API key (trial or production)). Read-only: 12 tools (list_competitions, list_seasons, get_competition_seasons, get_daily_summaries, get_live_summaries, get_season_summaries, get_season_competitors, get_competitor_summaries, get_sport_event_summary,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-sportradar-mma.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-sportradar-mma/docs"},"termsOfService":"https://connectorbay.com/byok-sportradar-mma/terms"},"servers":[{"url":"https://byok-sportradar-mma.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-sportradar-mma/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_competitions":{"post":{"operationId":"list_competitions","summary":"List MMA competitions with id, name, gender, type and category. Use for \"Which MMA competitions does the API cover and w","description":"List MMA competitions with id, name, gender, type and category. Use for \"Which MMA competitions does the API cover and what are their ids\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"}},"required":["access_level","language_code"],"title":"list_competitionsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_seasons":{"post":{"operationId":"list_seasons","summary":"List MMA seasons with id, name, year, dates and competition id. Use for \"Which MMA seasons are available and what are th","description":"List MMA seasons with id, name, year, dates and competition id. Use for \"Which MMA seasons are available and what are their ids\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"}},"required":["access_level","language_code"],"title":"list_seasonsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_competition_seasons":{"post":{"operationId":"get_competition_seasons","summary":"List the seasons of one MMA competition with id, name, year and dates. Use for \"Which seasons exist for this MMA competi","description":"List the seasons of one MMA competition with id, name, year and dates. Use for \"Which seasons exist for this MMA competition\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"},"competition_id":{"description":"Competition id as returned by list_competitions, for example sr:competition:302.","maxLength":200,"title":"Competition Id","type":"string"}},"required":["access_level","language_code","competition_id"],"title":"get_competition_seasonsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_daily_summaries":{"post":{"operationId":"get_daily_summaries","summary":"List MMA matches on one calendar date (YYYY-MM-DD) with competition, teams, venue, status and results. Page with start a","description":"List MMA matches on one calendar date (YYYY-MM-DD) with competition, teams, venue, status and results. Page with start and limit. Use for \"What were the MMA results on 2025-06-14\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"},"date":{"description":"Calendar date as YYYY-MM-DD, for example 2024-09-28.","maxLength":200,"title":"Date","type":"string"},"start":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Number of items to skip, for paging (default 0).","title":"Start"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many items to return (1 to 200, default 200).","title":"Limit"}},"required":["access_level","language_code","date"],"title":"get_daily_summariesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_live_summaries":{"post":{"operationId":"get_live_summaries","summary":"List MMA matches that are live right now with competition, teams, status and results. Use for \"Which MMA matches are liv","description":"List MMA matches that are live right now with competition, teams, status and results. Use for \"Which MMA matches are live right now and what is the score\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"}},"required":["access_level","language_code"],"title":"get_live_summariesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_season_summaries":{"post":{"operationId":"get_season_summaries","summary":"List the matches of one MMA season with teams, venue, status and results. Page with start and limit. Use for \"What are t","description":"List the matches of one MMA season with teams, venue, status and results. Page with start and limit. Use for \"What are the match results of this MMA season\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"},"season_id":{"description":"Season id as returned by list_seasons or get_competition_seasons, for example sr:season:125541.","maxLength":200,"title":"Season Id","type":"string"},"start":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Number of items to skip, for paging (default 0).","title":"Start"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many items to return (1 to 200, default 200).","title":"Limit"}},"required":["access_level","language_code","season_id"],"title":"get_season_summariesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_season_competitors":{"post":{"operationId":"get_season_competitors","summary":"List the competitors (teams or athletes) of one MMA season with id, name and abbreviation. Page with start and limit. Us","description":"List the competitors (teams or athletes) of one MMA season with id, name and abbreviation. Page with start and limit. Use for \"Which teams take part in this MMA season\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"},"season_id":{"description":"Season id as returned by list_seasons or get_competition_seasons, for example sr:season:125541.","maxLength":200,"title":"Season Id","type":"string"},"start":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Number of items to skip, for paging (default 0).","title":"Start"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"How many items to return (1 to 200, default 200).","title":"Limit"}},"required":["access_level","language_code","season_id"],"title":"get_season_competitorsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_competitor_summaries":{"post":{"operationId":"get_competitor_summaries","summary":"List recent and upcoming MMA matches of one competitor with opponents, status and results. Use for \"What are the latest ","description":"List recent and upcoming MMA matches of one competitor with opponents, status and results. Use for \"What are the latest results of this MMA competitor\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"},"competitor_id":{"description":"Competitor (team or athlete) id as returned by get_season_competitors or get_daily_summaries, for example sr:competitor:4233.","maxLength":200,"title":"Competitor Id","type":"string"}},"required":["access_level","language_code","competitor_id"],"title":"get_competitor_summariesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_sport_event_summary":{"post":{"operationId":"get_sport_event_summary","summary":"Get the summary of one MMA fight: fighters, venue, start time, status, winner, method of victory and final round. Use fo","description":"Get the summary of one MMA fight: fighters, venue, start time, status, winner, method of victory and final round. Use for \"How did this MMA fight end and in which round\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"},"sport_event_id":{"description":"Sport event id as returned by get_daily_summaries or get_season_summaries, for example sr:sport_event:64263881.","maxLength":200,"title":"Sport Event Id","type":"string"}},"required":["access_level","language_code","sport_event_id"],"title":"get_sport_event_summaryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_rankings":{"post":{"operationId":"get_rankings","summary":"Get the current MMA rankings by weight class and gender with ranked fighters. Use for \"Who is ranked number one in each ","description":"Get the current MMA rankings by weight class and gender with ranked fighters. Use for \"Who is ranked number one in each MMA weight class\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"}},"required":["access_level","language_code"],"title":"get_rankingsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_champions":{"post":{"operationId":"get_champions","summary":"List MMA champions by category and weight class. Use for \"Who are the current MMA champions in each weight class\".","description":"List MMA champions by category and weight class. Use for \"Who are the current MMA champions in each weight class\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"}},"required":["access_level","language_code"],"title":"get_championsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_competitor_profile":{"post":{"operationId":"get_competitor_profile","summary":"Get one fighter's profile: name, nickname, weight, height, reach, fighting base and win-loss-draw record. Use for \"What ","description":"Get one fighter's profile: name, nickname, weight, height, reach, fighting base and win-loss-draw record. Use for \"What is this fighter's record, reach and weight\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"access_level":{"description":"Access level of your Sportradar key: trial or production.","enum":["trial","production"],"title":"Access Level","type":"string"},"language_code":{"description":"Language of names in the answer, for example en.","enum":["en","en_us"],"title":"Language Code","type":"string"},"competitor_id":{"description":"Competitor (team or athlete) id as returned by get_season_competitors or get_daily_summaries, for example sr:competitor:4233.","maxLength":200,"title":"Competitor Id","type":"string"}},"required":["access_level","language_code","competitor_id"],"title":"get_competitor_profileArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}