An Amazon Neptune MCP server that allows for fetching status, schema, and querying using openCypher, Gremlin, and SPARQL for Neptune Database and openCypher for Neptune Analytics.
Project description
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:
- Run Queries: Execute openCypher and/or Gremlin queries against the configured database
- Schema: Get the schema in the configured graph as a text string
- 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
- AWS CLI Configuration: You must have the AWS CLI configured with credentials and an AWS_PROFILE that has access to Amazon Neptune
- Amazon Neptune: You must have at least one Amazon Neptune Database or Amazon Neptune Analytics graph.
- IAM Permissions: Your IAM role/user must have appropriate permissions to:
- Access Amazon Neptune
- Query Amazon Neptune
- 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:
Prerequisites
- Install
uvfrom Astral or the GitHub README - Install Python using
uv python install 3.10
Installation
| Kiro | Cursor | VS Code |
|---|---|---|
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>"
}
}
}
}
Windows Installation
For Windows users, the MCP server configuration format is slightly different:
{
"mcpServers": {
"awslabs.amazon-neptune-mcp-server": {
"disabled": false,
"timeout": 60,
"type": "stdio",
"command": "uv",
"args": [
"tool",
"run",
"--from",
"awslabs.amazon-neptune-mcp-server@latest",
"awslabs.amazon-neptune-mcp-server.exe"
],
"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>
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file awslabs_amazon_neptune_mcp_server-1.0.16.tar.gz.
File metadata
- Download URL: awslabs_amazon_neptune_mcp_server-1.0.16.tar.gz
- Upload date:
- Size: 103.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
241f3a7979db1371f3114131dcbbcdcff6c08711f86e757c83998a524487174e
|
|
| MD5 |
3df4ce60d0f0e773274a8276f4c3060d
|
|
| BLAKE2b-256 |
8ff4b37c7bd31a26c9a90f1d7636bf7cb30dff4cd75e8aa73b1c1fe1852814ea
|
Provenance
The following attestation bundles were made for awslabs_amazon_neptune_mcp_server-1.0.16.tar.gz:
Publisher:
release.yml on awslabs/mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
awslabs_amazon_neptune_mcp_server-1.0.16.tar.gz -
Subject digest:
241f3a7979db1371f3114131dcbbcdcff6c08711f86e757c83998a524487174e - Sigstore transparency entry: 1347882168
- Sigstore integration time:
-
Permalink:
awslabs/mcp@06dedce5362d8da20398e231e8d82f30fc41e768 -
Branch / Tag:
refs/tags/2026.04.20260421081720 - Owner: https://github.com/awslabs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@06dedce5362d8da20398e231e8d82f30fc41e768 -
Trigger Event:
push
-
Statement type:
File details
Details for the file awslabs_amazon_neptune_mcp_server-1.0.16-py3-none-any.whl.
File metadata
- Download URL: awslabs_amazon_neptune_mcp_server-1.0.16-py3-none-any.whl
- Upload date:
- Size: 23.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e2eb8843cca50840fcff337a483ebcd0c734c70e48187648ba7081b509a0e603
|
|
| MD5 |
96ae8b810599b061ac8207627349c7b8
|
|
| BLAKE2b-256 |
db37c20c0f6c8c84cb608e30d138b3da590b805917bf5973fcdb8b759f728d47
|
Provenance
The following attestation bundles were made for awslabs_amazon_neptune_mcp_server-1.0.16-py3-none-any.whl:
Publisher:
release.yml on awslabs/mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
awslabs_amazon_neptune_mcp_server-1.0.16-py3-none-any.whl -
Subject digest:
e2eb8843cca50840fcff337a483ebcd0c734c70e48187648ba7081b509a0e603 - Sigstore transparency entry: 1347882198
- Sigstore integration time:
-
Permalink:
awslabs/mcp@06dedce5362d8da20398e231e8d82f30fc41e768 -
Branch / Tag:
refs/tags/2026.04.20260421081720 - Owner: https://github.com/awslabs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@06dedce5362d8da20398e231e8d82f30fc41e768 -
Trigger Event:
push
-
Statement type: