BagIQ MCP

Analyse disc golf bag gaps and overlap, recommend discs, and open an interactive Bag Map.

사용해야 할까요

품질 및 안전성

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

발견 사항 (3)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainanalyze_bag에서
  • MEDIUMTool description contains URL to non-standard domainget_shared_bag에서

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

컨텍스트 비용

~2,455토큰 (도구 정의)
~3.9 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.92%)

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

설치

원클릭 설치

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

{
  "mcpServers": {
    "bagiq": {
      "url": "https://data.bagiq.app/mcp"
    }
  }
}

원격 엔드포인트

https://data.bagiq.app/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (6)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢analyze_bag(share_url, share_id, discs, preferred_brand)

Performs a complete BagIQ analysis on a player's disc golf bag. Can accept a list of discs OR a BagIQ share link (e.g. 'https://app.bagiq.app/?s=4fisr8a7'). Returns slot coverage percentage, bag identity label (e.g. 'Overstable-heavy', 'Chaos bag'), top missing shot gaps, redundant overlaps, and mapped flight coordinates.

입력 스키마

{
  "type": "object",
  "properties": {
    "share_url": {
      "type": "string",
      "description": "Optional BagIQ share link (e.g. 'https://app.bagiq.app/?s=4fisr8a7' or 'https://app.bagiq.app/?discs=...')"
    },
    "share_id": {
      "type": "string",
      "description": "Optional BagIQ short share ID (e.g. '4fisr8a7')"
    },
    "discs": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "string",
            "description": "Disc name, slug, or brand+name string (e.g. 'Innova Destroyer' or 'discraft-buzzz')"
          },
          {
            "type": "object",
            "properties": {
              "disc": {
                "type": "string",
                "description": "Disc name or slug (required)"
              },
              "brand": {
                "type": "string",
                "description": "Manufacturer brand name"
              },
              "plastic": {
                "type": "string",
                "description": "Plastic blend (e.g. Star, Champion, ESP)"
              },
              "wear_state": {
                "type": "string",
                "enum": [
                  "new",
                  "seasoned",
                  "beat"
                ],
                "description": "Wear condition"
              },
              "confidence": {
                "type": "string",
                "enum": [
                  "shaky",
                  "okay",
                  "trusted",
                  "money disc"
                ],
                "description": "Player confidence"
              },
              "usage": {
                "type": "string",
                "enum": [
                  "rare",
                  "sometimes",
                  "often",
                  "all the time"
                ],
                "description": "Usage frequency"
              },
              "throw_type": {
                "type": "string",
                "enum": [
                  "backhand",
                  "forehand",
                  "both"
                ],
                "description": "Primary throw style"
              },
              "use_case": {
                "type": "string",
                "description": "Role or shot description (e.g. 'windy drives', 'tunnel shots')"
              },
              "locked": {
                "type": "boolean",
                "description": "If true, lock this disc to prevent cut recommendations"
              }
            },
            "required": [
              "disc"
            ]
          }
        ]
      },
      "description": "List of discs currently in the bag (optional if share_url or share_id is provided)",
      "minItems": 1,
      "maxItems": 35
    },
    "preferred_brand": {
      "type": "string",
      "description": "Optional preferred brand for recommendations (e.g. 'Innova', 'Discraft')"
    }
  }
}
🟢find_bag_gaps(share_url, share_id, discs)

Identifies missing shot shapes and unserved flight slots across BagIQ's 9 core slot targets (putter, midrange, fairway, and distance drivers), ranking voids by severity. Accepts discs list or a BagIQ share link.

입력 스키마

{
  "type": "object",
  "properties": {
    "share_url": {
      "type": "string",
      "description": "Optional BagIQ share link (e.g. 'https://app.bagiq.app/?s=4fisr8a7')"
    },
    "share_id": {
      "type": "string",
      "description": "Optional BagIQ short share ID (e.g. '4fisr8a7')"
    },
    "discs": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "string",
            "description": "Disc name, slug, or brand+name string (e.g. 'Innova Destroyer' or 'discraft-buzzz')"
          },
          {
            "type": "object",
            "properties": {
              "disc": {
                "type": "string",
                "description": "Disc name or slug (required)"
              },
              "brand": {
                "type": "string",
                "description": "Manufacturer brand name"
              },
              "plastic": {
                "type": "string",
                "description": "Plastic blend (e.g. Star, Champion, ESP)"
              },
              "wear_state": {
                "type": "string",
                "enum": [
                  "new",
                  "seasoned",
                  "beat"
                ],
                "description": "Wear condition"
              },
              "confidence": {
                "type": "string",
                "enum": [
                  "shaky",
                  "okay",
                  "trusted",
                  "money disc"
                ],
                "description": "Player confidence"
              },
              "usage": {
                "type": "string",
                "enum": [
                  "rare",
                  "sometimes",
                  "often",
                  "all the time"
                ],
                "description": "Usage frequency"
              },
              "throw_type": {
                "type": "string",
                "enum": [
                  "backhand",
                  "forehand",
                  "both"
                ],
                "description": "Primary throw style"
              },
              "use_case": {
                "type": "string",
                "description": "Role or shot description (e.g. 'windy drives', 'tunnel shots')"
              },
              "locked": {
                "type": "boolean",
                "description": "If true, lock this disc to prevent cut recommendations"
              }
            },
            "required": [
              "disc"
            ]
          }
        ]
      },
      "description": "List of discs in the bag (optional if share_url or share_id is provided)",
      "minItems": 1,
      "maxItems": 35
    }
  }
}
🟢detect_overlap(share_url, share_id, discs)

