CtrlK
BlogDocsLog inGet started
Tessl Logo

semantic-scholar-database

Access the Semantic Scholar Graph API to search papers and retrieve paper/author/citation data when you need literature discovery or citation graph exploration.

61

Quality

73%

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 ./scientific-skills/Evidence Insight/semantic-scholar-database/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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 actionable and well-structured with executable, copy-paste-ready code, but it carries some redundancy between sections and fails to route readers to the existing `references/api_docs.md`. A minor correctness mismatch in citation-result handling also lowers actionability.

Suggestions

Link to `references/api_docs.md` from "Implementation Details" and move the duplicated base URL / endpoint / rate-limit detail there instead of inlining it.

Fix the citation traversal example to read the actual response shape (e.g., `len(citing.get("data", []))`) so it produces a real count.

Consolidate the operation lists in "Key Features" and "Implementation Details > Core Operations" to remove the duplicated enumeration.

DimensionReasoningScore

Conciseness

The body is mostly lean and assumes Claude's competence (no generic concept explanations), but "Key Features" and "Implementation Details > Core Operations" redundantly enumerate the same four operations, which could be trimmed; this keeps it just below the lean 5 anchor.

4 / 5

Actionability

The example is real, importable, copy-paste-ready code covering all common operations with concrete IDs, but the citation handling (`len(citing) if isinstance(citing, list)`) does not match the actual API response shape (`{"data": [...]}`), so it would print "N/A" instead of a count — a minor executable gap below 5.

4 / 5

Workflow Clarity

The example sequences the four operations in a clear numbered order and the operations are unambiguous; no validation checkpoints are needed for read-only API calls, but the skill is multi-operation rather than single-action, so the simple-skill 5 exception does not fully apply.

4 / 5

Progressive Disclosure

Sections are well-organized and `scripts/client.py` is referenced, but `references/api_docs.md` is never signaled from the body, and base URL / endpoint / rate-limit content that already lives in `api_docs.md` is inlined in "Implementation Details", fitting the anchor where references are present but not clearly signaled and separable content is inline.

3 / 5

Total

15

/

20

Passed

Description

75%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 is third-person, specific, and explicitly pairs a clear 'what' with a 'when' trigger clause. It is a solid, well-targeted description that falls just short of the top anchors due to limited synonym/trigger variety.

Suggestions

Add natural synonyms and explicit user-mention triggers (e.g., "when the user asks to find research papers, look up an author, or explore citations").

Spell out the concrete retrieval actions individually (e.g., "fetch paper metadata, author profiles, and citation/reference lists") rather than the grouped "paper/author/citation data".

DimensionReasoningScore

Specificity

"search papers and retrieve paper/author/citation data" lists several concrete actions across a named API, but the grouped "paper/author/citation data" phrasing is slightly less granular than enumerating each distinct action, so it sits just below comprehensive (5).

4 / 5

Completeness

It states both what ("Access the Semantic Scholar Graph API to search papers and retrieve...") and when ("when you need literature discovery or citation graph exploration"), but the when-clause offers only two scenarios rather than a fuller set of concrete trigger phrases, so it is strong but not a 5.

4 / 5

Trigger Term Quality

Natural terms a user would say appear ("search papers", "literature discovery", "citation graph exploration"), but common synonyms such as "research papers", "scholarly articles", or "find papers by author" are missing, keeping it below the comprehensive 5 anchor.

4 / 5

Distinctiveness Conflict Risk

Naming the specific Semantic Scholar Graph API gives a clear niche and low conflict risk, but the fairly broad "literature discovery" trigger has minor overlap potential with other academic-search skills, placing it just below the minimal-conflict 5 anchor.

4 / 5

Total

16

/

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
aipoch/medical-research-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.