MCP Neo4j Server

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides integration between Neo4j graph database and Claude Desktop, enabling graph database operations through natural language interactions. It allows executing Cypher queries, creating nodes and relationships, and performing complex graph operations via natural language commands.

MCP Neo4j 서버

Neo4j 그래프 데이터베이스와 Claude Desktop 간의 통합을 제공하는 MCP 서버로, 자연어 상호작용을 통해 그래프 데이터베이스 작업이 가능합니다.

빠른 시작

npx를 사용하여 이 MCP 서버를 직접 실행할 수 있습니다.

지엑스피1

또는 Claude Desktop 구성에 추가하세요.

{ "mcpServers": { "neo4j": { "command": "npx", "args": ["@alanse/mcp-neo4j-server"], "env": { "NEO4J_URI": "bolt://localhost:7687", "NEO4J_USERNAME": "neo4j", "NEO4J_PASSWORD": "your-password" } } } }

특징

이 서버는 Neo4j 데이터베이스와 상호 작용하기 위한 도구를 제공합니다.

도구

  • execute_query : Neo4j 데이터베이스에서 Cypher 쿼리를 실행합니다.
    • 모든 유형의 Cypher 쿼리(READ, CREATE, UPDATE, DELETE)를 지원합니다.
    • 구조화된 형식으로 쿼리 결과를 반환합니다.
    • 주입 공격을 방지하기 위해 매개변수를 전달할 수 있습니다.
  • create_node : 그래프 데이터베이스에 새 노드를 생성합니다.
    • 노드 레이블 및 속성 지정
    • 내부 ID와 함께 생성된 노드를 반환합니다.
    • 속성에 대한 모든 Neo4j 데이터 유형을 지원합니다.
  • create_relationship : 두 개의 기존 노드 간의 관계를 생성합니다.
    • 관계 유형 및 방향 정의
    • 관계에 속성 추가
    • 소스 및 대상 노드에 대한 노드 ID가 필요합니다.

설치

Smithery를 통해 설치

Smithery를 통해 Claude Desktop에 MCP Neo4j Server를 자동으로 설치하려면:

npx -y @smithery/cli install @alanse/mcp-neo4j-server --client claude

개발을 위해

  1. 저장소를 복제합니다.
git clone https://github.com/da-okazaki/mcp-neo4j-server.git cd mcp-neo4j-server
  1. 종속성 설치:
npm install
  1. 프로젝트를 빌드하세요:
npm run build

구성

서버에는 다음과 같은 환경 변수가 필요합니다.

  • NEO4J_URI : Neo4j 데이터베이스 URI(기본값: bolt://localhost:7687)
  • NEO4J_USERNAME : Neo4j 사용자 이름(기본값: neo4j)
  • NEO4J_PASSWORD : Neo4j 비밀번호 (필수)

사용 예

자연어를 사용하여 Neo4j 데이터베이스와 상호 작용하는 방법의 예는 다음과 같습니다.

데이터 쿼리

다음과 같은 질문을 할 수 있습니다.

  • "영업부서의 모든 직원을 보여주세요"
  • "가장 나이 많은 고객 5명을 찾으세요"
  • "지난 달에 3개 이상의 제품을 구매한 사람은 누구입니까?"

예:

User: "Show me all employees in the Sales department" Claude: Let me query the database for Sales department employees. [Executes query internally: MATCH (e:Employee)-[:WORKS_IN]->(d:Department {name: 'Sales'}) RETURN e.name, e.position] Result: - John Smith (Sales Manager) - Sarah Johnson (Sales Representative) - Mike Brown (Account Executive)

데이터 생성

다음과 같은 지시를 내릴 수 있습니다.

  • "30세인 John Doe라는 새로운 사람을 추가하세요"
  • "가격이 24.99달러인 '프리미엄 커피'라는 제품을 만들어 보세요."
  • "연구개발"이라는 새로운 부서를 추가하세요.

예:

User: "Add a new person named John Doe who is 30 years old" Claude: I'll create a new Person node with the provided information. [Creates node internally with label 'Person' and properties {name: 'John Doe', age: 30}] Result: Created new person node with ID: 123

관계 만들기

다음과 같은 관계를 요청할 수 있습니다.

  • "존 도우와 제인 스미스를 친구로 만드세요"
  • "제품 A를 제품 B의 구성요소로 설정"
  • "John Doe를 영업 부서에 배정하세요"

예:

User: "Make John Doe friends with Jane Smith" Claude: I'll create a friendship relationship between these two people. [Creates relationship internally: MATCH (a:Person {name: 'John Doe'}), (b:Person {name: 'Jane Smith'}) CREATE (a)-[:FRIENDS_WITH {since: '2024-01-05'}]->(b)] Result: Created friendship relationship between John Doe and Jane Smith

복잡한 작업

자연어로 더 복잡한 작업을 수행할 수 있습니다.

  • "뉴욕에 거주하는 고객이 구매한 모든 제품을 찾으세요"
  • "John Doe의 친구의 친구를 보여주세요"
  • "각 부서 직원들의 평균 연령을 계산하세요"

예:

User: "Find all products purchased by customers who live in New York" Claude: I'll query the database for this information. [Executes query internally: MATCH (c:Customer {city: 'New York'})-[:PURCHASED]->(p:Product) RETURN c.name, collect(p.name) as products] Result: - Alice Wilson: [Premium Coffee, Tea Set, Cookies] - Bob Miller: [Premium Coffee, Water Bottle]

테스트

테스트 모음을 실행합니다.

npm test

특허

MIT

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

이 서버는 Neo4j 데이터베이스와 Claude Desktop 간의 상호작용을 가능하게 하여 사용자가 Cypher 쿼리를 실행하고, 노드를 생성하고, 데이터베이스에서 관계를 설정할 수 있도록 합니다.

  1. Quick Start
    1. Features
      1. Tools
    2. Installation
      1. Installing via Smithery
      2. For Development
    3. Configuration
      1. Usage Examples
        1. Querying Data
        2. Creating Data
        3. Creating Relationships
        4. Complex Operations
      2. Testing
        1. License
          ID: qjpsxn4zlh