Local Events Tracker

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

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
71%
Qualität der Benennung
100%
Risiko der Vergiftung
80%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (2)

  • HIGHTool poisoning patterns detected
  • LOWTool description contains role marker that could confuse chat modelsin list_local_event_alerts

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~3,401Tokens (Tool-Definitionen)
~2.1 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (2.66% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

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

Remote-Endpunkte

https://localeventstracker.com/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (11)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢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.

Eingabe-Schema

{
  "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.

Eingabe-Schema

{
  "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.

Eingabe-Schema

{
  "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.

Eingabe-Schema

{
  "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.

Eingabe-Schema

{
  "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.

Eingabe-Schema

{
  "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.

Eingabe-Schema

{
  "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.

Eingabe-Schema

{
  "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.

Eingabe-Schema

{
  "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).

Eingabe-Schema

{
  "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.

Eingabe-Schema

{
  "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
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet11 Tools