PlugWiki

Discover Event Surfaces skill for Claude Code: list analytics events worth tracking

Amplitude's skill that makes Claude turn a pull request's change brief into a ranked list of analytics events worth tracking.

Installs
48.8K
on skills.sh
Stars
46
on GitHub
Updated
Oct 2026
last repo commit

discover-event-surfaces is step 2 of Amplitude's instrumentation flow. You give Claude a change_brief YAML from the diff-intake skill. It reads the code the change touches, traces the user flow, and returns candidate events grouped into four categories with a priority from 1 to 3.

It calls the Amplitude MCP server to pull your existing events so it can drop duplicates, and it runs discover-analytics-patterns for naming. It also reads the taxonomy skill. So it needs an Amplitude account, a change brief, and those sibling skills installed.

Good for

  • Engineers with a PM mindset who ask "what should I track for this PR?"
  • Product managers who want a reviewable event list before anyone writes tracking code
  • Teams using Amplitude's diff-intake, discover-event-surfaces, instrument-events flow

Install discover-event-surfaces

Claude Code

  1. 1

    Copy this prompt.

    Install the discover-event-surfaces skill in Claude Code. Run this command:
    
    claude plugin install amplitude
    
    Then check that it loaded and tell me how to use it.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

The plugin route installs every skill in the Amplitude plugin and the Amplitude MCP server from its .mcp.json (https://mcp.amplitude.com/mcp). In Claude Code the README tells you to authenticate when prompted. The skills CLI route is listed with discover-analytics-patterns and taxonomy because this skill invokes the first and reads the second. diff-intake, which produces the change_brief this skill takes as input, is not in the command. The skills CLI route copies the skill folders. For the Amplitude MCP server, use the plugin route or add https://mcp.amplitude.com/mcp to your client yourself.

From the project README. Source.

What's in the skill

When it loads

Given a change_brief YAML (output from diff-intake), generates an exhaustive list of candidate analytics events to instrument. Takes the perspective of an engineer with a PM mindset — surfaces everything worth considering so a PM can decide what actually matters. Use this as step 2 of the analytics instrumentation workflow, immediately after diff-intake produces a change_brief. Trigger whenever a user has a change_brief YAML and wants to know what analytics events to add, or asks "what should I track for this PR", "what events should I instrument", "generate event candidates", or any request to surface analytics coverage gaps for a code change.

Sections in SKILL.md

  1. 1. Parse the change_brief
  2. 2. Scan the codebase and map user flows
  3. What to read
  4. What to look for
  5. Produce a funnel hypothesis
  6. 3. Determine naming conventions and fetch existing events
  7. Resolve the project
  8. Pull existing events
  9. Build naming references and an existing event index
  10. 4. Generate candidate events
  11. Deduplicate against existing events
  12. 5. Quality filter
  13. 6. Name events
  14. 7. Determine file and instrumentation point
  15. 8. Deepen understanding, then prioritize
  16. 9. Emit YAML output

Key facts

Installs on skills.sh
48,757 as of Nov 2, 2026
Last commit to the repo
Oct 31, 2026

What it includes

  • Reads the summary, user-facing changes and components

    Stops and tells you there is nothing to instrument if classification.analytics_scope is none. Otherwise it uses summary, user_facing_changes, surfaces.components and file_summary_map.

    Read · 1. Parse the change_brief

  • Reads touched files and traces entry to outcome

    Reads each listed component, follows imports one level out, and writes a funnel hypothesis with a start and an end step. It says when a change has no multi-step flow.

    Files · 2. Scan code and map user flows

  • Calls discover-analytics-patterns and the Amplitude MCP

    Uses the naming conventions from discover-analytics-patterns. Resolves the project with get_amplitude_context if the brief has no projectId, then reads the first page of existing events to build a duplicate index.

    Network · 3. Naming and existing events

  • Proposes events in four categories

    Categories in priority order: business_outcome, user_journey, feature_success and friction_failure. Duplicates of existing events are dropped and listed under already_tracked.

    Read · 4. Generate candidates

  • Keeps only decision-useful, outcome-focused events

    Each event must be useful for a product decision, record that something happened rather than a click, and stay stable across redesigns.

    Read · 5. Quality filter

  • Names events by convention and gives file plus firing point

    Uses the project naming style and product-domain names. Each candidate gets a file and a one- or two-sentence note on when it fires.

    Read · 6 and 7. Name events and place them

  • Adds analysis_recipe, stakeholder_narrative and priority 1 to 3

    Priority 3 means you would block a release without it; funnel start and end events are always 3. Most changes produce only one or two.

    Read · 8. Prioritize

  • Outputs one event_candidates YAML block

    Output only, no prose around it: source_summary, naming conventions, already_tracked, funnels and candidates.

    Try: “Here is the change_brief from diff-intake. What events should I instrument?”

    Read · 9. Emit YAML

From the official docs

Permissions

Medium risk

This skill reads your code and your Amplitude event list and bundles no scripts. The plugin route adds an Amplitude MCP server, so check the project you sign in to.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • Your event list enters the chat

    Existing event names, categories and descriptions from your Amplitude project are read into the conversation with your AI provider. Use a project you are allowed to share with it. github.com

  • The plugin route adds an Amplitude MCP server

    The amplitude plugin ships a .mcp.json that points Claude at https://mcp.amplitude.com/mcp. You sign in to Amplitude when prompted, and the skill can then read from that project. github.com

  • The plugin route installs every Amplitude skill

    The repo has 36 skill folders in the plugin, while the README lists 27. Use the skills CLI route in the install box if you want only the ones this page names. github.com

Security advisories

No published security advisories as of Nov 2, 2026.

Technical details
Turning on read-onlySKILL.md names no read-only setting.
Talks tomcp.amplitude.com (the Amplitude MCP server from the plugin .mcp.json)
Sign-in and keysSigns in to Amplitude through the MCP server when you are prompted; the README does not say where the sign-in is stored.
Scopes
  • Reads the source files named in the change brief and files they import

  • Reads your existing event list from Amplitude through the MCP server

Questions

What does the discover-event-surfaces skill do?

It takes the change brief for a code change and lists the analytics events worth tracking. Each candidate has a category, a priority from 1 to 3, a file and a note on when it fires. A PM can then trim the list before anyone writes tracking code.

What do I need before running it?

A change_brief YAML, which the diff-intake skill produces. It also needs an Amplitude project it can read through the MCP server. The SKILL.md says it calls get_amplitude_context to resolve the project if the brief has no projectId.

How do I install it?

Use the install box above. The plugin route installs the whole Amplitude plugin. With the skills CLI route, the command adds discover-analytics-patterns (which the skill invokes) and taxonomy (which SKILL.md says to read). Add diff-intake yourself if you want it to produce the change_brief, since SKILL.md only takes its output as input.

Is it official?

Yes, it is in the vendor's own repo. The amplitude/mcp-marketplace README calls the plugin the official Amplitude plugin for AI coding tools, and the LICENSE names Amplitude, Inc. as the copyright holder.

Is discover-event-surfaces safe to run?

It bundles no scripts. SKILL.md describes reading your code and your existing Amplitude events and printing YAML. It does not mention writing files or changing Amplitude. The plugin route adds an Amplitude MCP server, so read the permissions section before you sign in. Our advice: keep the real tracking changes for instrument-events, which asks you before it writes.

What is the order of the Amplitude instrumentation skills?

The README says a typical flow is diff-intake, then discover-event-surfaces, then instrument-events. discover-analytics-patterns checks that new tracking follows the repo's existing conventions.

How is it different from add-analytics-instrumentation?

This skill is one step that only lists candidate events. The README describes add-analytics-instrumentation as an end-to-end workflow that reads code, decides what to track and produces a full instrumentation plan in one pass.

Information

updated Nov 2, 2026

Folder
plugins/amplitude/skills/discover-event-surfaces

amplitude/mcp-marketplaceskills.sh

Sources

Docs, issue trackers and discussions this page is built from.

Show all 5
  1. amplitude/mcp-marketplace README · github.com
  2. marketplace.json · github.com
  3. discover-event-surfaces SKILL.md · github.com
  4. skills.sh listing · skills.sh
  5. LICENSE · github.com

Updated Nov 2, 2026.