Local Events Tracker

Search local events, follow artists and interests, get weekend recommendations and change alerts

사용해야 할까요

품질 및 안전성

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

발견 사항 (2)

  • HIGHTool poisoning patterns detected
  • LOWTool description contains role marker that could confuse chat modelslist_local_event_alerts에서

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

컨텍스트 비용

~3,401토큰 (도구 정의)
~2.1 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 2.66%)

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

설치

원클릭 설치

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

{
  "mcpServers": {
    "local-events": {
      "url": "https://localeventstracker.com/mcp"
    }
  }
}

원격 엔드포인트

https://localeventstracker.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (11)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢search_local_events(city, country_code, zip, latitude, longitude, ...)

Find upcoming events (concerts, comedy, theatre, sports, family shows, festivals) near a US ZIP code, a city or coordinates, filtered by dates, categories (Music, Sports, Arts & Theatre, Film, Miscellaneous, or genres such as Jazz or Comedy), keywords, artist, venue and maximum price. Returns events with local date, time zone, venue, published price range (null means not published, never free), Ticketmaster link, freshness and coverage limits. Source: Ticketmaster only, so coverage varies by country; say so when results are thin. Never invent events beyond the results.

입력 스키마

{
  "type": "object",
  "properties": {
    "city": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "country_code": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    },
    "zip": {
      "type": "string",
      "pattern": "^\\d{5}$"
    },
    "latitude": {
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "longitude": {
      "type": "number",
      "minimum": -180,
      "maximum": 180
    },
    "radius_km": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 500
    },
    "start_date": {
      "type": "string",
      "maxLength": 40
    },
    "end_date": {
      "type": "string",
      "maxLength": 40
    },
    "categories": {
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 60
      }
    },
    "keywords": {
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      }
    },
    "artist": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "venue": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "max_price": {
      "type": "number",
      "minimum": 0,
      "maximum": 100000
    },
    "include_unpriced": {
      "type": "boolean"
    },
    "page": {
      "type": "integer",
      "minimum": 0,
      "maximum": 49
    },
    "size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_event_details(event_id)

Full details for one event by event_id (from any other tool): venue, performers, price range if published, ticket link, source records, when AgentStructure first saw it, and its history of detected changes. Refreshes from Ticketmaster when stored data is older than 6 hours.

입력 스키마

