Public leaderboard

Public assessment

davidmosiah/wellness-cgm-mcp (wellness-cgm-mcp)

wellness-cgm-mcp · v0.6.1 · scanned

What changed in the harness

Selection accuracy 93→96, token cost up 1%, unconfirmed writes 0%→0%.

Category breakdown

Where the score comes from.

Earned points across the four signals Gradable measures. Safety and Legibility are scored out of 30; Economics and Discoverability are scored out of 20.

01Safety

0.0 / 30

0.0 out of 30
02Legibility

25.8 / 30

25.8 out of 30
03Economics

14.1 / 20

14.1 out of 20
04Discoverability

16.5 / 20

16.5 out of 20

Highest-impact fix

Estimated gain +30 points

Add explicit identity and permission preflight tools

Expose machine-readable principal/tenant confirmation and a non-mutating permission check so agents can verify both before destructive actions.

Description evidence

Defects and rewrites.

4 defects found across the exposed tool descriptions. Suggested rewrites make purpose, inputs, boundaries, and returns easier for an agent to understand.

Tool Defect types Suggested rewrite
cgm_agent_manifest
params_unexplained
Returns the wellness-cgm-mcp agent manifest: tool list, supported clients, env vars, recommended first calls, capabilities, privacy posture, and community links. `client` (optional) tailors the setup guidance to a specific host app (claude, codex, cursor, windsurf, hermes, openclaw, or generic); omit for a generic manifest.
cgm_authorize_url
params_unexplained
Builds the Dexcom OAuth authorize URL for the user to open in a browser and grant access; read-only, does not exchange tokens. Returns the URL to open, or a hint with the required env vars if Dexcom credentials are missing. `state` (optional) is an opaque value echoed back by Dexcom on redirect, used for CSRF protection / correlating the callback to this request.
cgm_quickstart
params_unexplained
Returns a personalized 3-step walkthrough for moving wellness-cgm-mcp from mock mode to live mode (Dexcom); call this first when the user asks how to connect their CGM. `client` (optional) tailors the steps to a specific host app (claude, codex, cursor, windsurf, hermes, openclaw, or generic); omit for generic instructions.
cgm_profile_update
no_return_description
Persists a partial patch to the shared Delx Wellness profile (~/.delx-wellness/profile.json) and returns the updated profile document, or a rejection error if a disallowed field (oauth/token/secret/password/cookie/refresh/api_key/session) is present. Requires explicit_user_intent: true, set only after the user has explicitly asked to save or update profile data.

Selection evidence

Confusable tool pairs.

9 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.

Tool A Tool B Confidence Why they collide
cgm_connection_status cgm_libre_status high Both report whether Libre is configured and whether reads will be mock vs live; a task like 'is my Libre CGM connected?' could plausibly route to either the generic connection_status or the Libre-specific status tool.
cgm_libre_status cgm_libre_login medium A task like 'check if my Libre account works' could trigger either the passive config check (status) or the active authentication + connection listing (login), since login also 'confirms the path works end-to-end'.
cgm_glucose_now cgm_glucose_window medium Requests like 'what's my glucose been doing' are ambiguous between the single latest reading (now) and a recent time-range of readings (window).
cgm_agent_manifest cgm_capabilities medium Both describe what the server supports (tools/providers/env vars/privacy modes); a broad 'what can this CGM tool do' query could match either the manifest or the capabilities listing.
cgm_profile_get cgm_onboarding medium For a user with no profile yet, 'set up/get my wellness profile info' is ambiguous between reading the (empty) profile and starting the onboarding question flow that creates it.
cgm_capabilities cgm_quickstart low Both are informational entry points about supported providers/setup; 'how do I get this working' could be answered by either capabilities listing or the quickstart walkthrough, though quickstart is explicitly the first-call recommendation for connection questions.
cgm_agent_manifest cgm_quickstart low Manifest includes 'recommended first calls' which overlaps conceptually with quickstart's walkthrough purpose, risking confusion for 'how do I start using this' style requests.
cgm_glucose_window cgm_hypo_events low A request like 'show me my low glucose readings from the last day' could be served by manually filtering glucose_window or by the purpose-built hypo_events detector, though naming makes hypo_events fairly distinguishable.
cgm_daily_summary cgm_meal_response low Both return glucose statistics; 'how was my glucose after lunch today' sits near the boundary between a daily summary and a meal-specific response, though meal_response requires a meal_time and is more clearly targeted.

Compare the field

One score is useful.
The evidence makes it actionable.

Back to the leaderboard