Communitygithub.com

Amplitude/builder-skills

Instrumentiere einen Node/TypeScript MCP-Server mit dem @amplitude/mcp-analytics SDK, sodass Tool-Aufrufe, Sitzungen und Begründungen als Amplitude-Ereignisse erfasst werden. Verwende dieses Skill immer dann, wenn der Benutzer Amplitude-Analysen zu seinem MCP-Server hinzufügen möchte, „MCP Analytics“, „@amplitude/mcp-analytics“, „instrumentiere meinen MCP-Server“, „tracke MCP-Tool-Aufrufe“ oder „füge Begründungen zu meinen MCP-Tools hinzu“ erwähnt oder Agentenverkehr (Claude, Cursor, ChatGPT) Amplitude zuordnen möchte. Auch geeignet zum Hinzufügen von UTM-Tags zu MCP-zurückgegebenen Links oder zur Fehlerbehebung bei Identitäts-/User_ID-Diskrepanzen zwischen MCP-Ereignissen und Web-/Mobil-Amplitude-Daten.

Was ist builder-skills?

Dieses Skill richtet das `@amplitude/mcp-analytics` SDK auf einem Node/TypeScript MCP-Server ein, der auf `@modelcontextprotocol/sdk` aufbaut. Das SDK erfasst jeden Tool-Aufruf, jede Sitzung und jede vom Agenten bereitgestellte Begründung als Amplitude-Ereignis und stellt so sicher, dass MCP-Nutzungsdaten mit bestehenden Web-/Mobil-Amplitude-Daten zusammengeführt werden können (z. B. für Retention, Revenue und kanalübergreifende Analysen). Das Skill führt den Entwickler durch die Installation und die erforderlichen Konfigurationsschritte: Binden des Servers (`instrumentServer`) vor dem Aufruf von `server.connect()`, Umwickeln jedes Tool-Handlers mit `instrumentTool` (unverpackte Tools werden nicht getrackt), Festlegen der korrekten Benutzeridentität (`user_id`) über die von der SDK bereitgestellte Identitäts-API und optionales Einfügen eines „rationale“-Felds in die Eingabeschemata aller Tools, damit Agenten natürlich erklären, warum sie aufrufen. Auf Agentenebene werden keine clientseitigen Änderungen benötigt. Darüber hinaus wird empfohlen, MCP-URL-Antworten mit UTM-Parametern zu versehen, um den Traffic korrekt zuzuordnen (erfordert separate clientseitige UTM-Erfassung). Das Skill warnt ausdrücklich davor, veralteten API-Snippets zu vertrauen, und verweist für alle Installations- und API-Details auf die aktuelle README der SDK, da sich die SDK noch in der Vorschauphase befindet und sich schnell weiterentwickelt. Es identifiziert auch häufige Fallstricke wie falsche Reihenfolge bei der Initialisierung, fehlende Tool-Wrapper oder eine nicht übereinstimmende `user_id`.

Funktioniert mit✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/amplitude/builder-skills/tree/HEAD/engineering-skills/skills/instrument-mcp-server

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Amplitude MCP Analytics Einrichtung

Instrumentiert einen MCP-Server, sodass jeder Tool-Aufruf zu einem Amplitude-Ereignis wird, das mit den übrigen Amplitude-Daten des Produkts (Retention, Revenue, Web-/Mobilnutzung) verknüpfbar ist.

Die maßgebliche SDK-Referenz ist die Paket-README: https://github.com/amplitude/Amplitude-MCP-Analytics-Node (npm: @amplitude/mcp-analytics). Die SDK befindet sich in der Vorschauphase und entwickelt sich schnell weiter – rufe immer die aktuelle README ab und folge ihr für Installation, API-Strukturen, Konfiguration und Standardereignisse. Verlasse dich nicht auf auswendig gelernte Code-Schnipsel oder Zusammenfassungen aus diesem Skill für SDK-API-Details; bei Konflikten hat die README Vorrang.

Es gibt vier Schritte. Schritte 1–2 sind erforderlich und in der README dokumentiert – dieses Skill sagt dir, welchen Abschnitten du folgen und welche Invarianten du überprüfen sollst. Schritte 3–4 werden dringend empfohlen und sind hier vollständig dokumentiert, da sie Änderungen außerhalb der SDK erfordern (die Tool-Schemata des Servers und die Web-App des Produkts), die die SDK-README bewusst nicht abdeckt.

