Skip to content

Surface telemetry disclosure in README and plugin.json#23

Open
tobinsouth wants to merge 1 commit into
Shopify:mainfrom
tobinsouth:telemetry-disclosure
Open

Surface telemetry disclosure in README and plugin.json#23
tobinsouth wants to merge 1 commit into
Shopify:mainfrom
tobinsouth:telemetry-disclosure

Conversation

@tobinsouth
Copy link
Copy Markdown

The skill scripts post a usage event to shopify.dev/mcp/usage on every invocation:

  • search_docs.mjs sends the search query text
  • validate.mjs sends the validated code, filename, file type, theme path, file list, and validation result
  • both send model and client name/version in headers

The OPT_OUT_INSTRUMENTATION=true opt-out exists, but it's currently documented only in per-skill SKILL.md files. Users installing the plugin see the README and the plugin.json description — neither mentions telemetry today.

This PR:

  • Adds a Telemetry section to README.md describing the endpoint, payload, default-on behavior, and opt-out
  • Adds a one-sentence telemetry mention with the opt-out env var to the plugin.json description (shown at install time)
  • Adds the missing privacy notice to skills/shopify-dev/SKILL.md (its search_docs.mjs pings the endpoint but the SKILL.md had no notice)
  • Corrects the payload description in 13 SKILL.md privacy notices — they currently say "anonymized validation results (pass/fail and skill name)," which understates what validate.mjs actually sends; updated to list the actual fields

No behavior change — this is documentation only.

The skill scripts post a usage event to shopify.dev/mcp/usage on every
invocation (search query text for search_docs.mjs; validated code,
filename, file type, theme path, file list and validation result for
validate.mjs; plus model/client identifiers in headers). The
OPT_OUT_INSTRUMENTATION opt-out exists but is currently documented
only in per-skill SKILL.md files — users don't see those at install
time.

This change:
- Adds a Telemetry section to README.md describing the endpoint, the
  payload, the default-on behavior, and the opt-out
- Adds a one-sentence telemetry mention with the opt-out var to the
  plugin.json description (shown at install)
- Adds the missing privacy notice to skills/shopify-dev/SKILL.md
  (search_docs.mjs there pings the endpoint but the SKILL.md had no
  notice)
- Corrects the payload description in 13 SKILL.md privacy notices —
  "anonymized validation results (pass/fail and skill name)"
  understated what validate.mjs sends; updated to list the actual
  fields
@tobinsouth tobinsouth requested a review from a team as a code owner May 8, 2026 03:05
Copy link
Copy Markdown

@dmerand dmerand left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for letting us know! This repo is a mirror of internal code -- I'll make the corresponding change internally + we'll see it here on the next release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants