CtrlK
BlogDocsLog inGet started
Tessl Logo

neo4j-graphrag-skill

Build GraphRAG retrieval pipelines on Neo4j using the neo4j-graphrag Python package (v1.16.0+). Covers retriever selection (VectorRetriever, HybridRetriever, VectorCypherRetriever, HybridCypherRetriever, Text2CypherRetriever, ToolsRetriever), external vector DB retrievers (Weaviate, Pinecone, Qdrant), retrieval_query Cypher fragments, query_params, filters, GraphRAG pipeline wiring (GraphRAG + LLM + prompt), all LLM providers (OpenAI, Anthropic, VertexAI, Bedrock, Cohere, Mistral, Ollama), embedder setup, index creation, token usage tracking, Cypher 25 SEARCH clause, and LangChain/LlamaIndex integration. Does NOT handle KG construction — use neo4j-document-import-skill. Does NOT handle plain vector search — use neo4j-vector-index-skill. Does NOT handle GDS analytics — use neo4j-gds-skill. Does NOT handle agent memory — use neo4j-agent-memory-skill.

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

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./neo4j-graphrag-skill/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.

A highly actionable, code-dense skill body with good validation checkpoints and a verification checklist, held back by verbatim internal duplication and by local reference bundle files that are never linked from the body. Navigation and token efficiency are the main weaknesses.

Suggestions

Delete the duplicate retriever-selection decision tree and table (the 'Step 2 — Choose Retriever' block) and the repeated Text2Cypher destructive-query guard paragraph to remove redundancy.

Add a 'Load on demand' pointer to the local bundle — e.g., 'Retriever API: see [references/retrievers.md](references/retrievers.md); KG construction: see [references/kg-builder.md](references/kg-builder.md)' — and move inlined retriever constructor detail there.

Fix step numbering so the workflow reads Step 1 (Install) → Step 2 (Choose Retriever) → Step 3 (Create Indexes) → Step 4 (Core Pattern), and reconcile the 'Step 11' cross-reference in knowledge-graph-construction.md with an actual anchor.

DimensionReasoningScore

Conciseness

The body is mostly efficient executable code and tables with no concept over-explanation, but it duplicates material verbatim — the retriever selection decision-tree and table appear twice (Retriever Selection and Step 2) and the Text2Cypher destructive-query guard is stated twice — which is unnecessary padding that should be tightened.

3 / 5

Actionability

Fully executable, copy-paste-ready code for the core HybridCypherRetriever pattern plus filters, query_params, external retrievers, LLM/embedder providers, and index setup, with concrete pip and Cypher commands covering the common cases.

5 / 5

Workflow Clarity

There is a clear sequence (Install → Choose Retriever → Create Indexes → Core Pattern) with an explicit ONLINE-validation checkpoint and poll loop for indexes plus a final Verification Checklist, but the step numbering starts at 'Step 2' (no Step 1) and the EXPLAIN guard lacks an explicit retry loop, leaving minor gaps.

4 / 5

Progressive Disclosure

The body is sectioned and a references/ bundle exists (kg-builder.md, knowledge-graph-construction.md, retrievers.md), but the body's References section links only external URLs and never signals the local bundle files, while retriever API detail that belongs in retrievers.md is inlined — so references are present but not clearly signaled.

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.

A dense, specific description with excellent boundary disambiguation and concrete capability coverage, weakened only by the absence of explicit positive 'when to use' trigger guidance and slightly thin natural-term synonyms. It is third-person and free of fluff.

Suggestions

Add an explicit 'Use when ...' trigger clause (e.g., 'Use when building GraphRAG / RAG retrieval pipelines on Neo4j or routing natural-language queries to graph-augmented context') to lift completeness above 3.

Include natural synonyms and a package cue users actually say — 'RAG', 'graph RAG', 'neo4j-graphrag (Python)' — to round out trigger-term coverage toward 5.

DimensionReasoningScore

Specificity

Lists many concrete actions — retriever selection across six named classes, 'retrieval_query Cypher fragments, query_params, filters', embedder setup, index creation, token usage tracking, Cypher 25 SEARCH clause, LangChain/LlamaIndex integration — giving comprehensive coverage rather than vague abstractions.

5 / 5

Completeness

The 'what' is explicit and detailed, but there is no 'Use when...' clause or equivalent positive trigger guidance — only negative 'Does NOT handle...' boundaries — so per the missing-trigger cap, completeness cannot exceed 3.

3 / 5

Trigger Term Quality

Strong natural keywords (GraphRAG, Neo4j, retrieval pipelines, vector search, retriever, filters, LangChain/LlamaIndex) but missing common synonyms like 'RAG'/'graph RAG' and any file-extension or package-name variants beyond neo4j-graphrag, so it is good but not comprehensive.

4 / 5

Distinctiveness Conflict Risk

It carves a clear niche (GraphRAG retrieval on Neo4j via neo4j-graphrag) and explicitly redirects KG construction, plain vector search, GDS analytics, and agent memory to other named skills, minimizing conflict risk.

5 / 5

Total

17

/

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

skill_md_line_count

SKILL.md is long (556 lines); consider splitting into references/ and linking

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository
neo4j-contrib/neo4j-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.