Source profileQuality 89/100

monte-carlo-data/mc-agent-toolkit/skills/performance-diagnosis/SKILL.md

monte-carlo-performance-diagnosis

Diagnoses pipeline performance issues -- slow jobs, expensive queries, latency trends -- using Monte Carlo's cross-platform observability. Uses a tiered investigation approach: discover problems, bridge to affected tables, then drill into root causes. Activates when a user asks about slow pipelines, expensive queries, or performance regressions.

Source repository stars
90
Declared platforms
0
Static risk flags
0
Last source update
2026-08-02
Source checked
2026-08-04

Decision brief

What it does—and where it fits

This skill helps diagnose data pipeline performance issues using Monte Carlo's cross-platform observability data. It works across Airflow, dbt, Databricks, and warehouse query engines to find bottlenecks, detect regressions, and identify root causes.

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/monte-carlo-data/mc-agent-toolkit --skill "skills/performance-diagnosis"
    Safe inspection promptEditorial

    Inspect the Agent Skill "monte-carlo-performance-diagnosis" from https://github.com/monte-carlo-data/mc-agent-toolkit/blob/3c88d016801b7a47be580d559cb3183ea3916cda/skills/performance-diagnosis/SKILL.md at commit 3c88d016801b7a47be580d559cb3183ea3916cda. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      Workflow

      Determine what the user wants to investigate: - Specific job/pipeline: User mentions a job name or pipeline - Specific table: User mentions a table that's slow to update - General discovery: User wants to find what's slow

      Specific job/pipeline: User mentions a job name or pipelineSpecific table: User mentions a table that's slow to updateGeneral discovery: User wants to find what's slow
    2. 02

      Step 1: Identify the scope

      Determine what the user wants to investigate: - Specific job/pipeline: User mentions a job name or pipeline - Specific table: User mentions a table that's slow to update - General discovery: User wants to find what's slow

      Specific job/pipeline: User mentions a job name or pipelineSpecific table: User mentions a table that's slow to updateGeneral discovery: User wants to find what's slow
    3. 03

      Step 2: Tier 1 -- Discovery

      If you don't have specific MCONs to investigate, start with discovery:

      Find slow jobs: Call getjobsperformance with optional integrationtype filter (AIRFLOW, DATABRICKS, DBT) if the user specifies a platform.Results include: job name, average duration, trend (7-day), run count, failure rateLook for: high avgDuration, negative runDurationTrend7d, high failure rates
    4. 04

      Step 3: Bridge -- Job to Tables

      After Tier 1 identifies problematic jobs, convert to table MCONs:

      After Tier 1 identifies problematic jobs, convert to table MCONs:Call gettablesforjob(jobmcon=..., integrationtype=...) using the integrationtype from the job performance results.This gives you the table MCONs needed for Tier 2 investigation.
    5. 05

      Step 4: Tier 2 -- Diagnosis

      Now drill into root causes using the MCONs from discovery or the bridge:

      Task bottleneck: Call gettasksperformance to find which specific task in a job is the bottleneck.What changed? Call getchangetimeline -- this is your most powerful tool. It returns a unified timeline of:Query text changes (schema modifications, new JOINs, filter changes)

    Permission review

    Static risk signals and limitations

    No configured static risk pattern was detected

    This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score89/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars90SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    monte-carlo-data/mc-agent-toolkit
    Skill path
    skills/performance-diagnosis/SKILL.md
    Commit
    3c88d016801b7a47be580d559cb3183ea3916cda
    License
    Apache-2.0
    Collected
    2026-08-04
    Default branch
    main
    View the original SKILL.md

    Monte Carlo Performance Diagnosis Skill

    This skill helps diagnose data pipeline performance issues using Monte Carlo's cross-platform observability data. It works across Airflow, dbt, Databricks, and warehouse query engines to find bottlenecks, detect regressions, and identify root causes.

    Monte Carlo tool routing (required): Always call Monte Carlo MCP tools through this plugin's bundled server, whose fully-qualified tool names are mcp__plugin_mc-agent-toolkit_monte-carlo-mcp__<tool> (e.g. mcp__plugin_mc-agent-toolkit_monte-carlo-mcp__get_alerts). Bare tool names used in this skill (get_alerts, search, get_table, …) refer to that bundled server. If the session also has a separately-configured monte-carlo-mcp server, do not route to it — it may point at a different endpoint or credentials.

    Reference files live next to this skill file. Use the Read tool (not MCP resources) to access them:

    • Tiered investigation approach: references/investigation-tiers.md (relative to this file)
    • Query analysis patterns: references/query-analysis.md (relative to this file)

    When to activate this skill

    Activate when the user:

    • Asks about slow pipelines, jobs, or queries
    • Wants to find expensive or costly queries
    • Mentions performance regressions or degradation
    • Asks "why is this pipeline slow?" or "what's using the most compute?"
    • Wants to compare performance over time or find bottleneck tasks
    • Asks about failed or futile query patterns

    When NOT to activate this skill

    Do not activate when the user is:

    • Investigating data quality issues (use the prevent skill)
    • Looking at storage costs (use the storage-cost-analysis skill)
    • Creating monitors (use the monitoring-advisor skill)
    • Just querying data or exploring table contents

    Prerequisites

    The following MCP tools must be available (connect to Monte Carlo's MCP server):

    Discovery tools (Tier 1):

    • get_jobs_performance -- find slow/failing jobs across Airflow, dbt, Databricks
    • get_top_slow_queries -- find slowest query groups by total runtime

    Bridge tool:

    • get_tables_for_job -- convert job MCONs to table MCONs

    Diagnosis tools (Tier 2):

    • get_tasks_performance -- drill into a job's individual tasks
    • get_change_timeline -- unified timeline of query changes, volume shifts, Airflow/dbt failures
    • get_query_rca -- root cause analysis for failed/futile queries
    • get_query_latency_distribution -- latency trend over time
    • get_asset_lineage -- trace upstream/downstream impact

    Supporting tools:

    • get_warehouses -- list available warehouses

    Workflow

    Step 1: Identify the scope

    Determine what the user wants to investigate:

    • Specific job/pipeline: User mentions a job name or pipeline
    • Specific table: User mentions a table that's slow to update
    • General discovery: User wants to find what's slow

    Call get_warehouses to list available warehouses. Match the user's context to a warehouse.

    Step 2: Tier 1 -- Discovery

    If you don't have specific MCONs to investigate, start with discovery:

    1. Find slow jobs: Call get_jobs_performance with optional integration_type filter (AIRFLOW, DATABRICKS, DBT) if the user specifies a platform.

      • Results include: job name, average duration, trend (7-day), run count, failure rate
      • Look for: high avgDuration, negative runDurationTrend7d, high failure rates
    2. Find expensive queries: Call get_top_slow_queries with optional warehouse_id and query_type ("read" for SELECTs, "write" for INSERT/CREATE/MERGE).

      • Results include: query hash, total runtime, average runtime, run count
      • Look for: queries with high total runtime or high individual execution time

    Present the top findings to the user before drilling deeper. A typical investigation needs only 3-7 tool calls.

    If both discovery tools return no results: Tell the user no performance issues were found in the current time window. Suggest broadening the scope (different warehouse, longer time range, or a different platform filter).

    Step 3: Bridge -- Job to Tables

    After Tier 1 identifies problematic jobs, convert to table MCONs:

    Call get_tables_for_job(job_mcon=..., integration_type=...) using the integration_type from the job performance results.

    This gives you the table MCONs needed for Tier 2 investigation.

    Step 4: Tier 2 -- Diagnosis

    Now drill into root causes using the MCONs from discovery or the bridge:

    1. Task bottleneck: Call get_tasks_performance to find which specific task in a job is the bottleneck.

    2. What changed? Call get_change_timeline -- this is your most powerful tool. It returns a unified timeline of:

      • Query text changes (schema modifications, new JOINs, filter changes)
      • Volume shifts (row count spikes/drops)
      • Airflow task failures
      • dbt model failures All in one call. Look for correlations: "query changed on day X, runtime doubled on day X+1."
    3. Why are queries failing? Call get_query_rca to get root cause analysis:

      • Failed queries: errors, timeouts, permission issues
      • Futile queries: queries that run but produce no useful output
      • Patterns are pre-computed -- the tool groups failures by cause
    4. Is latency degrading? Call get_query_latency_distribution to see the trend:

      • Compare p50 vs p95 -- if p95 >> p50 (>5x), the problem is outlier queries
      • Look for step-changes in latency (sudden increase = regression)
      • For step-change / regression-time-localization use cases, pass bucket="1h". The default downsamples to daily on windows ≥ 3 days, which hides hour-level steps.
    5. Trace impact: Call get_asset_lineage with direction="DOWNSTREAM" to see what's affected by a slow table, or direction="UPSTREAM" to find what feeds it.

    Step 5: Present findings

    Structure your response as:

    1. Problem summary: What's slow and by how much (with exact numbers from tools)
    2. Root cause: What changed or what's causing the issue
    3. Impact: What downstream systems are affected
    4. Recommendations: Specific actions to fix the issue

    Important rules

    • Quote tool numbers exactly. If a tool returns "1282 runs, avg 22.5s", say exactly that. Never round, estimate, or fabricate numbers.
    • Always compare to baselines. Use 7-day trend data (runDurationTrend7d) to distinguish regressions from normal variance. Flag if trend data has less than 0.1 confidence.
    • Stop when you have a root cause. 3-7 tool calls is typical. More than 10 means you're over-investigating.
    • Read vs write queries: When the user asks about "reads" or "read queries", filter with query_type="read". When they ask about "writes", use query_type="write". Do NOT mix them.
    • Never expose MCONs, UUIDs, or internal identifiers to the user. Use human-readable names.
    • Cross-platform: This skill works across Airflow, dbt, and Databricks. Note which platform each finding comes from.

    Alternatives

    Compare before choosing

    Computed 10023,781

    alirezarezvani/claude-skills

    app-store-optimization

    App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist

    Computed 10014,225

    wanshuiyin/Auto-claude-code-research-in-sleep

    citation-audit

    Use it for operations and research tasks; the detail page covers purpose, installation, and practical steps.

    Computed 1004,922

    dotnet/skills

    migrate-vstest-to-mtp

    Migrates .NET test projects from VSTest to Microsoft.Testing.Platform (MTP). Use when user asks to "migrate to MTP", "switch from VSTest", "enable Microsoft.Testing.Platform", "use MTP runner", set OutputType=Exe only for test projects in Directory.Build.props, or mentions EnableMSTestRunner, EnableNUnitRunner, or UseMicrosoftTestingPlatformRunner. USE FOR: MTP behavioral differences vs VSTest (exit code 8, zero tests discovered, --ignore-exit-code, TESTINGPLATFORM_EXITCODE_IGNORE); centralizing

    Computed 1002,504

    aaron-he-zhu/aaron-marketing-skills

    social-selling-planner

    Use when the user asks to "set up my founder social-selling routine", "build a daily engagement block for target accounts", or "turn funding / hiring signals into selling plays"; produces the founder/seller daily operating block — a time-boxed engagement-block spec (substantive value-add comments on target-account posts, never a pitch), warm-touch-before-ask cadence rules, trigger-response plays consuming the social-pulse-monitor B2B trigger watchlist (funding / hiring / launch signals), and a q