Detects redundant molds occupying the same flight slot or shot role, ranking pairs by overlap severity and recommending which disc to keep vs cut. Accepts discs list or a BagIQ share link.

입력 스키마

{
  "type": "object",
  "properties": {
    "share_url": {
      "type": "string",
      "description": "Optional BagIQ share link (e.g. 'https://app.bagiq.app/?s=4fisr8a7')"
    },
    "share_id": {
      "type": "string",
      "description": "Optional BagIQ short share ID (e.g. '4fisr8a7')"
    },
    "discs": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "string",
            "description": "Disc name, slug, or brand+name string (e.g. 'Innova Destroyer' or 'discraft-buzzz')"
          },
          {
            "type": "object",
            "properties": {
              "disc": {
                "type": "string",
                "description": "Disc name or slug (required)"
              },
              "brand": {
                "type": "string",
                "description": "Manufacturer brand name"
              },
              "plastic": {
                "type": "string",
                "description": "Plastic blend (e.g. Star, Champion, ESP)"
              },
              "wear_state": {
                "type": "string",
                "enum": [
                  "new",
                  "seasoned",
                  "beat"
                ],
                "description": "Wear condition"
              },
              "confidence": {
                "type": "string",
                "enum": [
                  "shaky",
                  "okay",
                  "trusted",
                  "money disc"
                ],
                "description": "Player confidence"
              },
              "usage": {
                "type": "string",
                "enum": [
                  "rare",
                  "sometimes",
                  "often",
                  "all the time"
                ],
                "description": "Usage frequency"
              },
              "throw_type": {
                "type": "string",
                "enum": [
                  "backhand",
                  "forehand",
                  "both"
                ],
                "description": "Primary throw style"
              },
              "use_case": {
                "type": "string",
                "description": "Role or shot description (e.g. 'windy drives', 'tunnel shots')"
              },
              "locked": {
                "type": "boolean",
                "description": "If true, lock this disc to prevent cut recommendations"
              }
            },
            "required": [
              "disc"
            ]
          }
        ]
      },
      "description": "List of discs in the bag (minimum 2 discs, optional if share_url or share_id is provided)",
      "minItems": 2,
      "maxItems": 35
    }
  }
}
🟢recommend_bag_fillers(share_url, share_id, discs, gap_id, brand, ...)

Suggests the highest-rated discs to fill missing shot slots or close voids in the bag based on BagIQ matrix coordinates and DiscList ratings, with interactive 1-click 'Add to Bag' deep links. Accepts discs list or a BagIQ share link.

입력 스키마

