CtrlK
BlogDocsLog inGet started
Tessl Logo

neo4j-document-import-skill

Ingests unstructured and semi-structured documents into Neo4j as a knowledge graph. Use when chunking PDFs, HTML, plain text, or Markdown; extracting entities and relationships from text with an LLM (SimpleKGPipeline, neo4j-graphrag); loading JSON via apoc.load.json; building Document→Chunk→Entity graph structures; or connecting LangChain/LlamaIndex document loaders to Neo4j. Covers neo4j-graphrag SimpleKGPipeline, LLM Graph Builder web UI, entity resolution, chunking strategies, and graph schema design for RAG pipelines. Does NOT handle structured CSV/relational import — use neo4j-import-skill. Does NOT handle GraphRAG retrieval after ingestion — use neo4j-graphrag-skill. Does NOT handle vector index creation — use neo4j-vector-search-skill.

75

Quality

94%

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

SKILL.md
Quality
Evals
Security

Quality

Content

88%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 dense, highly actionable skill body with executable code, explicit validation checkpoints, and a working reference file. Its main weaknesses are mild token bloat from scattered version annotations and duplicated GraphSchema coverage, plus advanced content that could be offloaded to additional reference files.

Suggestions

Consolidate the GraphSchema coverage into a single section (or move the detailed "GraphSchema — Current API" write-up into references/kg-construction.md) to remove the duplication between Step 1 Option B and the later section.

Collect the scattered per-feature version annotations (v1.13.0/1.14.0/1.15.0/1.16.0) into one "Version / Compatibility notes" or "Deprecated patterns" block so they stop interrupting the main flow.

Move secondary advanced topics (LexicalGraphConfig label overrides, Parquet export, custom DataLoader subclassing) into references/kg-construction.md, leaving SKILL.md a tighter overview with clearly signaled links.

DimensionReasoningScore

Conciseness

Mostly efficient prose backed by lean executable code with no basic-concept padding, but inline version annotations are scattered throughout ("v1.13.0", "v1.14.0", "v1.15.0+", "v1.16.0") outside any single deprecated section and the GraphSchema API is presented twice (Step 1 Option B and the later "GraphSchema — Current API" section), so it sits at 4 rather than 5.

4 / 5

Actionability

Provides copy-paste-ready code for the common cases — SimpleKGPipeline setup, running from file/text/batch, chunking, resolvers, APOC JSON Cypher, LangChain wiring, constraints/indexes, custom loaders — plus a Common Errors table mapping error→cause→fix; fully executable and comprehensive, matching the 5 anchor.

5 / 5

Workflow Clarity

A numbered Step 1→5 sequence carries explicit validation ("Do not start ingestion until all indexes are ONLINE" with poll/re-run loop), post-ingestion verify queries, and a Verification Checklist; error-recovery feedback is present via the Common Errors table, satisfying the 5 anchor and avoiding the batch-operation cap because validation is included.

5 / 5

Progressive Disclosure

Good section structure with a clearly signaled one-level-deep reference (references/kg-construction.md linked inline and listed in References), but substantial advanced material (LexicalGraphConfig, Parquet export, the second GraphSchema API write-up, custom loaders) is inlined in SKILL.md rather than split into reference files, keeping it at 4 instead of 5.

4 / 5

Total

18

/

20

Passed

Description

100%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 strong, third-person description that states a concrete capability, gives explicit 'Use when' triggers covering formats and stacks, and sharply scopes the skill against sibling skills. It hits the top anchor on all four dimensions with no vagueness or padding.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — "Ingests unstructured and semi-structured documents into Neo4j as a knowledge graph", "chunking PDFs, HTML, plain text, or Markdown", "extracting entities and relationships", "loading JSON via apoc.load.json", "building Document→Chunk→Entity graph structures", "connecting LangChain/LlamaIndex document loaders" — giving comprehensive coverage; not the 4 anchor because there are no real gaps.

5 / 5

Completeness

Explicitly answers both what ("Ingests ... into Neo4j as a knowledge graph") and when ("Use when chunking ... extracting entities and relationships ... loading JSON ... building ... or connecting ...") with concrete trigger phrases, plus explicit negative boundaries; matches the 5 anchor, not 4 where 'when' is only loosely specified.

5 / 5

Trigger Term Quality

Covers natural user terms and synonyms across formats ("PDFs, HTML, plain text, Markdown"), tasks ("chunking", "extracting entities and relationships", "entity resolution"), and stacks ("LangChain/LlamaIndex"); comprehensive enough to clear the 5 anchor rather than the 4 anchor's "a few natural terms missing".

5 / 5

Distinctiveness Conflict Risk

Clear niche (document→knowledge-graph ingestion into Neo4j) reinforced by three explicit "Does NOT handle" redirects to sibling skills (neo4j-import-skill, neo4j-graphrag-skill, neo4j-vector-search-skill), minimizing conflict risk; fits the 5 anchor's "clear niche with distinct triggers".

5 / 5

Total

20

/

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 (586 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.