Skip to main content
Glama
Amazon Neptune MCP Server

Amazon Neptune MCP Server

by AkM-2018

AWS Labs Amazon Neptune MCP Server

An Amazon Neptune MCP server that allows for fetching status, schema, and querying using openCypher and Gremlin for Neptune Database and openCypher for Neptune Analytics.

Features

The Amazon Neptune MCP Server provides the following capabilities:

  1. Run Queries: Execute openCypher and/or Gremlin queries against the configured database

  2. Schema: Get the schema in the configured graph as a text string

  3. Status: Find if the graph is "Available" or "Unavailable" to your server. This is useful in helping to ensure that the graph is connected.

AWS Requirements

  1. AWS CLI Configuration: You must have the AWS CLI configured with credentials and an AWS_PROFILE that has access to Amazon Neptune

  2. Amazon Neptune: You must have at least one Amazon Neptune Database or Amazon Neptune Analytics graph.

  3. IAM Permissions: Your IAM role/user must have appropriate permissions to:

    • Access Amazon Neptune

    • Query Amazon Neptune

  4. Access: The location where you are running the server must have access to the Amazon Neptune instance. Neptune Database resides in a private VPC so access into the private VPC. Neptune Analytics can be access either using a public endpoint, if configured, or the access will be needed to the private endpoint.

Note: This server will run any query sent to it, which could include both mutating and read-only actions. Properly configuring the permissions of the role to allow/disallow specific data plane actions as specified here:

Related MCP server: neo4j-server-remote

Prerequisites

  1. Install uv from Astral or the GitHub README

  2. Install Python using uv python install 3.10

Installation

Install MCP Server

Below is an example of how to configure your MCP client, although different clients may require a different format.

{
  "mcpServers": {
    "Neptune Query": {
      "command": "uvx",
      "args": ["awslabs.amazon-neptune-mcp-server@latest"],
      "env": {
        "FASTMCP_LOG_LEVEL": "INFO",
        "NEPTUNE_ENDPOINT": "<INSERT NEPTUNE ENDPOINT IN FORMAT SPECIFIED BELOW>"
      }
    }
  }
}

Docker Configuration

After building with docker build -t awslabs/amazon-neptune-mcp-server .:

{
  "mcpServers": {
    "awslabs.amazon-neptune-mcp-server": {
        "command": "docker",
        "args": [
          "run",
          "--rm",
          "-i",
          "awslabs/amazon-neptune-mcp-server"
        ],
        "env": {
        "FASTMCP_LOG_LEVEL": "INFO",
        "NEPTUNE_ENDPOINT": "<INSERT NEPTUNE ENDPOINT IN FORMAT SPECIFIED BELOW>"
        },
        "disabled": false,
        "autoApprove": []
    }
  }
}

When specifying the Neptune Endpoint the following formats are expected:

For Neptune Database: neptune-db://<Cluster Endpoint>

For Neptune Analytics: neptune-graph://<graph identifier>

Available Tools

4 tools
get_graph_schemaB

Get the schema for the graph including the vertex and edge labels as well as the (vertex)-[edge]->(vertex) combinations.

Inputs: no named parameters.

get_graph_statusB

Get the status of the currently configured Amazon Neptune graph.

Inputs: no named parameters.

run_gremlin_queryC

Executes the provided Tinkerpop Gremlin against the graph.

Inputs: query (required).

run_opencypher_queryC

Executes the provided openCypher against the graph.

Inputs: query (required), parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.2/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no overlap: get_graph_schema retrieves schema information, get_graph_status checks system status, run_gremlin_query executes Gremlin queries, and run_opencypher_query executes openCypher queries. The descriptions make it unambiguous which tool to use for each type of operation.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern with snake_case: get_graph_schema, get_graph_status, run_gremlin_query, and run_opencypher_query. The naming is predictable and readable throughout the set.

    Tool Count4/5

    With 4 tools, the count is reasonable for a graph database server, covering schema, status, and query execution. It might be slightly thin for advanced operations like data manipulation or monitoring, but it's well-scoped for core functionality.

    Completeness3/5

    The tools cover schema retrieval, status checks, and query execution for two query languages (Gremlin and openCypher), which is good for basic operations. However, there are notable gaps: no tools for creating/updating/deleting data, managing configurations, or handling transactions, which could limit agent workflows in a database context.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      Not graded
      maintenance
      Enables access to Amazon Managed Prometheus workspaces through natural language queries. Supports listing workspaces, executing PromQL queries, and retrieving workspace details and metrics with AWS authentication.
      4
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables interaction with Neo4j graph databases through Cypher queries, supporting both read and write operations, schema exploration, and remote database connections via SSE or STDIO transport protocols.
      5
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI assistants to interact with Gremlin-compatible graph databases through natural language, supporting schema discovery, complex graph queries, relationship analysis, and data import/export operations.
      12 npm
      9
      MIT

    Appeared in Searches