neo4j-import-skill

Import structured CSV, JSON, and bulk datasets into Neo4j.

101|35|Updated Jan 20, 2026
One-click install
npx skills add https://github.com/neo4j-contrib/neo4j-skills --skill neo4j-import-skill
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: neo4j-import-skill
Source: https://github.com/neo4j-contrib/neo4j-skills/tree/main/neo4j-import-skill
Command: npx skills add https://github.com/neo4j-contrib/neo4j-skills --skill neo4j-import-skill

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Bulk-importing structured data into Neo4j is error-prone and can easily create duplicates, type issues, constraint problems, or slow pipelines if you choose the wrong ingestion method.

Core Features & Use Cases

  • Choose the right import path: LOAD CSV with CALL IN TRANSACTIONS for online loads, APOC load helpers when available, and neo4j-admin database import full/incremental for offline bulk loading.
  • Production-grade guardrails: pre-import constraint ordering, primary-only write validation, UTF-8 and row-count checks, and post-import validation including index population checks.
  • Reliable batching and error handling: CALL IN TRANSACTIONS with ON ERROR modes (CONTINUE/BREAK/FAIL/RETRY) plus optional concurrent batching for large datasets.
  • Scope fit: designed for structured CSV/JSON/Parquet imports (not unstructured document/PDF pipelines, not live MERGE/CREATE app write patterns, not neo4j-admin backup/restore/config).

Quick Start

Ask your agent to import your dataset by instructing it to create uniqueness constraints first, then run LOAD CSV or neo4j-admin based on your data size and deployment type, and finally verify counts and index/constraint readiness.

Frequently Asked Questions about neo4j-import-skill

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What's the best way to bulk load CSV data into Neo4j?

The best way to bulk load CSV data into Neo4j depends on dataset size: use LOAD CSV with CALL IN TRANSACTIONS for online ingestion, or neo4j-admin database import for offline, high-volume loading. Always create uniqueness constraints before importing to prevent duplicates.

How do I import JSON files into Neo4j without creating duplicate nodes?

To import JSON files into Neo4j without duplicates, set up uniqueness constraints first, then use APOC load helpers or structured ingestion methods with MERGE operations. Post-import verification ensures index population and validates row counts against the source JSON.

When should I use neo4j-admin database import instead of LOAD CSV?

Use neo4j-admin database import instead of LOAD CSV for offline, high-volume bulk loading scenarios such as relational-to-graph migrations. LOAD CSV with CALL IN TRANSACTIONS is better suited for online ingestion where the database remains active during the data import process.

How does CALL IN TRANSACTIONS handle errors during a Neo4j data import?

CALL IN TRANSACTIONS handles errors during Neo4j data import using ON ERROR modes like CONTINUE, BREAK, FAIL, or RETRY. This provides reliable batching and resilient error handling for large datasets, allowing concurrent batch processing without failing the entire load.

Do I need to create constraints before importing data into Neo4j?

Yes, you need to create constraints before importing data into Neo4j to ensure primary-target validation and prevent duplicate nodes. Pre-import constraint setup is required for correct batch upserts, followed by post-import verification of counts and index population states.

Can I use this approach to migrate a relational database to a Neo4j graph?

Yes, you can use this approach to migrate a relational database to a Neo4j graph by exporting tables to structured CSV or JSON, then using batch upserts with LOAD CSV or neo4j-admin database import. Schema-aware type coercion and UTF-8 checks ensure data integrity during migration.