CtrlK
BlogDocsLog inGet started
Tessl Logo

identify-top-key-values

Analyze RT event tables to identify the most common values for stitching keys. Use when inspecting what ID values are actually flowing into RT 2.0, debugging unexpected stitching behavior, or checking for data quality issues like nulls or empty stitching keys.

67

Quality

81%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Identify Top Key Values

This skill is used to inspect the actual data flowing into RT 2.0 event tables and analyze the distribution of stitching key values. It helps debug ID stitching issues by showing the most common values for each configured stitching key, including nulls and empty values that might cause problems. This is what's seen in plazma and may not be different than what the rt system ignores by configuration.

Use this skill when you want to understand:

  • What ID values are actually present in your event data
  • Distribution patterns of stitching keys
  • Data quality issues (nulls, test values, invalid formats)

Requirements

In order to analyze key values we need:

  1. Parent segment ID - The RT-enabled parent segment to inspect
  2. Correctly configured tdx CLI or Treasure Data MCP server (@treasuredata/mcp-server)
  3. API key with database access to query the event tables
  4. Existing RT configuration with event tables and stitching keys configured

Process

This skill will:

  1. Inspect RT configuration to get event tables and stitching keys
  2. Generate dynamic query based on configured keys
  3. Analyze recent data (default: last 3 hours) for distribution patterns
  4. Show top values including nulls and potentially problematic values

Getting RT Configuration

First, inspect the current RT configuration to understand what to analyze:

# Get RT configuration via CDP API
tdx api "/audiences/<parent_segment_id>/realtime_setting" --type cdp --method GET

# Example response:
# {
#   "keyColumns": [
#     { "name": "td_client_id" }
#   ],
#   "eventTables": [
#     { "database": "engage_in_app_message", "table": "be_users" }
#   ],
#   "status": "ok"
# }

Core Query Template

Based on your RT configuration, generate a query like this example for parent segment 508396:

RT Configuration:

  • eventTables: engage_in_app_message.be_users
  • keyColumns: td_client_id
-- Most common values in last 3 hours (including nulls/empties)
SELECT
  key_name,
  value,
  event_count
FROM (
  SELECT 'td_client_id' as key_name, td_client_id as value, COUNT(*) as event_count
  FROM engage_in_app_message.be_users
  WHERE td_interval(time, '-3h/now')
  GROUP BY td_client_id
)
ORDER BY event_count DESC
LIMIT 100;

Related Skills

  • rt-config-id-stitching: Configure stitching keys and exclude patterns
  • rt-config-setup: View current RT configuration
  • id-graph-canonical-id-size: Analyze resulting canonical ID groups
  • id-graph-ids-to-canonical-id: Check for over-stitching issues
Repository
treasure-data/td-skills
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.