Führe sie in der richtigen Reihenfolge aus: Schritt 1 (Tool-Aufrufe) → Schritt 2 (Identität) → Schritt 3 (Begründung) → Schritt 4 (UTM, nur falls der Server Links zurückgibt). Stelle die Identität korrekt ein, bevor du etwas als „erledigt” bezeichnest – alles Weitere hängt davon ab.

Bevor du beginnst

Stelle sicher:

  1. Es handelt sich um einen Node/TypeScript MCP-Server, der auf @modelcontextprotocol/sdk basiert. Dieses SDK unterstützt keine anderen Sprachen/Laufzeitumgebungen.
  2. Der Benutzer hat (oder kann erhalten) einen Amplitude-API-Key für das Projekt, in dem die Ereignisse landen sollen.
  3. Welchen Paketmanager das Repository verwendet (pnpm/npm/yarn) – passe den Installationsbefehl entsprechend an.

Schritt 1 – SDK installieren und Tool-Aufrufe tracken (erforderlich)

Rufe die README ab und folge den Abschnitten Install und Quick start. Installiere immer die neueste veröffentlichte Version (z.B. pnpm add @amplitude/mcp-analytics@latest) – verwende niemals eine festgeschriebene Version aus dem Gedächtnis und übernimm keine Installationsbefehle aus diesem Skill.

Zu überprüfende Invarianten nach der Einrichtung (die README erklärt jede im Detail):

  • analytics.instrumentServer(server, ...) wird vor server.connect() ausgeführt – die Reihenfolge ist wichtig.
  • Jeder Tool-Handler wird mit analytics.instrumentTool(...) umwickelt. Nicht umwickelte Tools werden nicht getrackt. Der Wrapper hat die identische Struktur wie der Handler und ist eine No-Op-Durchleitung, wenn der Server nie gebunden wurde, daher ist es sicher, ihn defensiv anzuwenden.
  • Standardereignisse tragen alle das Präfix [MCP] , sodass sie nie mit den bestehenden Amplitude-Ereignissen des Produkts kollidieren. Siehe die Tabelle Default events in der README (und docs/events.md im Repository) für den aktuellen Ereignissatz und die aktuellen Eigenschaften.

Optional: Füge stabile, benutzerdefinierte Dimensionen (Tarifstufe, Team, Feature-Flags) über extra in instrumentTool/instrumentServer hinzu – siehe Abschnitt Custom event properties in der README.

Schritt 2 – Identität korrekt einstellen (erforderlich, mache dies, bevor du Schritt 1 als „erledigt” bezeichnest)

MCP-Ereignisse müssen die gleiche user_id tragen, die das Produkt bereits von Web/Mobil an Amplitude sendet. Wird dies übersprungen, erscheint die MCP-Nutzung als eine getrennte Population, die nicht mit Produktdaten verknüpft werden kann – dies macht den Großteil des Nutzens der Integration zunichte.

Folge dem Abschnitt Identity in der README für die aktuelle API: Sie bietet eine Bindung auf Serverebene, ein setIdentity() pro Anfrage innerhalb eines Handlers und eine optionale resolveIdentity-Zuordnung von den authInfo-Claims der Anfrage. Wähle, was zum Authentifizierungsmodell des Servers passt.

Ein Verhalten, das dem Benutzer mitgeteilt werden sollte: Vollständig anonyme, ankerlose Ereignisse werden standardmäßig verworfen (nicht als Benutzer gezählt), es sei denn, sie werden explizit über emitAnonymousEvent: true für ein reines Aggregat-Tracking aktiviert – frage, bevor du dies einschaltest, da es verändert, was gezählt wird.

Schritt 3 – Begründung erfassen (empfohlen)

Im Gegensatz zu einem Menschen, der auf einen Button klickt, kann ein Agent dir sagen, warum er ein Tool aufgerufen hat. Die Erfassung dieser Information verwandelt die Daten von „Was ist passiert?” in „Was der Benutzer zu tun versuchte.”