{
  "type": "object",
  "properties": {
    "share_url": {
      "type": "string",
      "description": "Optional BagIQ share link (e.g. 'https://app.bagiq.app/?s=4fisr8a7')"
    },
    "share_id": {
      "type": "string",
      "description": "Optional BagIQ short share ID (e.g. '4fisr8a7')"
    },
    "discs": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "string",
            "description": "Disc name, slug, or brand+name string (e.g. 'Innova Destroyer' or 'discraft-buzzz')"
          },
          {
            "type": "object",
            "properties": {
              "disc": {
                "type": "string",
                "description": "Disc name or slug (required)"
              },
              "brand": {
                "type": "string",
                "description": "Manufacturer brand name"
              },
              "plastic": {
                "type": "string",
                "description": "Plastic blend (e.g. Star, Champion, ESP)"
              },
              "wear_state": {
                "type": "string",
                "enum": [
                  "new",
                  "seasoned",
                  "beat"
                ],
                "description": "Wear condition"
              },
              "confidence": {
                "type": "string",
                "enum": [
                  "shaky",
                  "okay",
                  "trusted",
                  "money disc"
                ],
                "description": "Player confidence"
              },
              "usage": {
                "type": "string",
                "enum": [
                  "rare",
                  "sometimes",
                  "often",
                  "all the time"
                ],
                "description": "Usage frequency"
              },
              "throw_type": {
                "type": "string",
                "enum": [
                  "backhand",
                  "forehand",
                  "both"
                ],
                "description": "Primary throw style"
              },
              "use_case": {
                "type": "string",
                "description": "Role or shot description (e.g. 'windy drives', 'tunnel shots')"
              },
              "locked": {
                "type": "boolean",
                "description": "If true, lock this disc to prevent cut recommendations"
              }
            },
            "required": [
              "disc"
            ]
          }
        ]
      },
      "description": "Current bag contents (optional if share_url or share_id is provided)",
      "minItems": 1,
      "maxItems": 35
    },
    "gap_id": {
      "type": "string",
      "description": "Specific gap ID to fill (e.g. 'fairway-understable', 'approach-overstable', 'mid-neutral')"
    },
    "brand": {
      "type": "string",
      "description": "Optional brand filter for recommendations"
    },
    "limit": {
      "type": "integer",
      "description": "Number of recommendations per gap (1..5, default 3)",
      "default": 3
    }
  }
}
🟢build_minimal_bag(share_url, share_id, discs, target_count)

Extracts an optimal 3-to-5 disc minimalist setup from a larger bag, maximizing shot coverage while detailing necessary compromises. Accepts discs list or a BagIQ share link.

입력 스키마

{
  "type": "object",
  "properties": {
    "share_url": {
      "type": "string",
      "description": "Optional BagIQ share link (e.g. 'https://app.bagiq.app/?s=4fisr8a7')"
    },
    "share_id": {
      "type": "string",
      "description": "Optional BagIQ short share ID (e.g. '4fisr8a7')"
    },
    "discs": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "string",
            "description": "Disc name, slug, or brand+name string (e.g. 'Innova Destroyer' or 'discraft-buzzz')"
          },
          {
            "type": "object",
            "properties": {
              "disc": {
                "type": "string",
                "description": "Disc name or slug (required)"
              },
              "brand": {
                "type": "string",
                "description": "Manufacturer brand name"
              },
              "plastic": {
                "type": "string",
                "description": "Plastic blend (e.g. Star, Champion, ESP)"
              },
              "wear_state": {
                "type": "string",
                "enum": [
                  "new",
                  "seasoned",
                  "beat"
                ],
                "description": "Wear condition"
              },
              "confidence": {
                "type": "string",
                "enum": [
                  "shaky",
                  "okay",
                  "trusted",
                  "money disc"
                ],
                "description": "Player confidence"
              },
              "usage": {
                "type": "string",
                "enum": [
                  "rare",
                  "sometimes",
                  "often",
                  "all the time"
                ],
                "description": "Usage frequency"
              },
              "throw_type": {
                "type": "string",
                "enum": [
                  "backhand",
                  "forehand",
                  "both"
                ],
                "description": "Primary throw style"
              },
              "use_case": {
                "type": "string",
                "description": "Role or shot description (e.g. 'windy drives', 'tunnel shots')"
              },
              "locked": {
                "type": "boolean",
                "description": "If true, lock this disc to prevent cut recommendations"
              }
            },
            "required": [
              "disc"
            ]
          }
        ]
      },
      "description": "Full disc collection or bag (optional if share_url or share_id is provided)",
      "minItems": 3,
      "maxItems": 35
    },
    "target_count": {
      "type": "integer",
      "description": "Target number of discs in the minimal bag (2..6, default 3)",
      "default": 3
    }
  }
}
🟢get_shared_bag(share_url, share_id)

Retrieves and inspects a player's saved disc golf bag from a BagIQ share link (e.g. 'https://app.bagiq.app/?s=4fisr8a7'), short share ID, or slug link. Returns the full disc breakdown with plastics, wear states, confidence ratings, slot coverage, and interactive BagIQ deep links.

입력 스키마

{
  "type": "object",
  "properties": {
    "share_url": {
      "type": "string",
      "description": "BagIQ share link URL (e.g. 'https://app.bagiq.app/?s=4fisr8a7' or 'https://app.bagiq.app/?discs=innova-destroyer,discraft-buzzz')"
    },
    "share_id": {
      "type": "string",
      "description": "BagIQ short share ID (e.g. '4fisr8a7')"
    }
  }
}

커뮤니티

이 서버 평가하기

증거

최근 관측

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