Automate Klaviyo tasks via Rube MCP (Composio): manage email/SMS campaigns, inspect campaign messages, track tags, and monitor send jobs. Always search tools first for current schemas.
76
66%
Does it follow best practices?
Impact
95%
3.16xAverage score across 3 eval scenarios
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/all-skills/skills/klaviyo-automation/SKILL.mdQuality
Discovery
82%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a solid skill description with strong specificity and distinctiveness, clearly naming the platform (Klaviyo), the integration method (Rube MCP/Composio), and multiple concrete actions. Its main weakness is the lack of an explicit 'Use when...' clause, which would help Claude know precisely when to select this skill. The trigger terms are naturally phrased and cover the domain well.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user asks about Klaviyo campaigns, email/SMS marketing automation, or managing Klaviyo tags and send jobs.'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'manage email/SMS campaigns', 'inspect campaign messages', 'track tags', 'monitor send jobs', and 'search tools first for current schemas'. These are concrete, actionable capabilities. | 3 / 3 |
Completeness | The 'what' is well-covered with specific actions, but there is no explicit 'Use when...' clause or equivalent trigger guidance. The when is only implied by the nature of the tasks described, which caps this at 2 per the rubric guidelines. | 2 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'Klaviyo', 'email', 'SMS', 'campaigns', 'tags', 'send jobs', 'Rube MCP', 'Composio'. These cover the domain well and match terms users would naturally use when requesting these tasks. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive due to the specific mention of 'Klaviyo', 'Rube MCP (Composio)', and the particular combination of email/SMS campaign management. This is unlikely to conflict with other skills given the very specific platform and tooling references. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
50%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill provides solid coverage of Klaviyo campaign operations with clear tool sequences and useful pitfall documentation. Its main weaknesses are redundancy across sections (pitfalls repeated in workflows and in a dedicated section), lack of truly executable examples (pseudocode rather than concrete tool calls), and missing validation/error-recovery steps in workflows. Trimming duplicated content and adding concrete invocation examples would significantly improve quality.
Suggestions
Consolidate duplicated pitfalls — mention rate limits, status case-sensitivity, and response nesting once in the Known Pitfalls section and reference it from workflows instead of repeating.
Add at least one fully concrete tool invocation example showing exact parameter values and expected response structure, rather than pseudocode steps.
Add explicit validation checkpoints to workflows, e.g., 'Verify response contains data.data array before proceeding' and error recovery for 429 rate limit responses.
Consider splitting detailed reference content (filter syntax, sparse fieldsets, full pitfalls list) into a separate REFERENCE.md file to keep the main skill lean.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is reasonably well-structured but includes some redundancy — pitfalls are repeated across individual workflows and then again in the 'Known Pitfalls' section (e.g., rate limits, status case-sensitivity, response nesting). The pagination pattern is also explained twice. Some trimming would improve token efficiency. | 2 / 3 |
Actionability | The skill provides specific tool names, parameter names, and filter syntax examples, which is good. However, there are no executable code snippets — the 'code blocks' are pseudocode/prose steps rather than actual tool invocations with concrete parameter values. The sparse fieldset examples show parameter values but not complete tool calls. | 2 / 3 |
Workflow Clarity | Workflows are clearly sequenced with labeled steps and prerequisite markers, which is helpful. However, there are no explicit validation checkpoints or error recovery loops — for example, no guidance on what to do if a connection fails, if pagination returns unexpected results, or how to handle 429 rate limit responses beyond 'implement backoff.' The setup section has a basic verification step but lacks a feedback loop. | 2 / 3 |
Progressive Disclosure | The content is well-organized with clear sections and a quick reference table, but it's quite long (~180 lines) with significant inline detail that could be split into separate reference files (e.g., filter syntax, sparse fieldsets, detailed pitfalls). The only external reference is the Composio toolkit docs link. The content is structured but monolithic. | 2 / 3 |
Total | 8 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
7cc63f3
Table of Contents
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.