--- id: neo4j-driver version: "5.28.4" license: Apache License, Version 2.0 license_treatment: permissive maintenance: active --- # neo4j-driver — Neo4j Bolt driver for Python License: permissive · Maintenance: active · Downloads: 104.6K/mo ## What it is and what it does neo4j-driver is the official Python client for Neo4j graph databases, providing synchronous and asynchronous APIs to execute Cypher queries and manage graph data. It implements the Bolt protocol for efficient communication with Neo4j servers and supports modern Python versions from 3.7 through 3.13. The driver handles connection pooling, transaction management, and result streaming automatically. The package is now deprecated in favor of installing the neo4j package instead, which is a drop-in replacement. However, neo4j-driver continues to receive updates through the 5.x series and will stop receiving updates starting with version 6.0.0. Its single runtime dependency is pytz, keeping the installation lightweight. It is actively maintained with a monthly release cadence aligned with Neo4j DBMS versioning. Use it for: - Build Python applications that query and manipulate graph data stored in Neo4j databases. - Execute Cypher queries with parameters to retrieve or modify relationships and nodes. - Implement async workflows for non-blocking database operations in concurrent applications. - Manage connection pooling and transaction semantics automatically in multi-threaded environments. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Python driver for connecting to and querying Neo4j graph databases using the Bolt protocol, with support for both synchronous and asynchronous operations. Yes, but with a caveat: this package is deprecated and the project recommends installing neo4j instead, which is a drop-in replacement. If you are starting a new project, install neo4j. If you have existing code using neo4j-driver, it remains functional and actively maintained through version 5.x, but plan a migration to neo4j before version 6.0.0 is released. The driver itself is well-maintained, has no known vulnerabilities, and installs cleanly. ## Install pip install neo4j-driver uv add neo4j-driver poetry add neo4j-driver ## Installing neo4j-driver Before you install: Low friction installation with a single pure-Python wheel dependency (pytz). Actively maintained with monthly release cadence; last commit 2026-07-21. Package is deprecated in favor of the neo4j alias, but continues to receive updates through version 5.x. License in practice: Apache License 2.0 (permissive) allows commercial and private use with minimal restrictions. Safe for most projects. Quickstart: pip install neo4j-driver from neo4j import GraphDatabase with GraphDatabase.driver("neo4j://localhost:7687", auth=("user", "password")) as driver: records, _, _ = driver.execute_query("MATCH (n) RETURN n LIMIT 1") for record in records: print(record) Requires a running Neo4j server instance accessible at the specified URI; Python 3.7 or later. Verify before relying: - Performance characteristics compared to the neo4j alias package (the recommended replacement). - Whether Rust extensions mentioned in docs are available or required for specific use cases. ## Package facts - License: Apache License, Version 2.0 (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 104.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags neo4j graph database driver, bolt protocol python, graph database client, cypher query execution, neo4j connection driver, graph database python, neo4j async driver, graph-database, deprecated-alias [View on SkillFed](https://skillfed.io/packages/neo4j-driver) · [View on PyPI](https://pypi.org/project/neo4j-driver/)