Die SDK-Seite ist ein einziger Aufruf (analytics.setRationale(...) – siehe Abschnitt Rationale in der README), aber die SDK liest die Begründung nicht selbst aus den Tool-Eingaben: Wie die Begründung zum Server gelangt, ist eine serverseitige Konvention, die dieses Skill implementiert. Das bewährte Muster ist die Schema-Injektion – füge ein optionales rationale-Feld zum Eingabeschema jedes Tools hinzu. Da der Parameter im Schema beschrieben ist, das Agenten bereits lesen, füllen sie ihn unaufgefordert aus, über alle Clients hinweg, ohne clientseitige Änderungen:

// Zu jedem Tool-Eingabeschema hinzufügen (zod-Beispiel):
rationale: z
  .string()
  .optional()
  .describe(
    'Kurze Erklärung, warum du dieses Tool aufrufst und was ' +
    'du aus dem Ergebnis zu lernen erwartest.',
  ),

Lese es dann innerhalb des instrumentierten Handlers aus und übergib es an die SDK:

analytics.instrumentTool(async (args, extra) => {
  if (typeof args.rationale === 'string') {
    analytics.setRationale(args.rationale);
  }
  return doWork(args);
}, { name: 'search' });

Das optionale Feld stellt sicher, dass nichts kaputtgeht, wenn ein Agent es weglässt. Es wird als reservierte Eigenschaft [MCP] Rationale ausgegeben (auf 1.000 Zeichen gekürzt; der letzte Schreibvorgang gewinnt). Es lohnt sich, dies bei jedem Tool zu tun, nicht nur bei einer Stichprobe.

Schritt 4 – UTM-Tagging für ausgehende Links (empfohlen, nur wenn der Server URLs zurückgibt)

Dieser Schritt liegt vollständig außerhalb der SDK – er ändert, wie der Server URLs erstellt, und hängt von der produktseitigen Web-Analyse ab. Er wird nicht in der SDK-README behandelt.

Wenn eine Tool-Antwort einen Link enthält (Dashboard, Dokumentation, Produktseite), versehe ihn mit Tags, bevor er den Server verlässt, sodass Klicks dem MCP-/Agenten-Traffic zugeordnet werden können, anstatt als direkte Zugriffe zu erscheinen:

function addUtmParams(url: string, clientName?: string): string {
  const u = new URL(url);
  u.searchParams.append('utm_source', 'mcp');
  u.searchParams.append('utm_medium', 'referral');
  // Der verbundene Client (z.B. "Claude", "Cursor"), falls bekannt:
  u.searchParams.append('utm_content', clientName ?? 'unknown');
  return u.toString();
}

Leite jeden URL-Erstellungspfad in Tool-Antworten durch eine zentrale Funktion wie diese – ein einzelner ungetaggter Link unterbricht die Zuordnungsgeschichte für diesen Flow.

Voraussetzung (teile dies dem Benutzer explizit mit): Dies funktioniert nur, wenn ihre Web-Analyse UTM-Parameter bei Page-View-Ereignissen (oder einem anderen Ereignis, das ihre Seite beim Laden auslöst) erfasst. Das Amplitude Browser SDK 2 tut dies standardmäßig – siehe Marketing-Attribution tracken (UTM-, Referrer- und Click-ID-Parameter werden von Haus aus erfasst). Wenn sie einen benutzerdefinierten Page-View-Tracker verwenden, müssen sie bestätigen, dass UTM-Werte auch bei diesen Ereignissen landen, da es sonst nichts gibt, wogegen die MCP-getaggten Klicks gejoint werden können.

Relevante Amplitude-Dokumentation:

Nach der Instrumentierung

Sobald Ereignisse fließen, weise einen Coding-Agenten auf das veröffentlichte Skill analyze-mcp-server von Amplitude an, um Intent-Clustering durchzuführen und Tool-Aufruf-Fehlermuster nach Absicht zu ermitteln. (Falls dieses Projekt das installierte mcp-intent-error-analysis-Skill hat, verwende dieses – nutze es, sobald der Benutzer Daten fließen hat und analysieren möchte, anstatt diese Analyse hier zu duplizieren.)