{
  "type": "object",
  "properties": {
    "event_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    }
  },
  "required": [
    "event_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟡track_event_interests(name, filters, preview)

Save a persistent watchlist: a place (US ZIP code, city or coordinates, plus radius_km) and/or followed artists or teams, with optional categories, keywords, venues, maximum price and how many days ahead. AgentStructure then checks on a schedule and records newly observed matching events and changes as alerts. Saving again with the same name replaces it. Returns current matches as a preview.

입력 스키마

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "pattern": "^[A-Za-z0-9 _-]{1,40}$"
    },
    "filters": {
      "type": "object",
      "properties": {
        "city": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
        },
        "country_code": {
          "type": "string",
          "pattern": "^[A-Za-z]{2}$"
        },
        "zip": {
          "type": "string",
          "pattern": "^\\d{5}$"
        },
        "place_label": {
          "type": "string",
          "minLength": 1,
          "maxLength": 60
        },
        "latitude": {
          "type": "number",
          "minimum": -90,
          "maximum": 90
        },
        "longitude": {
          "type": "number",
          "minimum": -180,
          "maximum": 180
        },
        "radius_km": {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 300
        },
        "categories": {
          "maxItems": 20,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          }
        },
        "keywords": {
          "maxItems": 10,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100
          }
        },
        "artists": {
          "maxItems": 25,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          }
        },
        "venues": {
          "maxItems": 10,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          }
        },
        "max_price": {
          "type": "number",
          "minimum": 0,
          "maximum": 100000
        },
        "include_unpriced": {
          "type": "boolean"
        },
        "days_ahead": {
          "type": "integer",
          "minimum": 1,
          "maximum": 365
        },
        "alert_on": {
          "minItems": 1,
          "maxItems": 2,
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "new_events",
              "changes"
            ]
          }
        }
      },
      "additionalProperties": false
    },
    "preview": {
      "type": "boolean"
    }
  },
  "required": [
    "name",
    "filters"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟡list_local_event_alerts(include_seen, limit, refresh)

Return new alerts for this user: newly observed events matching a watchlist or a followed artist, and changes (cancelled, postponed, rescheduled, date, time, venue or price changes, sale start) to matching or saved events. Returned alerts are marked as read. Set refresh true to run a small check right now (limited per hour). An empty list means nothing new, not nothing happening.

입력 스키마

{
  "type": "object",
  "properties": {
    "include_seen": {
      "type": "boolean"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "refresh": {
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟡get_weekend_recommendations(location_label, city, country_code, latitude, longitude, ...)

Rank events for the coming weekend (Friday to Sunday local dates) near a saved or given location, using the user's saved interests, followed artists, budget, preferred days and times, and past feedback. Each result says why it was recommended, using only what actually matched. Pass busy intervals from the user's calendar (if the user allowed calendar access in the assistant) to skip conflicts; free/busy is enough, never send event details.

입력 스키마

{
  "type": "object",
  "properties": {
    "location_label": {
      "type": "string",
      "pattern": "^[A-Za-z0-9 _-]{1,40}$"
    },
    "city": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "country_code": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    },
    "latitude": {
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "longitude": {
      "type": "number",
      "minimum": -180,
      "maximum": 180
    },
    "radius_km": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 300
    },
    "weekend_of": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "timezone": {
      "type": "string",
      "maxLength": 60
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "busy": {
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "start": {
            "type": "string",
            "maxLength": 40
          },
          "end": {
            "type": "string",
            "maxLength": 40
          }
        },
        "required": [
          "start",
          "end"
        ],
        "additionalProperties": false
      }
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_event_changes(event_id, since, limit)

Detected changes with previous and current values, for one event_id or for all events the user saved, is going to or marked interested. EVENT_MISSING_FROM_SOURCE is low confidence and does not mean cancelled.

입력 스키마

{
  "type": "object",
  "properties": {
    "event_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "since": {
      "type": "string",
      "maxLength": 40
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🔴manage_event_watchlist(action, name, filters)

List, pause, resume, update or delete the user's watchlists by name. Also shows plan limits.

입력 스키마

{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "enum": [
        "list",
        "pause",
        "resume",
        "delete",
        "update"
      ]
    },
    "name": {
      "type": "string",
      "pattern": "^[A-Za-z0-9 _-]{1,40}$"
    },
    "filters": {
      "type": "object",
      "properties": {
        "city": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
        },
        "country_code": {
          "type": "string",
          "pattern": "^[A-Za-z]{2}$"
        },
        "zip": {
          "type": "string",
          "pattern": "^\\d{5}$"
        },
        "place_label": {
          "type": "string",
          "minLength": 1,
          "maxLength": 60
        },
        "latitude": {
          "type": "number",
          "minimum": -90,
          "maximum": 90
        },
        "longitude": {
          "type": "number",
          "minimum": -180,
          "maximum": 180
        },
        "radius_km": {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 300
        },
        "categories": {
          "maxItems": 20,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 60
          }
        },
        "keywords": {
          "maxItems": 10,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100
          }
        },
        "artists": {
          "maxItems": 25,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          }
        },
        "venues": {
          "maxItems": 10,
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          }
        },
        "max_price": {
          "type": "number",
          "minimum": 0,
          "maximum": 100000
        },
        "include_unpriced": {
          "type": "boolean"
        },
        "days_ahead": {
          "type": "integer",
          "minimum": 1,
          "maximum": 365
        },
        "alert_on": {
          "minItems": 1,
          "maxItems": 2,
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "new_events",
              "changes"
            ]
          }
        }
      },
      "additionalProperties": false
    }
  },
  "required": [
    "action"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟡save_event_feedback(event_id, feedback)

Record the user's reaction to an event: interested, not_interested (never recommend again), going, saved (alerts on changes), more_like_this or less_like_this (adjusts genre weighting). Only call when the user says so; never infer it.

입력 스키마

{
  "type": "object",
  "properties": {
    "event_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "feedback": {
      "type": "string",
      "enum": [
        "interested",
        "not_interested",
        "going",
        "saved",
        "more_like_this",
        "less_like_this"
      ]
    }
  },
  "required": [
    "event_id",
    "feedback"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_followed_artists

List the performers and teams this user follows.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🔴manage_event_profile(action, max_price, currency, preferred_days, preferred_times, ...)

View or change the user's event preferences and privacy: budget, preferred days and times, time zone, interests (artist, team, genre, category, venue, keyword), saved locations (city precision; trips with valid_from/valid_until never replace home), clear personalization, or delete the account and all its data (both need confirm: true and an explicit request from the user).

입력 스키마

{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "enum": [
        "get",
        "update",
        "add_interest",
        "remove_interest",
        "set_location",
        "delete_location",
        "clear_personalization",
        "delete_account"
      ]
    },
    "max_price": {
      "anyOf": [
        {
          "type": "number",
          "minimum": 0,
          "maximum": 100000
        },
        {
          "type": "null"
        }
      ]
    },
    "currency": {
      "anyOf": [
        {
          "type": "string",
          "pattern": "^[A-Za-z]{3}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "preferred_days": {
      "maxItems": 7,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "sunday",
          "monday",
          "tuesday",
          "wednesday",
          "thursday",
          "friday",
          "saturday"
        ]
      }
    },
    "preferred_times": {
      "maxItems": 4,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "morning",
          "afternoon",
          "evening",
          "night"
        ]
      }
    },
    "timezone": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 60
        },
        {
          "type": "null"
        }
      ]
    },
    "interest_type": {
      "type": "string",
      "enum": [
        "artist",
        "team",
        "genre",
        "category",
        "venue",
        "keyword"
      ]
    },
    "interest": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "weight": {
      "type": "number",
      "minimum": 0.1,
      "maximum": 1
    },
    "location": {
      "type": "object",
      "properties": {
        "label": {
          "type": "string",
          "pattern": "^[A-Za-z0-9 _-]{1,40}$"
        },
        "city": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100
        },
        "country_code": {
          "type": "string",
          "pattern": "^[A-Za-z]{2}$"
        },
        "latitude": {
          "type": "number",
          "minimum": -90,
          "maximum": 90
        },
        "longitude": {
          "type": "number",
          "minimum": -180,
          "maximum": 180
        },
        "radius_km": {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 300
        },
        "is_default": {
          "type": "boolean"
        },
        "valid_from": {
          "type": "string",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
        },
        "valid_until": {
          "type": "string",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
        }
      },
      "required": [
        "label"
      ],
      "additionalProperties": false
    },
    "location_label": {
      "type": "string",
      "pattern": "^[A-Za-z0-9 _-]{1,40}$"
    },
    "confirm": {
      "type": "boolean",
      "const": true
    }
  },
  "required": [
    "action"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🔴manage_alert_delivery(action, email)

Choose where alerts go besides this chat: add_email sends a confirmation link to the address (alerts start only after the user confirms), add_phone returns a private subscribe link for the free ntfy phone app, remove_email and remove_phone stop them, get shows the current setup. One digest is sent after each daily check. Only add an address the user gave for this purpose. Text messages (SMS) are not available.

입력 스키마

{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "enum": [
        "get",
        "add_email",
        "remove_email",
        "add_phone",
        "remove_phone"
      ]
    },
    "email": {
      "type": "string",
      "maxLength": 200,
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
    }
  },
  "required": [
    "action"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

커뮤니티

이 서버 평가하기

증거

최근 관측

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