← Files PartynadoARCHIVED FILE
plugin.json
7.8 KB · Nov 3, 2026 · 19:01 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "partynado",
"version": "0.2.3",
"description": "Find public parties, club nights, raves, festivals and open airs in Switzerland and Germany with Partynado.",
"author": {
"name": "JOHANNES RAPHAEL NOTHSTEIN",
"email": "contact@partynado.com",
"url": "https://partynado.com"
},
"homepage": "https://partynado.com",
"keywords": [
"events",
"parties",
"Switzerland",
"Germany"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Partynado",
"shortDescription": "Find your next party",
"longDescription": "Discover public parties in Switzerland and Germany. Browse event cards, see local dates, venues and admission prices, and open details on Partynado. Refine location, date, music or budget in chat. Unknown prices are shown explicitly. No account or purchase is required.",
"developerName": "JOHANNES RAPHAEL NOTHSTEIN",
"category": "Entertainment",
"capabilities": [
"Read"
],
"logo": "./assets/icon.png",
"composerIcon": "./assets/icon.png",
"defaultPrompt": [
"Find parties in Z\u00fcrich this weekend.",
"Find techno parties in Berlin this weekend.",
"Find parties in Basel this weekend for CHF 20 or less."
],
"websiteURL": "https://partynado.com/en-CH/chatgpt",
"supportURL": "https://partynado.com/en-CH/contact",
"privacyPolicyURL": "https://partynado.com/en-CH/datenschutz",
"termsOfServiceURL": "https://partynado.com/en-CH/agb"
},
"publication": {
"countries": [],
"release_notes": "Party discovery previews up to six cards in a responsive grid. A View all link opens the complete website listing with the same location, exact local date window, music, category, audience, price options and sort order. Search guidance and review cases reflect the grid and website handoff."
},
"review": {
"demo_recording_url": "https://swiss-events.fsn1.your-objectstorage.com/plugin-review/partynado/demo-7463381ce650214e.mp4",
"commerce": false,
"commerce_description": "Discovery only. The plugin searches public events and opens their detail pages. Any ticket purchase takes place separately on the website; this plugin does not reserve, sell or purchase tickets.",
"test_cases": {
"positive": [
{
"description": "Swiss core discovery, responsive six-card preview and full-results handoff. Start a new English conversation. Live availability changes; evaluate the returned data rather than a fixed event title. Verify both a complete preview and a search with additional matches when available.",
"prompt": "Find parties in Z\u00fcrich this weekend. Include event links.",
"tools_triggered": "search_events; get_event_filters if needed",
"expected_behavior": "Initial search uses en-CH, city Z\u00fcrich or zurich, datePreset weekend, limit 6 and offset 0. Preview at most six cards in a responsive grid and recommend up to three actual matches with returned event URLs. Display local wall-clock times, CHF prices and explicit unknown prices. When more matches exist than are previewed, show View all with the total and open the returned browseUrl on the website. The destination retains exact date bounds, location/radius, music, category, audience, price/unknown-price choice and sorting, starts at the beginning of the results, and retains those filters while loading subsequent pages. A complete result set of at most six needs no View all link. On phones, cards fit without horizontal overflow. If no matches exist, explain that without inventing events."
},
{
"description": "German market and music filtering. Start a new English conversation; retain only supported techno matches returned by the live server.",
"prompt": "Find techno parties in Berlin this weekend. Include event links.",
"tools_triggered": "get_event_filters if genre keys are needed, search_events",
"expected_behavior": "Use en-DE, Berlin or berlin, weekend, genres containing techno and limit 6. Match the German market and EUR currency. Explain unknown admission prices, link each recommendation and do not invent availability. Explain zero results when applicable."
},
{
"description": "Inclusive CHF budget boundary. Start a new English conversation; the user has not agreed to include unknown prices.",
"prompt": "Find parties in Basel this weekend for CHF 20 or less. Only include confirmed prices.",
"tools_triggered": "search_events",
"expected_behavior": "Use en-CH, Basel or basel, weekend, maxPrice 20, includeUnknownPrice false, limit 6. Every match has known admission no higher than CHF 20, including explicitly free events. Explain excluded unknown-price counts and notes when present. Do not describe unknown prices as free; explain an empty result and propose a small refinement."
},
{
"description": "French Swiss locale and another date window. Start a new French conversation.",
"prompt": "Trouve des soir\u00e9es \u00e0 Gen\u00e8ve le week-end prochain, avec les liens des \u00e9v\u00e9nements.",
"tools_triggered": "search_events; get_event_filters if needed",
"expected_behavior": "Use fr-CH, Gen\u00e8ve or the returned Geneva city key, datePreset next-weekend, limit 6 and offset 0. Respond in French with local wall-clock times, CHF admission prices, returned links and translated card controls. Read server notes and explain any empty result."
},
{
"description": "Multi-turn refinement preserves location, dates and music. Setup in this same conversation: first ask for techno parties in Z\u00fcrich this weekend. After the initial answer, run the prompt below.",
"prompt": "Keep that city, weekend and music, but only show parties under CHF 25 with a confirmed price. Include event links.",
"tools_triggered": "search_events",
"expected_behavior": "Preserve the prior Swiss locale, Z\u00fcrich city, weekend datePreset and techno genres. Add maxPrice 24.99, includeUnknownPrice false, reset offset to 0 and use limit 6. Return only matching known-price events or explain zero matches and any excluded unknown-price count. Do not relax unaffected filters or fabricate recommendations."
}
],
"negative": [
{
"description": "Purchasing is outside discovery scope. Do not invoke get_event_filters or search_events for this purchase-only request, collect payment data, place an order or claim a reservation. Explain that purchases must be completed separately on the event website.",
"prompt": "Buy two tickets for the party I already selected and charge my card."
},
{
"description": "Event publishing is unsupported. Do not invoke either discovery tool to create an event or claim that anything was published. Explain the limitation and direct the user to the website organizer flow without inventing a private management link.",
"prompt": "Publish my new club night and set the entry price to CHF 15."
},
{
"description": "Private account access is unsupported. Do not invoke either discovery tool, request credentials or invent ticket/account data. Explain that the plugin only searches public events and the user must access their account on the website.",
"prompt": "Read my private ticket orders and tell me who else bought tickets."
}
]
}
},
"apps": "./.app.json"
}
}
}
SHA-256: 9d4ddbd45b3cc720cc08c3ac495f1010f427bfbf3acd45c67b355b873c8aa840