Häufige Fehler, auf die hingewiesen werden sollte

  • Verwendung veralteter API-Schnipsel anstelle der aktuellen README – rufe sie frisch ab; die SDK befindet sich in der Vorschauphase und entwickelt sich schnell weiter.
  • Installation einer festgeschriebenen/älteren Version anstelle der neuesten Version.
  • Aufruf von instrumentServer() nach server.connect() – muss davor erfolgen.
  • Umwickeln einiger Tool-Handler, aber nicht aller – jedes Tool benötigt instrumentTool.
  • Senden einer user_id, die nicht mit der auf Web/Mobil verwendeten übereinstimmt – unterbricht die Verknüpfbarkeit, den eigentlichen Sinn der Integration.
  • Aktivieren von emitAnonymousEvent: true, ohne dass der Benutzer versteht, dass dies die aggregierten Zählungen durch ankerlosen Traffic aufbläht.
  • Vergessen der UTM-Voraussetzung (Webseitige Erfassung) und Annahme, dass das Taggen von Links allein ausreicht.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

amplitude/builder-skills

Performs deep analysis of a specific Amplitude chart to explain trends, anomalies, and likely drivers. Use when a metric looks unusual, investigating a spike or drop, or understanding the "why" behind numbers.

amplitude/builder-skills

Deeply analyze Amplitude dashboards by analyzing key charts, surfacing top areas for concern and takeaways, identify anomalies, then explain changes using customer feedback trends.

amplitude/builder-skills

Designs A/B tests with proper metrics and variants, analyzes running or completed experiments, and interprets results with statistical rigor. Use when setting up experiments, checking experiment status, analyzing results, or making ship decisions.

amplitude/builder-skills

Synthesizes customer feedback into actionable themes including feature requests, bugs, pain points, and praise. Use when planning product roadmap, understanding user sentiment, investigating specific issues, or preparing voice-of-customer reports.

amplitude/builder-skills

Analyze MCP server usage instrumented with Amplitude's MCP Analytics SDK: break usage and errors down by tool, read the rationales within each tool to see what callers are trying to do, and produce a prioritized write-up of actionable fixes. Use this skill whenever the user asks to understand how their MCP server is being used, what agents/users are trying to do with it, why tool calls are failing, what to fix or improve in their MCP server, or asks for an "MCP usage report", "tool error analysis", "intent analysis", "rationale clustering", or "MCP insights". Also trigger when the user mentions [MCP]-prefixed events, tool rationale, tool call errors, or just finished instrumenting their MCP server and wants to see what the data says. Requires the Amplitude MCP connector.

amplitude/builder-skills

Read lost deals and churned accounts from your CRM, extract reasons clustered by theme (missing features, pricing, competitors, UX), and write a prioritized weekly analysis with product improvement recommendations. Use before roadmap planning or to build the case for prioritizing retention work.

amplitude/builder-skills

Creates Amplitude charts from natural language descriptions, handling event selection, filters, groupings, and visualization choices. Use when you know what you want to measure but prefer not to build the chart manually.

amplitude/builder-skills

Guide an Amplitude user through building a custom agent by suggesting use cases grounded in their role and data, shaping the idea into a well-formed spec, and generating a ready-to-run Global Agent deeplink that creates it. Use to create, build, or set up a custom agent, automate a recurring analysis, or put a repeated report on a schedule.

amplitude/builder-skills

Builds comprehensive Amplitude dashboards from requirements or goals, organizing charts into logical sections with appropriate layouts. Use when creating a complete dashboard from scratch or assembling existing charts into a cohesive view.

amplitude/builder-skills

Monitors all active and recently completed experiments across Amplitude projects, triages them by importance, then runs deep analysis and reporting on the most impactful ones. Use when the user asks to "check on experiments", "experiment status", "experiment review", "what experiments are running", or wants a periodic experiment health report.

amplitude/builder-skills

Pull Intercom tickets and Slack support messages from the past 7 days, classify each signal, enrich with CRM data (ARR, plan, renewal), score by customer value and churn risk, and output a tiered priority report saved to Drive. Use when you need a fast, data-driven view of what support signals matter most.

amplitude/builder-skills

Use this skill whenever a user wants to improve existing pages on their website to get cited more by AI models — whether they say "our pages aren't getting cited", "improve this page for AI visibility", "which of our pages should we update", "make this article more cite-worthy", "our competitors are getting cited instead of us", "update our content for AI search", or any variation where the goal is improving an existing asset rather than creating something new. This skill pulls owned pages from AI Visibility, identifies which ones have citation potential but are underperforming, compares them against the external pages that are winning citations on the same topics, and produces section-level rewrites or a full-page update — then pushes the revision to the CMS as a draft. Trigger even if the user just says "help me get cited more" or "why is [competitor] getting cited instead of us".

amplitude/builder-skills

