CtrlK
BlogDocsLog inGet started
Tessl Logo

geo-schema

Schema.org structured data audit and generation optimized for AI discoverability — detect, validate, and generate JSON-LD markup

56

Quality

64%

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/geo-schema/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%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 well-structured, highly actionable reference with concrete templates, a validation checklist, and a scoring rubric, but it carries conceptual/persuasive padding and inlines a large schema reference that should be split into a separate file. The referenced fetch_page.py script is not bundled, weakening both actionability and progressive disclosure.

Suggestions

Move the Step 3 schema-type property reference (Organization/LocalBusiness/Article/Product/FAQPage/SoftwareApplication) into a separate references/SCHEMA-TYPES.md, keeping only the GEO-critical highlights and a clearly signaled link in SKILL.md.

Trim the Purpose paragraph and the "why this matters for AI" persuasive prose (e.g. the sameAs rationale paragraph) to assume Claude's competence and improve token efficiency.

Bundle the referenced fetch_page.py under scripts/ (or replace the hardcoded ~/.claude/skills/geo/scripts/ path with a bundled, portable reference) so the Step 1 command is actually runnable.

DimensionReasoningScore

Conciseness

Mostly actionable reference material, but the Purpose paragraph and scattered persuasive prose ("structured data is how AI models understand and trust your entity", "the single most important structured data property for GEO") explain concepts and motivations Claude already knows. Not 4 because the over-explanation is more than minor; not 2 because the bulk is concrete reference content rather than severely padded.

3 / 5

Actionability

Provides copy-paste-ready JSON-LD templates (Organization, WebSite+SearchAction, speakable), a concrete fetch command, a point-valued scoring rubric, and a report output template. Not 5 because only Organization gets a full template while other types get property checklists, and the primary fetch_page.py command references a script that is not bundled.

4 / 5

Workflow Clarity

A clear 6-step sequence (fetch → detect → validate → identify missing → generate → output) with an 8-point validation checklist and a scoring rubric as checklists. Not 5 because there is no explicit feedback loop or gating checkpoint (e.g. "only generate after validation passes"); not 3 because the sequence and validation step are clearly present, not merely implicit.

4 / 5

Progressive Disclosure

Good section headers and step structure, but it is a monolithic ~360-line file with a large inlined schema-property reference (~130 lines) that belongs in a separate reference file, and its one external reference (fetch_page.py) is not present in the bundle. Not 4 because the referenced script is not a real bundled file and reference content is inlined; not 2 because section structure is genuinely well-organized, not minimal.

3 / 5

Total

14

/

20

Passed

Description

66%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 clearly states what the skill does with concrete action verbs and strong domain keywords, but omits any explicit "Use when..." trigger guidance, which caps completeness. Distinctiveness is good thanks to the specific Schema.org/JSON-LD niche.

Suggestions

Add an explicit trigger clause, e.g. "Use when the user mentions schema markup, structured data, JSON-LD, rich results, or wants to improve a site's AI discoverability."

Broaden trigger-term coverage with synonyms users actually say ("rich results", "rich snippets", "schema markup", "microdata", "RDFa") to raise trigger_term_quality toward 5.

DimensionReasoningScore

Specificity

Lists several concrete actions — "audit and generation", "detect, validate, and generate JSON-LD markup" — naming the domain (Schema.org structured data) and three distinct operations. Not 5 because coverage is not as comprehensive as the top anchor's multi-action list, and "audit and generation" partly overlaps with the enumerated verbs.

4 / 5

Completeness

Has a clear "what" (audit/generate Schema.org JSON-LD) but no "Use when..." clause or equivalent explicit trigger guidance, so per the rubric's cap completeness cannot exceed 3. The "when" is only weakly implied.

3 / 5

Trigger Term Quality

Includes good natural keywords users would say — "Schema.org", "structured data", "JSON-LD", "AI discoverability". Not 5 because common synonyms and variants (rich results, schema markup, microdata/RDFa, .jsonld) are missing; not 3 because coverage is genuinely broad rather than just "some" keywords.

4 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (Schema.org/JSON-LD structured data for GEO) and is mostly distinct with minor overlap risk against a general SEO/markup skill. Not 5 because it lacks the explicit distinct trigger phrases of the top anchor and "optimized for AI discoverability" is a broad claim that could overlap with general SEO skills.

4 / 5

Total

15

/

20

Passed

Validation

87%

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

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository
zubair-trabzada/geo-seo-claude
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.