create-graph

작성자: launchdarkly

로그, 트레이스, 오류, 세션, 메트릭 및 이벤트 데이터로부터 인라인 차트 미리보기를 통해 가시성 대시보드와 그래프를 생성하고 이를 저장합니다.

npx skills add https://github.com/launchdarkly/ai-tooling --skill create-graph

Create graphs and dashboards

Prerequisites

This skill uses the following LaunchDarkly MCP tools:

  • preview-graph — render a chart preview inline without saving it
  • create-graph — add a chart to an existing dashboard
  • create-dashboard — create a new empty dashboard
  • list-dashboards — list existing dashboards
  • get-dashboard — get the full config of a dashboard, including its graphs
  • get-keys — discover available metrics, attributes, and keys for a product type

All of these tools require a projectKey (e.g. "default").

Overview

You are building observability graphs. Your tools are precise — get the enum values wrong and the API rejects the call. Always use get-keys before building a query to confirm the dimension names are real.

Capabilities

  • list-dashboards — list existing dashboards to check for duplicates or find a target
  • get-dashboard — get the full config of an existing dashboard, including its graphs
  • create-dashboard — create a new dashboard
  • preview-graph — render a chart preview inline
  • create-graph — add a chart to a dashboard
  • get-keys — discover available metrics, attributes, and keys for a product type

When the user's request is purely about visualizing data, stay on task — don't reach for unrelated tools.

Workflow

  1. Identify the target dashboard. If the user already has a specific dashboard in mind (by ID or name), add graphs to it directly. Otherwise, call list-dashboards and offer to target an existing one or create a new one with create-dashboard.
  2. Discover the data shape. Call get-keys for the relevant product type before building a query. Attribute names vary across services — service_name vs service.name vs serviceName. Guessing wastes tool calls.
  3. For ambiguous requests, ask a brief clarifying question as regular text. Example: "I found several latency-related keys. Would you like P50 or P95 latency, and should I group by service name?" Keep clarifications short — one or two questions max. For minor ambiguity (chart type preference), make a reasonable default and note your assumption.
  4. Preview before committing. Call preview-graph first, show the user an inline preview, and confirm before calling create-graph. For multiple graphs, preview and confirm each one individually.
  5. Create the graph with create-graph. Use exact enum casing from enums.md.
  6. Confirm what was created — provide the dashboard URL and a one-line description of what the graph shows.

Duplicating existing graphs

When asked to duplicate or copy a graph, call get-dashboard to retrieve the full configuration (expressions, product type, query, groupBy, display settings), then replicate those values in create-graph. Do not guess from the graph title alone — titles drift from the underlying config.

Guidelines

  • Be concise — don't narrate intermediate tool calls. Skip prefaces like "First, let me discover the keys" or "Now I'll build the chart." One short sentence at the start of the reply is enough if needed (e.g. "Building a chart of recent logs by level."); after that, just call the tools.
  • Prefer multiple focused graphs over one complex graph. A dashboard with 3 clean graphs beats one graph with 5 overlapping expressions.
  • Always call get-keys before building a query. Prevents silent empty results from wrong field names.

Chart-type picks

  • Line chart — time-series trends. Error rates over time, latency percentiles, request volume.
  • Bar chart (or histogram) — comparisons across a dimension. Errors by service, requests by endpoint.
  • Table — detailed breakdowns with multiple dimensions where a chart wouldn't convey the detail.

Aggregators

  • Count — total events (most common). Requires column="" (empty string).
  • CountDistinct — unique values. Users, sessions, flag keys.
  • Avg, P50, P90, P95, P99 — latency distributions.
  • Sum — numeric totals (payload size, revenue).

Common mistakes

  • Using lowercase sessions for productType. It's Sessions — PascalCase. See enums.md.
  • Omitting column on a Count expression. The API requires it; pass empty string "".
  • Using count_distinct or Count_distinct. It's CountDistinct — PascalCase, no underscore.
  • Building a query without get-keys first and getting empty results because the attribute name was wrong.
  • Using date-only format (2026-03-04) for get-keys. Needs full ISO with time: 2026-03-04T00:00:00Z.

launchdarkly의 다른 스킬

aiconfig-online-evals
launchdarkly
사용 중단됨 리디렉션 — 이 스킬은 online-evals로 이름이 변경되었습니다. 이 스킬을 사용하지 말고 대신 online-evals를 호출하세요. 이전 참조를 위해 유지됨…
official
launchdarkly-experiment-setup
launchdarkly
LaunchDarkly에서 실험을 설정하고 실행합니다. 메트릭, 처리 방식, 플래그 구성을 사용하여 실험을 생성하고, 데이터 수집을 위해 반복을 시작하며, 디자인을 전환합니다…
official
custom-metrics
launchdarkly
구성에 대한 사용자 정의 비즈니스 메트릭을 생성, 추적, 검색, 업데이트 및 삭제합니다. 전체 수명 주기를 다룹니다: API를 통해 메트릭 종류를 정의하고, SDK를 통해 이벤트를 전송하며…
official
projects
launchdarkly
코드베이스에서 LaunchDarkly 프로젝트를 설정하기 위한 가이드입니다. 스택을 평가하고, 적절한 접근 방식을 선택하며, 프로젝트 관리를 통합하는 데 도움을 줍니다…
official
aiconfig-ai-metrics
launchdarkly
사용 중단됨 리디렉션 — 이 스킬은 built-in-metrics로 이름이 변경되었습니다. 이 스킬을 사용하지 말고 built-in-metrics를 호출하세요. 이전 참조를 위해 유지됩니다…
official
aiconfig-projects
launchdarkly
더 이상 사용되지 않는 리디렉션 — 이 스킬은 projects로 이름이 변경되었습니다. 이 스킬을 사용하지 말고 projects를 호출하세요. aiconfig-projects에 대한 이전 참조를 위해 유지됩니다…
official
aiconfig-migrate
launchdarkly
사용 중단된 리디렉션입니다. 이 스킬은 migrate로 이름이 변경되었습니다. 이 스킬을 사용하지 말고 대신 migrate를 호출하세요. aiconfig-migrate에 대한 이전 참조가 계속 작동하도록 유지됩니다.
official
aiconfig-tools
launchdarkly
사용 중단된 리디렉션입니다. 이 스킬은 tools로 이름이 변경되었습니다. 이 스킬을 사용하지 말고 tools를 호출하세요. 이전에 aiconfig-tools를 참조한 항목들이 계속 연결되도록 유지됩니다.
official