{
  "tools": [
    {
      "description": "Batch lookup by FFE licences (1..50). Opt-out rows are omitted.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "include": {
            "anyOf": [
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "licences": {
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "licences"
        ],
        "type": "object"
      },
      "name": "batch_lookup_players"
    },
    {
      "description": "List FFE clubs (paginated). Returns clubs plus total count.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "federation": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "league": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "limit": {
            "default": 50,
            "type": "integer"
          },
          "offset": {
            "default": 0,
            "type": "integer"
          }
        },
        "type": "object"
      },
      "name": "list_clubs"
    },
    {
      "description": "Look up one FFE player by licence (e.g. W53002), internal id, or FIDE id.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "identifier": {
            "type": "string"
          },
          "include": {
            "anyOf": [
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "kind": {
            "default": "licence",
            "enum": [
              "licence",
              "id",
              "fide"
            ],
            "type": "string"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "lookup_player"
    },
    {
      "description": "Search FIDE players by name (cross-base).\n\nReturns players from the FIDE rating list, including those with no FFE\nlicence.  Each result includes a ``source: \"fide\"`` field.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "federation": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "first_name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "last_name": {
            "type": "string"
          },
          "limit": {
            "default": 25,
            "type": "integer"
          }
        },
        "required": [
          "last_name"
        ],
        "type": "object"
      },
      "name": "search_fide_players_by_name"
    },
    {
      "description": "Search players by club name (accent-insensitive partial match).",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "category": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "club": {
            "type": "string"
          },
          "federation": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "include": {
            "anyOf": [
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "league": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "limit": {
            "default": 20,
            "type": "integer"
          },
          "max_rating": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "min_rating": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "club"
        ],
        "type": "object"
      },
      "name": "search_players_by_club"
    },
    {
      "description": "Search by last name (accent-insensitive) and optional first name.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "category": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "federation": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "first_name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "include": {
            "anyOf": [
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "last_name": {
            "type": "string"
          },
          "league": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "limit": {
            "default": 20,
            "type": "integer"
          },
          "max_rating": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          },
          "min_rating": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "default": null
          }
        },
        "required": [
          "last_name"
        ],
        "type": "object"
      },
      "name": "search_players_by_name"
    }
  ]
}