mcpField
M
mcp-neo4j-server-sse-java

mcp-neo4j-server-sse-java

Local
github.com/dsimileDatabases0Updated 76w ago

About mcp-neo4j-server-sse-java

mcp-neo4j-server-sse-java is a Java MCP server for querying and exploring Neo4j graph databases. It supports Cypher read and update operations, schema inspection, and both SSE and STDIO transports.

Key features

  1. 01Read and update Cypher queries
  2. 02Neo4j graph schema inspection
  3. 03Database operation demo prompt
  4. 04SSE and STDIO transports
  5. 05Automatic tool registration with Spring AI

Use cases

  1. 01Read graph data with Cypher
  2. 02Update nodes and relationships
  3. 03Inspect graph labels, attributes, and relationships

MCP support

The server exposes Neo4j query and schema tools, plus the `mcp-demo` prompt, to MCP clients. It accepts connections over SSE or STDIO.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

mcp-neo4j-server-sse-java

mcp-neo4j-server-sse-java is an MCP server implemented by Java using SSE (Server-Sent Events) server transport or STDIO transport as the transport protocol.

Overview

A Model Context Protocol (MCP) server implementation that provides database interaction and allows for graph exploration capabilities through Neo4j. This server enables the execution of Cypher graph queries, analysis of complex domain data, and supports the selection of remotely accessible databases. Inspired by neo4j-contrib/mcp-neo4j.

The project showcases:

  • Integration with spring-ai-mcp-server-webflux-spring-boot-starter
  • Support for both SSE (Server-Sent Events) and STDIO transports
  • Automatic tool registration using Spring AI's @Tool annotation
Prompts

The server provides a demonstration prompt:

  • mcp-demo: Interactive prompt that guides users through database operations
    • Generates appropriate database schemas and sample data
Tools

The server offers six core tools:

Query Tools
  • read-neo4j-cypher

    • Execute Cypher read queries to read data from the database
    • Input:
      • query (string): The Cypher query to execute
    • Returns: Query results as array of objects
  • write-neo4j-cypher

    • Execute updating Cypher queries
    • Input:
      • query (string): The Cypher update query
    • Returns: a result summary counter with { nodes_updated: number, relationships_created: number, ... }
Schema Tools
  • get-neo4j-schema
    • Get a list of all nodes types in the graph database, their attributes with name, type and relationships to other node types
    • No input required
    • Returns: List of node label with two dictionaries one for attributes and one for relationships

Usage with Cline client

1.Clone the repository

git clone https://github.com/dsimile/mcp-neo4j-server-sse-java.git

2.Building the Project

  • Java 17+
cd mcp-neo4j-server-sse-java

mvn clean install -DskipTests

3.Running the Server

  • WebFlux SSE Mode (Default)
    • spring.ai.mcp.server.stdio (Default): false
    • Server ip (Default): 0.0.0.0
    • Server port (Default): 8543
    • Neo4j uri (Default): neo4j://localhost:7687
    • Neo4j username (Default): neo4j
    • Neo4j password (Default): neo4j
    • Neo4j database (Default): neo4j
java -jar target/mcp-neo4j-server-sse-java-1.0-SNAPSHOT.jar
  • STDIO Mode

To enable STDIO transport, set the appropriate properties:

java -Dspring.ai.mcp.server.stdio=true \
     -Dspring.main.web-application-type=none \
     -Dneo4j.uri=neo4j://localhost:7687 \
     -Dneo4j.username=neo4j \
     -Dneo4j.password=<your password> \
     -Dneo4j.database=<your database> \
     -Dlog.path=/absolute/path/to/ \
     -jar target/mcp-neo4j-server-sse-java-1.0-SNAPSHOT.jar

Note: Please ensure that Neo4j is running and accessible for remote connections.

Released Package

Add the server to your cline_mcp_settings.json.

  • WebFlux SSE Mode (Default)
{
  "mcpServers": {
    "neo4j-remote": {
      "url": "http://0.0.0.0:8543/sse",
      "disabled": false,
      "autoApprove": []
    }
  }
}
  • STDIO Mode
{
  "mcpServers": {
    "neo4j-local": {
      "disabled": false,
      "command": "java",
      "args": [
        "-Dspring.ai.mcp.server.stdio=true",
        "-Dspring.main.web-application-type=none",
        "-Dneo4j.uri=neo4j://localhost:7687",
        "-Dneo4j.username=neo4j",
        "-Dneo4j.password=<your password>",
        "-Dneo4j.database=<your database>",
        "-Dlog.path=/absolute/path/to/",
        "-jar",
        "/absolute/path/to/mcp-neo4j-server-sse-java-1.0-SNAPSHOT.jar"
      ],
      "transportType": "stdio"
    }
  }
}

Replace /absolute/path/to/ with the actual path to your built jar file or log file.

License

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.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.