CtrlK
BlogDocsLog inGet started
Tessl Logo

moonmail

MoonMail integration. Manage Organizations. Use when the user wants to interact with MoonMail data.

55

Quality

62%

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

Fix and improve this skill with Tessl

tessl review fix ./skills/moonmail/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body delivers executable, well-structured command documentation with a clear connect-to-discover-to-run workflow and genuine polling/feedback loops. Its main weaknesses are a padded product-intro paragraph explaining concepts Claude already knows and a broken step-numbering scheme ('Step 2', '1b') with no Step 1.

Suggestions

Cut the marketing-intro paragraph ('MoonMail is a marketing automation platform...') and motivational asides — assume Claude knows what an email/SMS platform is.

Fix the broken step numbering: the 'Connecting' section references 'Step 2' and '1b' with no Step 1, and 'Popular actions' is not labeled Step 2 — renumber or drop the cross-references.

Move the proxy flags table and the clientAction schema into a dedicated reference file (e.g. references/proxy-and-auth.md) and point to it, so the overview stays lean.

DimensionReasoningScore

Conciseness

Quotes 'MoonMail is a marketing automation platform that allows businesses to create and send email and SMS campaigns...' and 'Membrane handles authentication... so you can focus on the integration logic rather than auth plumbing' — mostly efficient command docs, but the product-intro paragraph and a few motivational asides explain things Claude already knows, matching the 'mostly efficient but could be tightened' anchor.

3 / 5

Actionability

Quotes 'npm install -g @membranehq/cli@latest', 'membrane connection ensure "https://moonmail.io/" --json', and 'membrane action run <actionId> --connectionId=CONNECTION_ID --json' plus a full flags table — concrete, copy-pasteable commands cover the common cases with only minor placeholder gaps, matching the 'mostly executable guidance' anchor.

4 / 5

Workflow Clarity

Quotes the connect→poll→state sequence ('If the returned connection has state: READY, skip to Step 2', 'Keep polling until state is no longer BUILDING') with READY/CLIENT_ACTION_REQUIRED/CONFIGURATION_ERROR feedback loops — clear sequence with checkpoints, but the 'Step 2'/'1b' numbering is broken and not a destructive/batch workflow so the cap does not apply, matching anchor 4.

4 / 5

Progressive Disclosure

No bundle files exist (references/scripts/assets absent); the body is well-organized with clear section headers and no nested references, but bulk reference material such as the proxy flags table and clientAction schema is inlined rather than split into a dedicated file, matching anchor 4 with minor organization gaps rather than 5.

4 / 5

Total

15

/

20

Passed

Description

57%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description names a specific integration and provides both a 'what' and an explicit 'Use when' trigger, but its action list is minimal and misaligned with the body's actual capabilities. Trigger coverage relies on the app name alone, missing the concrete verbs a user would naturally say.

Suggestions

Replace 'Manage Organizations' with the concrete actions the skill actually supports (e.g., create and send email/SMS campaigns, manage templates, lists, and reports) to raise specificity.

Add natural trigger terms users would say — 'campaigns', 'email marketing', 'templates', 'lists' — alongside 'MoonMail data' so the description surfaces on real requests.

Keep the explicit 'Use when' clause but make it concrete: 'Use when the user wants to create or send MoonMail email/SMS campaigns or manage their lists and templates.'

DimensionReasoningScore

Specificity

Quotes 'MoonMail integration. Manage Organizations.' — names the domain plus one generic action, matching the anchor for minimal/generic actions; it does not list several concrete actions so it stays below 3.

2 / 5

Completeness

Quotes 'MoonMail integration. Manage Organizations.' (what) and 'Use when the user wants to interact with MoonMail data.' (when) — both are explicitly present, but the 'when' trigger is generic rather than concrete, matching the anchor with both what and when where when could be more specific.

4 / 5

Trigger Term Quality

Quotes 'MoonMail' and 'interact with MoonMail data' — a relevant natural keyword is present, but common variations (campaigns, email, SMS, templates, lists) are missing, matching the 'some relevant keywords but missing variations' anchor.

3 / 5

Distinctiveness Conflict Risk

Quotes 'MoonMail integration' — naming a specific app gives a clear niche with minimal conflict risk, matching the 'mostly distinct, minor overlap' anchor rather than 5 because the supporting trigger phrasing is generic.

4 / 5

Total

13

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
membranedev/application-skills
Reviewed

Table of Contents

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.