Skip to content

Commit 9471249

Browse files
authored
Minor README updates (#133)
* Minor README updates * UV description updated
1 parent a6f1258 commit 9471249

File tree

1 file changed

+42
-49
lines changed

1 file changed

+42
-49
lines changed

servers/mcp-neo4j-cypher/README.md

Lines changed: 42 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -11,25 +11,28 @@ A Model Context Protocol (MCP) server implementation that provides database inte
1111
The server offers these core tools:
1212

1313
#### 📊 Query Tools
14+
1415
- `read_neo4j_cypher`
15-
- Execute Cypher read queries to read data from the database
16-
- Input:
17-
- `query` (string): The Cypher query to execute
18-
- `params` (dictionary, optional): Parameters to pass to the Cypher query
19-
- Returns: Query results as JSON serialized array of objects
16+
17+
- Execute Cypher read queries to read data from the database
18+
- Input:
19+
- `query` (string): The Cypher query to execute
20+
- `params` (dictionary, optional): Parameters to pass to the Cypher query
21+
- Returns: Query results as JSON serialized array of objects
2022

2123
- `write_neo4j_cypher`
22-
- Execute updating Cypher queries
23-
- Input:
24-
- `query` (string): The Cypher update query
25-
- `params` (dictionary, optional): Parameters to pass to the Cypher query
26-
- Returns: A JSON serialized result summary counter with `{ nodes_updated: number, relationships_created: number, ... }`
24+
- Execute updating Cypher queries
25+
- Input:
26+
- `query` (string): The Cypher update query
27+
- `params` (dictionary, optional): Parameters to pass to the Cypher query
28+
- Returns: A JSON serialized result summary counter with `{ nodes_updated: number, relationships_created: number, ... }`
2729

2830
#### 🕸️ Schema Tools
31+
2932
- `get_neo4j_schema`
30-
- Get a list of all nodes types in the graph database, their attributes with name, type and relationships to other node types
31-
- No input required
32-
- Returns: JSON serialized list of node labels with two dictionaries: one for attributes and one for relationships
33+
- Get a list of all nodes types in the graph database, their attributes with name, type and relationships to other node types
34+
- No input required
35+
- Returns: JSON serialized list of node labels with two dictionaries: one for attributes and one for relationships
3336

3437
### 🏷️ Namespacing
3538

@@ -62,21 +65,20 @@ docker run -p 8000:8000 \
6265
The server supports different transport protocols depending on your deployment:
6366

6467
- **STDIO** (default for local development): Standard input/output for Claude Desktop and local tools
65-
- **HTTP** (default for Docker): RESTful HTTP for web deployments and microservices
68+
- **HTTP** (default for Docker): RESTful HTTP for web deployments and microservices
6669
- **SSE**: Server-Sent Events for legacy web-based deployments
6770

6871
Choose your transport based on use case:
69-
- **Local development/Claude Desktop**: Use `stdio`
72+
73+
- **Local development/Claude Desktop**: Use `stdio`
7074
- **Docker/Remote deployment**: Use `http`
7175
- **Legacy web clients**: Use `sse`
7276

7377
## 🔧 Usage with Claude Desktop
7478

7579
### Using DXT
76-
Download the latest `.dxt` file from the [releases page](https://github.com/neo4j-contrib/mcp-neo4j/releases/latest) and install it with your MCP client.
7780

78-
Or use this direct link:
79-
[Download mcp-neo4j-cypher.dxt](https://github.com/neo4j-contrib/mcp-neo4j/releases/latest/download/mcp-neo4j-cypher.dxt)
81+
Download the latest `.dxt` file from the [releases page](https://github.com/neo4j-contrib/mcp-neo4j/releases) and install it with your MCP client.
8082

8183
### 💾 Released Package
8284

@@ -86,7 +88,7 @@ Add the server to your `claude_desktop_config.json` with the database connection
8688

8789
```json
8890
"mcpServers": {
89-
"neo4j-aura": {
91+
"neo4j-database": {
9092
"command": "uvx",
9193
"args": [ "[email protected]", "--transport", "stdio" ],
9294
"env": {
@@ -124,7 +126,7 @@ Here's an example of connecting to multiple Neo4j databases using namespaces:
124126
"mcpServers": {
125127
"movies-neo4j": {
126128
"command": "uvx",
127-
"args": [ "[email protected]", "--namespace", "movies" ],
129+
"args": ["[email protected]", "--namespace", "movies"],
128130
"env": {
129131
"NEO4J_URI": "neo4j+s://demo.neo4jlabs.com",
130132
"NEO4J_USERNAME": "recommendations",
@@ -134,7 +136,7 @@ Here's an example of connecting to multiple Neo4j databases using namespaces:
134136
},
135137
"local-neo4j": {
136138
"command": "uvx",
137-
"args": [ "[email protected]" ],
139+
"args": ["[email protected]"],
138140
"env": {
139141
"NEO4J_URI": "bolt://localhost:7687",
140142
"NEO4J_USERNAME": "neo4j",
@@ -148,10 +150,10 @@ Here's an example of connecting to multiple Neo4j databases using namespaces:
148150
```
149151

150152
In this setup:
153+
151154
- The movies database tools will be prefixed with `movies-` (e.g., `movies-read_neo4j_cypher`)
152155
- The local database tools will be prefixed with `local-` (e.g., `local-get_neo4j_schema`)
153156

154-
155157
Syntax with `--db-url`, `--username`, `--password` and other command line arguments is still supported but environment variables are preferred:
156158

157159
<details>
@@ -235,17 +237,17 @@ docker run --rm -p 8000:8000 \
235237

236238
### 🔧 Environment Variables
237239

238-
| Variable | Default | Description |
239-
|----------|---------|-------------|
240-
| `NEO4J_URI` | `bolt://localhost:7687` | Neo4j connection URI |
241-
| `NEO4J_USERNAME` | `neo4j` | Neo4j username |
242-
| `NEO4J_PASSWORD` | `password` | Neo4j password |
243-
| `NEO4J_DATABASE` | `neo4j` | Neo4j database name |
244-
| `NEO4J_TRANSPORT` | `stdio` (local), `http` (Docker) | Transport protocol (`stdio`, `http`, or `sse`) |
245-
| `NEO4J_NAMESPACE` | _(empty)_ | Tool namespace prefix |
246-
| `NEO4J_MCP_SERVER_HOST` | `127.0.0.1` (local), `0.0.0.0` (Docker) | Host to bind to |
247-
| `NEO4J_MCP_SERVER_PORT` | `8000` | Port for HTTP/SSE transport |
248-
| `NEO4J_MCP_SERVER_PATH` | `/api/mcp/` | Path for accessing MCP server |
240+
| Variable | Default | Description |
241+
| ----------------------- | --------------------------------------- | ---------------------------------------------- |
242+
| `NEO4J_URI` | `bolt://localhost:7687` | Neo4j connection URI |
243+
| `NEO4J_USERNAME` | `neo4j` | Neo4j username |
244+
| `NEO4J_PASSWORD` | `password` | Neo4j password |
245+
| `NEO4J_DATABASE` | `neo4j` | Neo4j database name |
246+
| `NEO4J_TRANSPORT` | `stdio` (local), `http` (Docker) | Transport protocol (`stdio`, `http`, or `sse`) |
247+
| `NEO4J_NAMESPACE` | _(empty)_ | Tool namespace prefix |
248+
| `NEO4J_MCP_SERVER_HOST` | `127.0.0.1` (local), `0.0.0.0` (Docker) | Host to bind to |
249+
| `NEO4J_MCP_SERVER_PORT` | `8000` | Port for HTTP/SSE transport |
250+
| `NEO4J_MCP_SERVER_PATH` | `/api/mcp/` | Path for accessing MCP server |
249251

250252
### 🌐 SSE Transport for Legacy Web Access
251253

@@ -286,16 +288,16 @@ services:
286288
- NEO4J_AUTH=neo4j/password
287289
- NEO4J_PLUGINS=["apoc"]
288290
ports:
289-
- "7474:7474" # HTTP
290-
- "7687:7687" # Bolt
291+
- '7474:7474' # HTTP
292+
- '7687:7687' # Bolt
291293
volumes:
292294
- neo4j_data:/data
293295

294296
# Deploy Cypher MCP Server
295297
mcp-neo4j-cypher-server:
296298
image: mcp/neo4j-cypher:latest
297299
ports:
298-
- "8000:8000"
300+
- '8000:8000'
299301
environment:
300302
- NEO4J_URI=bolt://host.docker.internal:7687
301303
- NEO4J_USERNAME=neo4j
@@ -336,7 +338,8 @@ For Claude Desktop integration with a Dockerized server using http transport:
336338

337339
### 📦 Prerequisites
338340

339-
1. Install `uv` (Universal Virtualenv):
341+
1. Install [`uv`](https://github.com/astral-sh/uv):
342+
340343
```bash
341344
# Using pip
342345
pip install uv
@@ -349,6 +352,7 @@ cargo install uv
349352
```
350353

351354
2. Clone the repository and set up development environment:
355+
352356
```bash
353357
# Clone the repository
354358
git clone https://github.com/neo4j-contrib/mcp-neo4j.git
@@ -378,16 +382,7 @@ For development with Claude Desktop using the local source:
378382
"mcpServers": {
379383
"neo4j-dev": {
380384
"command": "uv",
381-
"args": [
382-
"--directory",
383-
"/path/to/mcp-neo4j-cypher",
384-
"run",
385-
"mcp-neo4j-cypher",
386-
"--transport",
387-
"stdio",
388-
"--namespace",
389-
"dev"
390-
],
385+
"args": ["--directory", "/path/to/mcp-neo4j-cypher", "run", "mcp-neo4j-cypher", "--transport", "stdio", "--namespace", "dev"],
391386
"env": {
392387
"NEO4J_URI": "bolt://localhost:7687",
393388
"NEO4J_USERNAME": "neo4j",
@@ -401,8 +396,6 @@ For development with Claude Desktop using the local source:
401396

402397
Replace `/path/to/mcp-neo4j-cypher` with your actual project directory path.
403398

404-
405-
406399
## 📄 License
407400

408401
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

0 commit comments

Comments
 (0)