Use this skill whenever a user wants to win AI citations on prompts that competitors currently dominate — whether they say "competitors are getting cited instead of us", "we're losing on these prompts", "how do I outrank [competitor] in AI answers", "find prompts where we should be winning", "create content to beat [competitor]", or any variation where the goal is capturing AI share on prompts a competitor currently owns. This skill pulls competitor visibility data from AI Visibility, identifies the specific prompts where competitors win and Amplitude is absent, clusters them by intent, and produces targeted comparison pages, alternatives content, or rebuttal assets — then pushes drafts to CMS. Trigger on any mention of competitor, prompt hijack, outrank, or "why is [competitor] getting cited instead of us".

amplitude/builder-skills

Use this skill whenever a user wants to turn AI Visibility data into published content — whether they say "find content gaps", "what should we write about", "which topics have low visibility", "help me get cited by AI models", "create a blog post from our AI Visibility gaps", "we're losing to competitors on these prompts", or any variation where they want to go from AI visibility weakness to a draft article, landing page, or FAQ. This skill connects directly to Amplitude AI Visibility data (topics, prompts, visibility scores, citations, competitor data, full LLM responses and sources) and produces a publish-ready content brief plus full article draft. If the user mentions CMS (WordPress, Webflow, Contentful, Sanity, HubSpot, Ghost, Shopify), also trigger this skill to push the draft directly. Trigger even if they just say something vague like "what content should we create?" in an AI Visibility context.

amplitude/builder-skills

Use this skill whenever a user wants to test content variants before publishing to find which one will get cited most by AI models — whether they say "which version of this content will perform better", "test this article before we publish", "simulate how AI will respond to this content", "which angle should we use", "generate content variants and pick the winner", "run a simulation before publishing", or any variation where the goal is data-driven content selection rather than gut-feel publishing. This skill takes an identified content opportunity, generates 2–3 distinct variants with different angles or structures, scores them against actual AI model responses from AI Visibility, references the Simulate Changes feature for pre-publish validation, and produces a clear recommendation on which variant to publish — then pushes the winner to CMS. Trigger on any mention of "simulate", "test variants", "which performs better", "A/B content", or "before we publish".

amplitude/builder-skills

Use this skill whenever a user wants to understand which external sources are being cited by AI models on topics relevant to their brand, and wants to create content that will outrank those sources — whether they say "what sources are AI models citing", "why is [third-party site] being cited instead of us", "we want to be the definitive source on X", "build something that gets cited more than G2 or TechRadar", "create an authoritative asset", or any variation where the goal is producing a new reference asset (definition page, benchmark, methodology, glossary, comparison hub) designed to beat existing top-cited sources. This skill analyzes AI Visibility source data, reverse-engineers what makes top-cited pages authoritative, and produces a superior source asset — then pushes it to CMS as a draft. Trigger on any mention of "sources", "third-party citations", "authoritative content", "definitional pages", or "outrank".

amplitude/builder-skills

Instruments a pull request with Amplitude analytics that conform to the project's existing taxonomy. Reads the tracking plan via the Amplitude MCP server (events, properties, naming conventions), analyzes the PR diff to find the few user actions genuinely worth tracking, detects the codebase's SDK and tracking patterns, and adds instrumentation that matches both. Optionally (opt-in) stages new events and properties on an Amplitude tracking-plan branch for data-governance review. Use when asked to "instrument this PR", "add analytics to this change", "add tracking", "add Amplitude events", "instrument this feature", or "what should I track here".

amplitude/builder-skills

Diagnoses product health by cross-referencing Amplitude analytics (dashboards, charts, funnels, feedback, AI agent analytics), optionally Datadog (errors, latency, stack traces), and optionally Slack (qualitative feedback, bug reports, feature requests). Identifies what's broken, what's working, and what to do about it — with root causes, not just symptoms. Use when asked to "diagnose my product", "what's going on", "product health check", "what's broken", "where are users struggling", "give me a product diagnosis", or "what should I focus on".

amplitude/builder-skills

Turn one or more meeting transcripts, notes, or Slack threads into concise takeaways and clear action items with DRIs. Works with a single meeting or a batch from the whole week.

amplitude/builder-skills

Summarizes B2B account health by analyzing usage patterns, engagement trends, risk signals, and expansion opportunities. Use for customer success reviews, renewal preparation, QBRs, or account prioritization.

Verwandte Skills