{
  "serverInfo": {
    "name": "GolfCore",
    "version": "1.3.0"
  },
  "description": "Golf course data for 30,000 courses in 153 countries, and GolfCore's caddie on the course. Search needs no account. Distance to the flag and the caddie are GolfCore Premium: they sign the golfer in to GolfCore with OAuth, as does the Premium subscription, and read the golfer's position from the GolfCore app on their phone when the client has none.",
  "url": "https://mcp.golfcore.org/mcp",
  "transport": {
    "type": "streamable-http",
    "endpoint": "https://mcp.golfcore.org/mcp"
  },
  "capabilities": {
    "tools": true,
    "resources": false,
    "prompts": false
  },
  "authentication": {
    "required": false,
    "protected_resource_metadata": "https://mcp.golfcore.org/.well-known/oauth-protected-resource",
    "authorization_server": "https://www.golfcore.app",
    "scopes": ["caddie"]
  },
  "documentation": "https://www.golfcore.org/developers/#mcp",
  "tools": [
    {
      "name": "search",
      "title": "Search GolfCore",
      "description": "Ask by course name, by course slug, by place, or about GolfCore itself. Returns courses with their location and mapping coverage, each course's per-hole card and tee ratings when asked for, the town, region and country pages that count and list every course in a place, and GolfCore's own product pages. An optional scope narrows it to any of product, country, region, city, courses, scorecards, slug. An optional near point ({lat, lng}) with radius_miles returns courses nearest first with their distance, and coverage keeps only courses with contours, a traced map, a scorecard or ratings. Every course carries url, its page to cite, and app_url, which opens its map in the GolfCore app.",
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      }
    },
    {
      "name": "distance_to_flag",
      "title": "Distance to the flag",
      "description": "The course and hole the golfer is on, its par and stroke index, and yards to today's pin and to the middle of the green. GolfCore Premium: the golfer signs in to GolfCore. Takes the golfer's precise lat and lng when the client has them; otherwise the position comes from the GolfCore app on their phone.",
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "ask_caddie",
      "title": "Ask the GolfCore caddie",
      "description": "GolfCore's caddie reads the shot the golfer is standing over: distance to the flag, the hazards and trees on the line, wind modeled for the terrain, the elevation change, and the golfer's own club distances. It answers the golfer's question with a club and a line. Requires the golfer to sign in to GolfCore and GolfCore Premium; without it the result quotes the plans for subscribe_premium.",
      "annotations": {
        "readOnlyHint": false,
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false
      }
    },
    {
      "name": "subscribe_premium",
      "title": "Subscribe to GolfCore Premium",
      "description": "Creates a Stripe checkout URL for the signed-in golfer to review and pay. plus_monthly is $10 a month and plus_yearly $100 a year; a first-time subscriber pays half for the first month or year. This tool does not charge the golfer or activate Premium.",
      "annotations": {
        "readOnlyHint": false,
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": true
      }
    }
  ]
}
