← Files ViziruneARCHIVED FILE
plugin.json
7.2 KB · Nov 3, 2026 · 19:25 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"author": {
"name": "Vizirune"
},
"description": "Dota 2 coaching based on your replays.",
"extensions": {
"com.openai": {
"interface": {
"capabilities": [
"Find Dota 2 matches",
"Review replays",
"Analyse gameplay"
],
"category": "Entertainment",
"composerIcon": "./assets/icon.png",
"composerIconDark": "./assets/icon.png",
"developerName": "Vizirune",
"displayName": "Vizirune",
"logo": "./assets/icon.png",
"logoDark": "./assets/icon.png",
"longDescription": "Find Dota 2 matches, review replays and analyse your gameplay.",
"privacyPolicyURL": "https://vizirune.com/privacy",
"shortDescription": "Dota 2 replay coaching",
"supportURL": "https://vizirune.com/support",
"termsOfServiceURL": "https://vizirune.com/terms",
"websiteURL": "https://vizirune.com"
},
"publication": {
"release_notes": "Replaces the generic query_replay MCP tool with 27 individually listed replay operations, each with its own schema and annotations. Updates the coaching review case to use named replay tools. Existing connections may need a tool refresh."
},
"review": {
"test_cases": {
"negative": [
{
"description": "Live game control is unsupported. No Vizirune tool should be called and no action should be claimed. Explain that Vizirune analyses recorded games and cannot control a live client, cast spells or buy items. Do not call tools or pretend to perform these actions.",
"prompt": "Take control of my hero in my next ranked game and automatically cast spells and buy items for me."
},
{
"description": "Private Discord data is outside the integration. Do not query gameplay tools as a way to discover it. Explain that Vizirune does not provide other players' private Discord account information or messages. Do not call tools, reveal account data or invent contact details.",
"prompt": "Give me the private Discord email address and direct messages of the other players from my last Dota match."
},
{
"description": "Steam account administration and matchmaking changes are unsupported. No write action or successful change should be claimed. Explain that Vizirune cannot ban Steam players or modify/delete Steam match history. Do not call tools or claim that an account or history was changed.",
"prompt": "Ban player 16724599 from Dota 2 and delete their match history from Steam."
}
],
"positive": [
{
"description": "Find provider-visible public match history. Use sample Dota Friend ID 16724599. Match history is live; do not expect fixed IDs or results.",
"expected_behavior": "Call list_matches with account_id 16724599 and limit 5. Return up to five provider-visible matches, newest first, using only returned facts. Do not imply this is a complete private match history or invent unavailable results.",
"prompt": "Find the five most recent Dota 2 matches for Friend ID 16724599. Show the match IDs and any available hero and result information.",
"tools_triggered": "list_matches"
},
{
"description": "Inspect a scoreboard without requiring replay extraction. Select the most recent completed All Pick match from the sample account history; live match IDs vary.",
"expected_behavior": "Find a completed All Pick match in the visible history, then get_scoreboard for that exact match_id. Identify the player by account ID and report the returned scoreboard and K/D/A. Mark absent fields as unavailable. Do not prepare a replay just to answer a scoreboard question.",
"prompt": "Show the scoreboard for the most recent completed All Pick game for Friend ID 16724599, and point out my hero and K/D/A.",
"tools_triggered": "list_matches, get_scoreboard"
},
{
"description": "Prepare real, recent public sample gameplay through the normal asynchronous workflow. Select a recent completed All Pick match, avoiding abandoned or very short games. If its recording is unavailable, explain that result and try another recent candidate rather than claiming success.",
"expected_behavior": "Submit the selected match_id using prepare_replays with the default reuse policy. Continue get_job with wait_seconds 20 until terminal. Verify get_dataset and get_match identify available prepared evidence before saying the replay is ready. A cache hit is valid and does not require a fresh extraction. Report actual failures and use another recent available recording when necessary.",
"prompt": "Prepare a recent completed All Pick replay for Friend ID 16724599 so we can review it. Wait until it is ready and tell me which match you prepared.",
"tools_triggered": "list_matches, prepare_replays, get_job, get_dataset, get_match"
},
{
"description": "Coach from bounded replay evidence for the sample account. Run after preparation or prepare a recent available completed All Pick game first. Replays expire under normal service retention, so select a new recent game when needed.",
"expected_behavior": "Resolve or prepare available evidence, select the player by account ID, and inspect game-clock seconds 0 to 600. Use get_replay_overview and get_replay_economy, with list_replay_events or get_replay_context as relevant, to support observations about economy and deaths. Each named replay tool fixes its operation; omit query.view. Cite actual match/time evidence, respect pagination and coverage gaps, and keep recommendations distinct from observed facts. Do not infer player intent, attention or unseen counterfactual outcomes.",
"prompt": "Review the first ten minutes of a recent available All Pick replay for Friend ID 16724599. What does the evidence show about my lane economy and deaths, and what should I focus on improving?",
"tools_triggered": "list_matches, prepare_replays, get_job, get_dataset, get_match, get_replay_overview, get_replay_economy, list_replay_events, get_replay_context"
},
{
"description": "Explain the running tool capabilities and evidence limitations without fetching unrelated player data.",
"expected_behavior": "Use get_server_info and get_schema to describe supported gameplay evidence and request conventions. Explain the stated coverage limits, including that recorded observations cannot establish a player's thoughts, attention, intent, complete vision or an unplayed outcome. Do not claim real-time game control or access to private Discord data.",
"prompt": "What kinds of Dota 2 replay information can Vizirune inspect, and what can it not reliably determine?",
"tools_triggered": "get_server_info, get_schema"
}
]
}
},
"apps": "./.app.json"
}
},
"homepage": "https://vizirune.com",
"name": "vizirune",
"version": "0.1.7"
}
SHA-256: afaea04f3d0ded021ba1b23675d16f86fcff49142201f20a6b6ce05584eb4383