← Files YigriARCHIVED FILE
plugin.json
6.12 KB · Nov 4, 2026 · 00:12 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "yigri",
"version": "0.2.2",
"description": "Read existing Yigri training intelligence from supported sources.",
"author": {
"name": "Yigri"
},
"repository": "https://github.com/AshX213/yigri",
"extensions": {
"com.openai": {
"interface": {
"displayName": "Yigri",
"shortDescription": "Read your running insights",
"longDescription": "Yigri helps runners review existing runs, fitness changes and stored training analysis from their own Yigri account in ChatGPT or Codex. Read recent runs, stored run analysis, fitness trends with comparison dates, key findings, weekly execution and stored Weekly Readout. Access is read-only and requires approval for each AI connection. Supported sources are Garmin and COROS through Stridee, and Apple Health. Accounts with a current Strava connection cannot use the integration. Previously imported Strava history and analysis that depends on it stay excluded after disconnection. Results can be partial or unavailable when source coverage or provenance cannot be established. Revoking an AI connection stops future reads; it does not remove answers already saved by that AI app.",
"developerName": "Yigri",
"category": "Healthcare",
"capabilities": [
"Read training summaries",
"Read existing run analysis",
"Read fitness trends",
"Read weekly training context"
],
"websiteURL": "https://yigri.com",
"supportURL": "https://yigri.com/support",
"privacyPolicyURL": "https://yigri.com/privacy",
"termsOfServiceURL": "https://yigri.com/terms",
"defaultPrompt": [
"Show my five most recent runs and the stored analysis of the latest one.",
"How has my running fitness changed? Include the dates being compared.",
"Summarize this week\u2019s completed runs and explain anything missing from the Weekly Readout."
],
"brandColor": "#0B6B35",
"composerIcon": "./assets/icon.png",
"logo": "./assets/icon.png"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Approved-source account summarizes recent training",
"prompt": "Summarize my recent runs.",
"tools_triggered": "get_profile, get_runner_summary, get_recent_runs",
"expected_behavior": "Stable minimal identity and only independently approved Garmin/COROS via Stridee or Apple Health summaries, with freshness and caveats."
},
{
"description": "Approved fitness windows and real sample sizes",
"prompt": "How has my running fitness changed recently?",
"tools_triggered": "get_fitness_trends, get_key_findings",
"expected_behavior": "Report fitness trends using the returned current and baseline dates, counts, confidence and readiness. For key findings use each metric\u2019s own comparison dates and method. Explain different scopes rather than combining conflicting percentages. Withheld or insufficient data stays explicit."
},
{
"description": "Latest owned approved-source run with stored evidence",
"prompt": "Show the stored analysis of my latest run.",
"tools_triggered": "get_recent_runs, get_run_analysis",
"expected_behavior": "Use get_recent_runs(limit=1), then get_run_analysis with that returned activity ID. Show approved stored run/weather/analysis only, explain missing provenance, and never generate fresh analysis."
},
{
"description": "Weekly context and stored readout readiness",
"prompt": "Summarize my training week and the main findings.",
"tools_triggered": "get_weekly_execution, get_weekly_readout, get_key_findings",
"expected_behavior": "Local Monday week, owned plans/completed approved runs, only eligible stored readout; missing/unverified readout remains unavailable and is never regenerated."
},
{
"description": "New runner without a source can connect",
"prompt": "I just joined. What training data is available?",
"tools_triggered": "get_profile, get_runner_summary",
"expected_behavior": "After supported consent, stable profile and truthful setup state with Garmin/COROS via Stridee and iPhone Apple Health guidance; no fake runs or forced provider linking."
}
],
"negative": [
{
"description": "Unsupported plan mutation. Explain that the integration reads existing training information only; do not attempt a write or claim a plan was saved.",
"prompt": "Create a personalized training plan for next week and save it in Yigri."
},
{
"description": "Unsupported ingestion and recomputation. Explain that syncing and generating new analysis must happen in Yigri; do not initiate a job or present existing analysis as newly generated.",
"prompt": "Sync my watch now and regenerate the analysis of my latest run."
},
{
"description": "Unauthorized and excluded data. Decline another athlete\u2019s private data and excluded Strava history. Do not use outside tools to bypass these restrictions or ask for another OAuth approval to override them.",
"prompt": "Show another runner\u2019s heart-rate history and include my old Strava archive analysis."
}
]
},
"commerce": false,
"demo_recording_url": "https://mcp.yigri.com/mcp/review"
},
"publication": {
"release_notes": "Declare the existing pre-registered public OAuth client and canonical scopes for draft setup. Clarify read-only running-training insights and select Healthcare. Preserve eight existing read-only tools, source restrictions and review cases. Callback compatibility with the saved submission draft must be checked before OAuth consent."
},
"apps": "./.app.json"
}
}
}
SHA-256: 2dd1090a53622b71e1e1a700bbc40ae0891e11a1fb4d2fca3062dc28c8c78062