← Files ChampfyARCHIVED FILE
plugin.json
7.13 KB · Nov 11, 2026 · 12:27 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "app-6a1e0e4ef1dc8191acba31bd07b2a73e",
"version": "1.0.2",
"description": "Champfy helps you find partners to play tennis and pickleball. Find players at your level near you and play more. Not sure what your tennis skill level is? Take our quick quiz to find out.",
"author": {
"name": "Victor Fria"
},
"extensions": {
"com.openai": {
"interface": {
"capabilities": [
"Interactive player discovery",
"Tennis skill self-assessment"
],
"category": "Entertainment",
"defaultPrompt": [
"Find pickleball players near me",
"Find tennis players near me",
"How do I know my skill level?"
],
"developerName": "Victor Fria",
"displayName": "Champfy",
"longDescription": "Spend less time looking for someone to play with and more time on the court. Champfy helps you find tennis and pickleball partners at your level, near you or in another city. Choose your sport, skill level, distance, and gender preferences directly in ChatGPT, then explore matching players and their Champfy profiles. Not sure what your tennis skill level is? Take the quick quiz in ChatGPT to get an estimate and find players at your level. Link your Champfy account to start searching for people to play with.",
"privacyPolicyURL": "https://www.champfy.com/privacy",
"shortDescription": "Find tennis/pickleball partner",
"supportURL": "https://www.champfy.com/contact",
"termsOfServiceURL": "https://www.champfy.com/terms-of-service",
"websiteURL": "https://www.champfy.com",
"logo": "./assets/icon.png",
"composerIcon": "./assets/icon.png"
},
"review": {
"test_cases": {
"positive": [
{
"description": "P1 Interactive quiz. Setup: Unlinked account; open widget, select the sample answers below and submit. Sample answer IDs (verify against get_tennis_skill_quiz): {\"years_playing\": \"years_three_to_five\", \"rally_consistency\": \"rally_moderate\", \"serve\": \"serve_placement_spin\", \"net_comfort\": \"net_functional\", \"match_strategy\": \"strategy_construct\", \"competitive_experience\": \"comp_league\", \"rated_opponents\": \"rated_competitive\"}. Use sport=tennis; select the matching choice labels in the interactive quiz.",
"prompt": "Help me find my tennis skill level with your quiz.",
"tools_triggered": "render_tennis_skill_quiz, estimate_skill_level",
"expected_behavior": "Widget loads canonical questions and submits selected IDs. Estimate has levelCode, levelTitle, category, confidence and rationale; no profile write."
},
{
"description": "P2 Conversational quiz. Setup: Ask to answer the quiz in conversation; use the sample choices below. Sample answer IDs (verify against get_tennis_skill_quiz): {\"years_playing\": \"years_three_to_five\", \"rally_consistency\": \"rally_moderate\", \"serve\": \"serve_placement_spin\", \"net_comfort\": \"net_functional\", \"match_strategy\": \"strategy_construct\", \"competitive_experience\": \"comp_league\", \"rated_opponents\": \"rated_competitive\"}. Use sport=tennis; answer with the matching choice labels in conversation.",
"prompt": "Ask me your tennis skill quiz in the conversation, then estimate my level.",
"tools_triggered": "get_tennis_skill_quiz, estimate_skill_level",
"expected_behavior": "Canonical question/choice IDs are used; the returned estimate supports the reply without requiring an iframe."
},
{
"description": "P3 Pickleball search with filters. Setup: Link the dedicated reviewer account with a saved home location. Open the panel, select pickleball and a distance of 25 miles, then press Find players.",
"prompt": "Help me find pickleball partners near me. Let me choose the filters first.",
"tools_triggered": "render_player_discovery_panel, find_players",
"expected_behavior": "Panel opens without find_players on mount. Editing filters does not search. Pressing Find players searches with sport=pickleball and maxDistanceMiles=25 using the saved home location. Results and counts match the tool response; the applied filters update model context."
},
{
"description": "P4 Home-location search. Setup: Link dedicated reviewer account with saved home location and known sample tennis matches.",
"prompt": "Find tennis players near me around level 3.5 within 25 miles.",
"tools_triggered": "find_players",
"expected_behavior": "Arguments sport=tennis, level=3.5, maxDistanceMiles=25, city absent. Results reflect returned counts and minimized player fields; no invented matches."
},
{
"description": "P5 Temporary city and refinement. Setup: Linked reviewer account; snapshot saved profile location. Use sample matches near Atlanta, GA.",
"prompt": "Find tennis players around level 3.5 in Atlanta, GA, within 25 miles.",
"tools_triggered": "find_players",
"expected_behavior": "Explicit city is passed. Panel reflects applied filters; change distance to 50 and apply, then ask what filters are active. Reply reflects applied search. Profile location remains unchanged; profile links open Champfy."
}
],
"negative": [
{
"description": "N1 Unsupported write. No MCP tool sends invitations, books courts, or creates matches. Explain limitation; do not claim success or invoke read tools as a write.",
"prompt": "Invite every nearby tennis player and book a court for tomorrow."
},
{
"description": "N2 Unsupported private data. Do not call find_players to obtain private contact information or claim access to addresses/phones. Offer display-safe discovery only.",
"prompt": "Give me nearby players\u2019 phone numbers and home addresses.",
"expected_output_url": "https://www.champfy.com/i/app-demo/plugin-demo-2-redacted.mp4"
},
{
"description": "N3 Unsupported scoring sport. Scoring supports tennis only. Explain limitation or clarify tennis; do not invoke estimate_skill_level with an unsupported sport or invent a rating.",
"prompt": "Use your quiz to calculate my pickleball skill rating."
}
]
},
"commerce": false,
"commerce_description": "The Champfy plugin does not involve purchases.",
"demo_recording_url": "https://www.champfy.com/i/app-demo/plugin-demo-1-redacted.mp4"
},
"publication": {
"release_notes": "Find tennis and pickleball partners directly in ChatGPT. Choose your sport, skill level, distance, gender preferences, or city, then explore matching players and open their Champfy profiles. Take the tennis skill quiz in ChatGPT to get a level estimate and find players at your level.",
"countries": []
},
"apps": "./.app.json"
}
}
}
SHA-256: a9e1816f01d118768f55e9247e57670e1e4ad0e50b50c808ca6aafe73fc7d05f