myopl-net · Schema

McpResponse

CompanyPickleballSportsCommunityPlatform
View JSON Schema on GitHub

JSON Schema

myopl-net-mcp-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/myopl-net/json-schema/myopl-net-mcp-response-schema.json",
  "title": "McpResponse",
  "x-generated": "2026-10-30",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/myopl-net-openapi.json#/components/schemas/McpResponse",
  "oneOf": [
    {
      "$ref": "#/$defs/JsonRpcSuccess"
    },
    {
      "$ref": "#/$defs/JsonRpcError"
    }
  ],
  "$defs": {
    "BrowseChoices": {
      "type": "object",
      "properties": {
        "version": {
          "const": 1
        },
        "location": {
          "type": "string"
        },
        "language": {
          "type": "string",
          "enum": [
            "en",
            "es"
          ]
        },
        "sport": {
          "const": "pickleball"
        },
        "spoken_reply": {
          "type": "string"
        },
        "choices": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "enum": [
                  "courts",
                  "clubs",
                  "sessions"
                ]
              },
              "label": {
                "type": "string"
              },
              "browse_section": {
                "enum": [
                  "courts",
                  "clubs",
                  "opls"
                ]
              }
            },
            "required": [
              "id",
              "label",
              "browse_section"
            ],
            "additionalProperties": false
          },
          "minItems": 3,
          "maxItems": 3
        },
        "status": {
          "enum": [
            "choice_required",
            "results",
            "no_results"
          ]
        },
        "guidance": {
          "type": "string"
        },
        "selection": {
          "type": "object",
          "properties": {
            "category": {
              "enum": [
                "courts",
                "clubs",
                "sessions",
                "leaderboards"
              ]
            },
            "browse_section": {
              "enum": [
                "courts",
                "clubs",
                "opls"
              ]
            },
            "query": {
              "type": "string"
            },
            "sport": {
              "const": "pickleball"
            }
          },
          "required": [
            "category",
            "browse_section",
            "query",
            "sport"
          ],
          "additionalProperties": false
        },
        "source": {
          "const": "MYOPL"
        },
        "source_url": {
          "type": "string",
          "format": "uri"
        },
        "results": {
          "type": "array",
          "maxItems": 5,
          "items": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "entity_type": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "sport_type": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "slug": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "name": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "description": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "city": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "region": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "country": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "access": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "surface": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "nets": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "court_count": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "indoor_courts": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "outdoor_courts": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "amenities": {
                "type": [
                  "array",
                  "null"
                ],
                "items": {
                  "type": "string"
                }
              },
              "public_url": {
                "type": "string",
                "format": "uri"
              },
              "source": {
                "const": "MYOPL"
              },
              "location": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "name": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "city": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "region": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "country": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "public_url": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "format": "uri"
                  }
                }
              },
              "locations": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "name": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "city": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "region": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "country": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "public_url": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "format": "uri"
                    }
                  }
                }
              },
              "leaderboard_url": {
                "type": "null"
              },
              "leaderboard_status": {
                "const": "not_published"
              },
              "session_availability_checked": {
                "const": false
              }
            }
          }
        },
        "has_more": {
          "type": "boolean"
        }
      },
      "required": [
        "version",
        "location",
        "language",
        "sport",
        "spoken_reply",
        "choices",
        "status",
        "guidance",
        "source",
        "source_url"
      ],
      "additionalProperties": false
    },
    "BrowseChoicesResult": {
      "type": "object",
      "properties": {
        "content": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TextContent"
          },
          "minItems": 1
        },
        "structuredContent": {
          "$ref": "#/$defs/BrowseChoices"
        },
        "isError": {
          "const": false
        }
      },
      "required": [
        "content",
        "structuredContent",
        "isError"
      ],
      "additionalProperties": false
    },
    "DocumentSearch": {
      "type": "object",
      "properties": {
        "source": {
          "type": "string"
        },
        "results": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "url": {
                "type": "string",
                "format": "uri"
              },
              "title": {
                "type": "string"
              },
              "language": {
                "type": "string",
                "enum": [
                  "en",
                  "es"
                ]
              },
              "excerpt": {
                "type": "string",
                "maxLength": 1800
              },
              "truncated": {
                "type": "boolean"
              }
            },
            "required": [
              "url",
              "title",
              "language",
              "excerpt",
              "truncated"
            ],
            "additionalProperties": false
          },
          "maxItems": 5
        },
        "clarification": {
          "type": [
            "string",
            "null"
          ]
        },
        "guidance": {
          "type": "string"
        },
        "myopl_url": {
          "type": "string",
          "format": "uri"
        }
      },
      "required": [
        "source",
        "results",
        "clarification",
        "guidance"
      ],
      "additionalProperties": false
    },
    "DocumentSearchResult": {
      "type": "object",
      "properties": {
        "content": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TextContent"
          },
          "minItems": 1
        },
        "structuredContent": {
          "$ref": "#/$defs/DocumentSearch"
        },
        "isError": {
          "const": false
        }
      },
      "required": [
        "content",
        "structuredContent",
        "isError"
      ],
      "additionalProperties": false
    },
    "InitializeResult": {
      "type": "object",
      "properties": {
        "protocolVersion": {
          "const": "2025-11-25"
        },
        "capabilities": {
          "type": "object",
          "properties": {
            "tools": {
              "type": "object",
              "properties": {
                "listChanged": {
                  "const": false
                }
              },
              "required": [
                "listChanged"
              ],
              "additionalProperties": false
            },
            "resources": {
              "type": "object",
              "properties": {
                "subscribe": {
                  "const": false
                },
                "listChanged": {
                  "const": false
                }
              },
              "required": [
                "subscribe",
                "listChanged"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "tools"
          ],
          "additionalProperties": false
        },
        "serverInfo": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "version": {
              "type": "string"
            }
          },
          "required": [
            "name",
            "version"
          ],
          "additionalProperties": false
        },
        "instructions": {
          "type": "string"
        }
      },
      "required": [
        "protocolVersion",
        "capabilities",
        "serverInfo",
        "instructions"
      ],
      "additionalProperties": false
    },
    "JsonRpcError": {
      "type": "object",
      "properties": {
        "jsonrpc": {
          "const": "2.0"
        },
        "id": {
          "type": [
            "string",
            "integer",
            "null"
          ]
        },
        "error": {
          "type": "object",
          "properties": {
            "code": {
              "type": "integer"
            },
            "message": {
              "type": "string"
            },
            "data": {
              "description": "Optional structured error or retry details."
            }
          },
          "required": [
            "code",
            "message"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "jsonrpc",
        "id",
        "error"
      ],
      "additionalProperties": false
    },
    "JsonRpcSuccess": {
      "type": "object",
      "properties": {
        "jsonrpc": {
          "const": "2.0"
        },
        "id": {
          "type": [
            "string",
            "integer"
          ]
        },
        "result": {
          "oneOf": [
            {
              "$ref": "#/$defs/InitializeResult"
            },
            {
              "$ref": "#/$defs/ToolsListResult"
            },
            {
              "type": "object",
              "properties": {},
              "required": [],
              "additionalProperties": false
            },
            {
              "$ref": "#/$defs/BrowseChoicesResult"
            },
            {
              "$ref": "#/$defs/DocumentSearchResult"
            },
            {
              "$ref": "#/$defs/PlayerRatingResult"
            },
            {
              "$ref": "#/$defs/RulesSearchResult"
            },
            {
              "$ref": "#/$defs/ToolErrorResult"
            },
            {
              "$ref": "#/$defs/ResourcesListResult"
            },
            {
              "$ref": "#/$defs/ResourcesReadResult"
            }
          ]
        }
      },
      "required": [
        "jsonrpc",
        "id",
        "result"
      ],
      "additionalProperties": false
    },
    "PlayerRating": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "found": {
              "const": false
            },
            "spoken_reply": {
              "type": "string"
            },
            "source": {
              "const": "MYOPL"
            },
            "source_url": {
              "type": "string",
              "format": "uri"
            },
            "retrieved_at": {
              "type": "string",
              "format": "date-time",
              "description": "UTC retrieval timestamp when supplied by the card-capable server."
            }
          },
          "required": [
            "found",
            "spoken_reply",
            "source",
            "source_url"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "found": {
              "const": true
            },
            "username": {
              "type": "string"
            },
            "sport": {
              "const": "pickleball"
            },
            "singles_opl": {
              "type": [
                "string",
                "null"
              ],
              "description": "Published decimal string or null; do not estimate a missing rating."
            },
            "doubles_opl": {
              "type": [
                "string",
                "null"
              ]
            },
            "guidance": {
              "type": "string"
            },
            "spoken_reply": {
              "type": "string"
            },
            "source": {
              "const": "MYOPL"
            },
            "source_url": {
              "type": "string",
              "format": "uri"
            },
            "retrieved_at": {
              "type": "string",
              "format": "date-time",
              "description": "UTC retrieval timestamp when supplied by the card-capable server."
            },
            "singles": {
              "$ref": "#/$defs/PublicRatingSummary"
            },
            "doubles": {
              "$ref": "#/$defs/PublicRatingSummary"
            },
            "messenger_url": {
              "type": "string",
              "format": "uri"
            }
          },
          "required": [
            "found",
            "username",
            "sport",
            "singles_opl",
            "doubles_opl",
            "guidance",
            "spoken_reply",
            "source",
            "source_url",
            "singles",
            "doubles",
            "messenger_url"
          ],
          "additionalProperties": false
        }
      ]
    },
    "PlayerRatingResult": {
      "type": "object",
      "properties": {
        "content": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TextContent"
          },
          "minItems": 1
        },
        "structuredContent": {
          "$ref": "#/$defs/PlayerRating"
        },
        "isError": {
          "const": false
        }
      },
      "required": [
        "content",
        "structuredContent",
        "isError"
      ],
      "additionalProperties": false
    },
    "PublicRatingSummary": {
      "type": "object",
      "properties": {
        "rating": {
          "type": [
            "string",
            "null"
          ]
        },
        "status": {
          "enum": [
            "rated",
            "unrated"
          ]
        },
        "reliability_score": {
          "type": [
            "number",
            "null"
          ],
          "minimum": 0,
          "maximum": 100
        },
        "games_played": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 0
        },
        "games_won": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 0
        },
        "games_lost": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 0
        },
        "points_won": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 0
        },
        "points_lost": {
          "type": [
            "integer",
            "null"
          ],
          "minimum": 0
        }
      },
      "additionalProperties": false,
      "required": [
        "rating",
        "status",
        "reliability_score",
        "games_played",
        "games_won",
        "games_lost",
        "points_won",
        "points_lost"
      ],
      "description": "Public rating-card totals. Null means unavailable, never zero. Games are not matches."
    },
    "ResourceContent": {
      "type": "object",
      "properties": {
        "uri": {
          "const": "ui://myopl/public-rating-v1.html"
        },
        "name": {
          "type": "string"
        },
        "mimeType": {
          "const": "text/html;profile=mcp-app"
        },
        "text": {
          "type": "string"
        },
        "_meta": {
          "type": "object",
          "additionalProperties": true
        }
      },
      "required": [
        "uri",
        "name",
        "mimeType",
        "text"
      ],
      "additionalProperties": false
    },
    "ResourceDescription": {
      "type": "object",
      "properties": {
        "uri": {
          "const": "ui://myopl/public-rating-v1.html"
        },
        "name": {
          "type": "string"
        },
        "mimeType": {
          "const": "text/html;profile=mcp-app"
        }
      },
      "required": [
        "uri",
        "name",
        "mimeType"
      ],
      "additionalProperties": false
    },
    "ResourcesListResult": {
      "type": "object",
      "properties": {
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ResourceDescription"
          }
        }
      },
      "required": [
        "resources"
      ],
      "additionalProperties": false
    },
    "ResourcesReadResult": {
      "type": "object",
      "properties": {
        "contents": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ResourceContent"
          }
        }
      },
      "required": [
        "contents"
      ],
      "additionalProperties": false
    },
    "RuleEvidence": {
      "type": "object",
      "properties": {
        "rule": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "text": {
          "type": "string",
          "maxLength": 4000
        },
        "truncated": {
          "type": "boolean"
        },
        "authority": {
          "type": "string"
        },
        "rule_number": {
          "type": "string"
        },
        "official_text": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 4000,
          "description": "Verbatim excerpt, or null if redaction was necessary. Read truncated before treating this as complete."
        },
        "canonical_url": {
          "type": "string",
          "format": "uri"
        },
        "canonical_url_type": {
          "const": "rulebook_guide"
        }
      },
      "required": [
        "rule",
        "title",
        "text",
        "truncated",
        "authority",
        "rule_number",
        "official_text",
        "canonical_url",
        "canonical_url_type"
      ],
      "additionalProperties": false
    },
    "RulesSearch": {
      "type": "object",
      "properties": {
        "source": {
          "type": "string"
        },
        "governing_body": {
          "type": "string"
        },
        "edition": {
          "type": "string"
        },
        "language": {
          "type": "string"
        },
        "source_url": {
          "type": "string",
          "format": "uri"
        },
        "myopl_url": {
          "type": "string",
          "format": "uri"
        },
        "evidence": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/RuleEvidence"
          },
          "maxItems": 5
        },
        "clarification": {
          "type": [
            "string",
            "null"
          ]
        },
        "guidance": {
          "type": "string"
        },
        "answer": {
          "type": "string",
          "description": "Present when the server resolver is enabled. Preserve qualifications and requests for clarification."
        },
        "spoken_reply": {
          "type": "string"
        }
      },
      "required": [
        "source",
        "governing_body",
        "edition",
        "language",
        "source_url",
        "myopl_url",
        "evidence",
        "clarification",
        "guidance"
      ],
      "additionalProperties": false
    },
    "RulesSearchResult": {
      "type": "object",
      "properties": {
        "content": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TextContent"
          },
          "minItems": 1
        },
        "structuredContent": {
          "$ref": "#/$defs/RulesSearch"
        },
        "isError": {
          "const": false
        }
      },
      "required": [
        "content",
        "structuredContent",
        "isError"
      ],
      "additionalProperties": false
    },
    "TextContent": {
      "type": "object",
      "properties": {
        "type": {
          "const": "text"
        },
        "text": {
          "type": "string"
        }
      },
      "required": [
        "type",
        "text"
      ],
      "additionalProperties": false
    },
    "ToolDefinition": {
      "type": "object",
      "properties": {
        "name": {
          "enum": [
            "prepare_pickleball_browse",
            "search_pickleball_rules",
            "search_myopl_help",
            "search_myopl_website",
            "get_public_player_rating"
          ]
        },
        "description": {
          "type": "string"
        },
        "inputSchema": {
          "type": "object",
          "additionalProperties": true
        },
        "annotations": {
          "type": "object",
          "properties": {
            "readOnlyHint": {
              "const": true
            },
            "destructiveHint": {
              "const": false
            },
            "idempotentHint": {
              "const": true
            },
            "openWorldHint": {
              "const": true
            }
          },
          "required": [
            "readOnlyHint",
            "destructiveHint",
            "idempotentHint",
            "openWorldHint"
          ],
          "additionalProperties": false
        },
        "_meta": {
          "type": "object",
          "additionalProperties": true,
          "description": "MCP Apps resource selection and noauth client metadata."
        },
        "title": {
          "type": "string"
        }
      },
      "required": [
        "name",
        "description",
        "inputSchema",
        "annotations"
      ],
      "additionalProperties": false
    },
    "ToolErrorResult": {
      "type": "object",
      "properties": {
        "content": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TextContent"
          },
          "minItems": 1
        },
        "structuredContent": {
          "type": "object",
          "properties": {
            "error": {
              "type": "string"
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        },
        "isError": {
          "const": true
        }
      },
      "required": [
        "content",
        "structuredContent",
        "isError"
      ],
      "additionalProperties": false
    },
    "ToolsListResult": {
      "type": "object",
      "properties": {
        "tools": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ToolDefinition"
          }
        }
      },
      "required": [
        "tools"
      ],
      "additionalProperties": false
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/myopl-net-mcp-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.