CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

api-ninjas

API Ninjas integration. Manage Organizations, Users, Goals, Filters. Use when the user wants to interact with API Ninjas data.

Quality

71%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/api-ninjas/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 is a largely actionable, command-first guide with an unusually well-specified connection state machine (polling, client-action handling, error states) that gives the workflow real validation checkpoints. Its weaknesses are concentrated: a junk 'API Ninjas Overview' navigation section, dangling 'Step 2' references with no numbered steps, and truncated action descriptions — all cheap fixes that would push most dimensions up a level.

Suggestions

Delete the contentless 'API Ninjas Overview' bullet list and the vague 'Agent Types' trailing sentence, or fold them into one informative line.

Number the workflow explicitly (1. Install, 2. Authenticate, 3. Connect, 4. Discover actions, 5. Run) so the existing 'skip to Step 2' references resolve — currently 'Step 2' and the '1b' heading point to labels that don't exist.

Complete the truncated action descriptions in the Popular actions table ('has MX records, and if it's a disposab...', 'WEAK_NEGATIVE, or NEUTRAL)...') or move the full catalog to a reference file.

DimensionReasoningScore

Conciseness

Most sections are lean, command-first documentation, but there is real waste: the 7-line 'API Ninjas Overview' bullet list ('API', 'Subscription', 'Pricing', 'Authentication') conveys nothing, the intro paragraph explains what the service is at a level Claude doesn't need, and the 'Agent Types' line ('Those will be used to adjust tooling to be used best with your harness') is vague padding — more than the 'minor instances' of the level-4 anchor.

3 / 5

Actionability

Nearly every section gives copy-paste-ready commands ('npm install -g @membranehq/cli@latest', 'membrane connection ensure "https://api-ninjas.com/" --json', 'membrane action run <actionId> --connectionId=CONNECTION_ID --input ...'), but the guidance references an undefined 'Step 2' twice ('skip to Step 2') with no numbered steps existing, and there is no single worked end-to-end example with real values — minor gaps keeping it below fully-executable level 5.

4 / 5

Workflow Clarity

The connection flow has a genuinely strong checkpoint loop: poll with '--wait', branch on 'READY', 'CLIENT_ACTION_REQUIRED' (act on clientAction.uiUrl/agentInstructions, then poll again), and 'CONFIGURATION_ERROR' or 'SETUP_FAILED' (check the error field) — explicit validation and feedback for the fragile step. The sequence is marred by broken step labeling: 'Step 2' is referenced but never defined and section '1b' exists with no '1a'/'Step 1' heading, so numbering is inconsistent rather than merely having minor gaps.

4 / 5

Progressive Disclosure

As a single-file skill (no references/, scripts/, or assets/ exist), it is well-sectioned in a logical order (install → auth → connect → discover → run → proxy → best practices), with the Popular actions and proxy-flags tables reasonably sized for inline placement. Minor organization gaps remain: the contentless 'API Ninjas Overview' bullet section and truncated table cells ('disposab...', 'NEUTRAL)...') could be cleaned or split out; at ~155 lines it does not qualify for the under-50-line exception.

4 / 5

Total

15

/

20

Passed

Description

62%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 has the right shape — a what, an explicit 'Use when' clause, and the distinctive API Ninjas brand name as its anchor trigger — but the capability list relies on a single generic verb and, notably, names objects (Organizations, Users, Goals, Filters) that do not correspond to API Ninjas' actual API catalog, weakening both specificity and trigger coverage. Adding concrete capability nouns users would actually say would lift it substantially.

Suggestions

Replace the generic 'Manage Organizations, Users, Goals, Filters' with the actual concrete capabilities (e.g., 'Look up IP geolocation, validate emails, fetch current weather, analyze text sentiment, get jokes and quotes') — the current object list does not match API Ninjas' real API catalog.

Add natural task-level trigger terms users would say, such as 'weather, IP address, email validation, sentiment analysis, jokes, quotes', so the description fires when users describe a task without naming the service.

Keep the 'Use when' clause but make the trigger phrases concrete (e.g., 'Use when the user mentions API Ninjas or wants weather data, email validation, or text analysis APIs').

DimensionReasoningScore

Specificity

The description names the domain ("API Ninjas integration") and enumerates objects ("Manage Organizations, Users, Goals, Filters"), but the only action verb is the generic "Manage" repeated over four nouns — closer to a domain-plus-generic-action pattern than the several distinct concrete actions of the level-4 anchor, while more enumerated than the minimal level-2 example.

3 / 5

Completeness

Both parts are present: a what ("Manage Organizations, Users, Goals, Filters") and an explicit when ("Use when the user wants to interact with API Ninjas data"), but the when-clause is generic and lacks the concrete trigger phrases of a level-5 description.

4 / 5

Trigger Term Quality

"API Ninjas" and "interact with API Ninjas data" give the one natural keyword a user would say (the brand name), but there is no coverage of task-level terms users would actually use (weather, jokes, quotes, email validation, sentiment, IP lookup) or any synonyms — some relevant keywords, missing common variations.

3 / 5

Distinctiveness Conflict Risk

The brand name "API Ninjas" gives it a clear niche with a distinct trigger, but the generic clause "Manage Organizations, Users, Goals, Filters" reads like generic CRUD/admin-skill language and creates minor overlap risk with broader management skills.

4 / 5

Total

14

/

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.

Validation — 15 / 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

Path

skills/api-ninjas/SKILL.md

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.