CourtlyGo

Tennis, pickleball and padel courts from OpenStreetMap: surface, lighting, access, fee. Read-only.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
73%
이름 품질
100%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~867토큰 (도구 정의)
~2.2 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 0.68%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "courts": {
      "url": "https://courtlygo.com/mcp"
    }
  }
}

원격 엔드포인트

https://courtlygo.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (3)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢search_courts(sport, city, country, lat, lon, ...)

Search tennis, padel and pickleball courts in a covered city, metro area or around a point. Use 'city' (e.g. 'Austin, TX', 'Long Beach', 'Tbilisi' or 'Los Angeles area'; 'country' if the name is ambiguous) or 'lat'+'lon'+'radius_km'. Results are venues (courts within 70 m are merged) with number of courts, surface, lighting, access, fee, address or the park/street nearby, and the source of each record. Filters are strict: a court passes only if the property is explicitly mapped; set match_unknown=true to also include courts where it is unknown. Data comes from OpenStreetMap (ODbL) and is often incomplete; every answer carries the data date and attribution.

입력 스키마

{
  "type": "object",
  "properties": {
    "sport": {
      "type": "string",
      "enum": [
        "tennis",
        "padel",
        "pickleball"
      ],
      "description": "Sport: tennis, padel or pickleball. Omit for any."
    },
    "city": {
      "type": "string",
      "description": "A covered city, e.g. 'Austin, TX', 'Long Beach' or 'Tbilisi', or a whole metro area, e.g. 'Los Angeles area' (all of Los Angeles and Orange counties) or 'New York area'. See list_coverage."
    },
    "country": {
      "type": "string",
      "description": "Country name or ISO code, e.g. 'Georgia', 'GE', 'US'. Use it when the same city name exists in several countries; with lat/lon it limits the search to that country. Distances are in miles for the US and metres/kilometres elsewhere (distance_km is always given)."
    },
    "lat": {
      "type": "number",
      "description": "Latitude of the search point (use with lon)."
    },
    "lon": {
      "type": "number",
      "description": "Longitude of the search point (use with lat)."
    },
    "radius_km": {
      "type": "number",
      "default": 5,
      "minimum": 0.1,
      "maximum": 50,
      "description": "Search radius around lat/lon, km."
    },
    "setting": {
      "type": "string",
      "enum": [
        "any",
        "outdoor",
        "indoor"
      ],
      "default": "any",
      "description": "'outdoor' = open-air courts; 'indoor' = indoor or covered."
    },
    "lit": {
      "type": "boolean",
      "default": false,
      "description": "Only courts with lighting."
    },
    "open_to_public": {
      "type": "boolean",
      "default": false,
      "description": "Only courts anyone can use: access is public, or free of charge, or inside a park. Clubs (access_status club), private and likely private courts are excluded."
    },
    "free": {
      "type": "boolean",
      "default": false,
      "description": "Only courts mapped as free of charge (fee=no)."
    },
    "min_courts": {
      "type": "integer",
      "default": 0,
      "minimum": 0,
      "description": "Minimum number of courts at the venue."
    },
    "match_unknown": {
      "type": "boolean",
      "default": false,
      "description": "Also return courts where a filtered property is not mapped (unknown)."
    },
    "limit": {
      "type": "integer",
      "default": 10,
      "minimum": 1,
      "maximum": 50
    },
    "offset": {
      "type": "integer",
      "default": 0,
      "minimum": 0,
      "maximum": 5000,
      "description": "Skip this many results (paging)."
    }
  },
  "additionalProperties": false
}
🟢get_court(id)

Get full details of one court venue by id (from search_courts): courts per sport, surface, access, OpenStreetMap links, source, data date and caveats.

입력 스키마

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Venue id, e.g. 'way-123456'."
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢list_coverage

List the covered cities with the number of venues per sport, the data date and the attribution.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 3개